数据库之MySql建议收藏

1.mysql安装mysql是一种开放源代码的关系型数据库管理系统(RDBMS),是使用最常用的数据库管理语言–结构化查询语言(SQL)进行数据库管理。(1)下载地址:https://dev.

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

全栈程序员社区此处内容已经被作者隐藏,请输入验证码查看内容
验证码:
请关注本站微信公众号,回复“验证码”,获取验证码。在微信里搜索“全栈程序员社区”或者“www_javaforall_cn”或者微信扫描右侧二维码都可以关注本站微信公众号。

数据库(Databases)是按照数据结构来组织、存储和管理数据的仓库,主要的数据库有:sqlserver、mysql、Oracle、SQLite、Acess、MS SQL Server等,以下主要记录mysql相关知识

1. mysql安装

  mysql是一种开放源代码的关系型数据库管理系统(RDBMS),是使用最常用的数据库管理语言–结构化查询语言(SQL)进行数据库管理。

  (1)下载地址:https://dev.mysql.com/downloads/mysql/

  (2)安装过程参考:http://www.cnblogs.com/lonelywolfmoutain/p/4547115.html

2. mysql操作

  mysql操作包括数据:

  2.1. 库管理

    库连接:mysql -u root -p

    库退出:quit

    创建数据库:create database [IF NOT EXISTS] ‘database_name’;

    显示数据库:show database;

    选择使用的数据库:use database_name;

    删除数据库:drop database [IF EXISTS] database_name;

  2.2. 用户管理

    创建本地用户

    create user ‘lizhi’@’localhost’ identified by ‘password’;

    创建远程用户

    # 从192.168.0.121登录的用户

    create user ‘lizhi’@’192.168.0.121’  identified by ‘password’;

    # 从任意ip登录的用户

    create user ‘lizhi’@% identified by ‘password’;

    修改用户密码

    set password for ‘lizhi’@’localhost’ = password(‘lizhi666’)

    或

    # 使用update指令,注意这里的password需要进行加密

    update user set password=password(‘lizhi666’) where user = ‘lizhi’

    删除用户

    delete from user where user = ‘lizhi’ and host = ‘localhost’;

    flush privileges;

     用户授权

    grant all privileges on dxbqr.* to ‘lizhi’@localhost;

    flush privileges;

3. mysql表操作

  3.1 查看当前数据库中的所有表

    show tables;

  3.2 创建表

    create table [if not exists] table_name(

        column_list

    ) engine=table_list

  3.3 查看表内容

    desc table_name;

  3.4 修改表

    添加列:alter table table_name add  列名 类型

    删除列:alter table table_name drop column 列名

    修改列名:alter table table_name modify column 列名 类型;

         alter table table_name change 原列名 新列名 类型;

    添加主键:alter table 表名 add primary key(列名);

    删除主键:alter table 表名 drop primary key;

            alter table 表名  modify  列名 int, drop primary key;

    添加外键:alter table 从表 add constraint 外键名称(形如:FK_从表_主表) foreign key 从表(外键字段) references 主表(主键字段);

    删除外键:alter table 表名 drop foreign key 外键名称

    修改默认值:ALTER TABLE testalter_tbl ALTER i SET DEFAULT 1000;

    删除默认值:ALTER TABLE testalter_tbl ALTER i DROP DEFAULT;          

  3.4 删除表

    drop table table_name;

4. mysql表内容操作

  :insert into table_name (列名,列名…) values(值,值…)(值,值…)

  :delete from table_name;

    delete from table_name where id = “1” and name=”2″;

  update 表 set name = ‘zhangyanlin’ where id>1

  :select * from table_name

    select * from table_name where id>1

  查这块的条件太多太多:

  a. 条件判断where

  b. 通配符like

    select * from table_name where name like=’li%’

  c. 限制limit

    select * from 表 limit 5;                – 前5行

    select * from 表 limit 4,5;             – 从第4行开始的5行

    select * from 表 limit 5 offset 4   

  d、排序asc,desc

    select * from table_name order by 列 asc 根据“列”从小到大排列

    select * from table_name order by 列 desc 根据“列”从大到小排列

    select * from table_name order by 列1 desc,列2 asc

  e. 分组group by

    select num from table_name group by num

    select num,nid from 表 group by num,nid

    select num,nid from 表  where nid > 10 group by num,nid order nid desc

    select num,nid,count(*),sum(score),max(score),min(score) from 表 group by num,nid

    select num from 表 group by num having max(id) > 10

5. mysql数据类型

  INT

  DECIMAL(p,d)

  BIT

  BOOLEAN

  CHAR

  VARCHAR

  TEXT

  DATE

  TIME

  DATETIME

  TIMESTAMP

  JSON

  ENUM 

6. mysql表类型

  MySql为表提供了各种存储引擎,他们分别如下所示:

  • MyISAM
  • InnoDB
  • MERGE
  • MEMORY(HEAP)
  • ARCHIVE
  • CSV
  • FEDERATED

MyISAM


MyISAM扩展了以前的ISAM存储引擎。 MyISAM表针对压缩和速度进行了优化。 MyISAM表也可以在平台和操作系统之间移植。

MyISAM表的大小可达256TB,这个数据里是非常巨大的。 此外,MyISAM表可以压缩为只读表以节省空间。 在启动时,MySQL会检查MyISAM表是否有损坏,甚至在出现错误的情况下修复它们。MyISAM表不是事务安全的。

MySQL 5.5之前,MyISAM是创建表但是不用明确指定存储引擎时的默认存储引擎。 从版本5.5起,MySQL使用InnoDB作为默认存储引擎。

InnoDB


InnoDB表完全支持符合ACID和事务。 它们也是性能最佳的。InnoDB表支持外键,提交,回滚,前滚操作。InnoDB表的大小最多可达64TB

像MyISAM一样,InnoDB表可以在不同的平台和操作系统之间移植。如果需要,MySQL还会在启动时检查和修复InnoDB表。

MERGE


MERGE表是将具有相似结构的多个MyISAM表组合到一个表中的虚拟表。MERGE存储引擎也被称为MRG_MyISAM引擎。 MERGE表没有自己的索引; 它会使用组件表的索。

使用MERGE表,可以在连接多个表时加快性能。MySQL只允许您对MERGE表执行SELECT,DELETE,UPDATE和INSERT操作。如果在MERGE表上使用DROP TABLE语句,则仅删除MERGE规范。基础表不会受到影响。

Memory


内存表存储在内存中,并使用散列索引,使其比MyISAM表格快。内存表数据的生命周期取决于数据库服务器的正常运行时间。内存存储引擎以前称为HEAP

Archive


归档存储引擎允许将大量用于归档目的的记录存储为压缩格式以节省磁盘空间。 归档存储引擎在插入时压缩记录,并在读取时使用zlib库对其进行解压缩。

归档表只允许INSERT和SELECT语句。 ARCHIVE表不支持索引,因此需要完整的表扫描来读取行。

CSV


CSV存储引擎以逗号分隔值(CSV)文件格式存储数据。 CSV表格提供了将数据迁移到非SQL应用程序(如电子表格软件)中的便捷方式。

CSV表不支持NULL数据类型。 此外,读操作需要全表扫描。

FEDERATED


FEDERATED存储引擎允许从远程MySQL服务器管理数据,而无需使用集群或复制技术。本地联合表不存储任何数据。 从本地联合表查询数据时,数据将从远程联合表自动拉出

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/120207.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 外汇平台的搭建方法及注意事项有哪些_外汇平台搭建员工怎么判刑

    外汇平台的搭建方法及注意事项有哪些_外汇平台搭建员工怎么判刑摘要:从业外汇几年,都会听到外汇平台搭建,都知道外汇是个零和市场,赚少亏多,搭建外汇平台又可以做市商,且国家监管又很宽松,都想跃跃欲试,但是自己又不懂,不知道具体流程,又不知道需要多少资金,又没有认识的“人才”,又担心上当受骗,自然就会徘徊再做与不做之间。本文详…从业外汇几年,都会听到外汇平台搭建,都知道外汇是个零和市场,赚少亏多,搭建外汇平台又可以做市商,且国家监管又很宽松,都想跃跃欲试,但是…

    2025年10月23日
    3
  • 无锡梅里旅游策划方案——中国第一锡宫!

    无锡梅里旅游策划方案——中国第一锡宫!无锡梅里旅游策划方案——中国第一锡宫!熊大寻旅游策划公司/文无锡梅里古都”,位于无锡新区梅村,是吴文化的发祥地。梅村古名梅里,早在三千二百多年前,西周周太王长子泰伯,为达成父王想立三子季历的愿望,偕二弟仲雍托辞采药,夜奔江南,拴马于枯树桩。到清早,见枯枝上梅花朵朵,喜出望外,顿悟此地当为宝地。于是为其取“梅里”之名,定居于此。勾吴之国,由此发端。因泰伯三让两家天下,孔子称其为“至德”,司马迁的…

    2022年6月1日
    36
  • SpringBoot—–SpringBoot序列化Long转String「建议收藏」

    SpringBoot—–SpringBoot序列化Long转String「建议收藏」

    2022年5月14日
    43
  • 嵌入式linux基础学习全套精品视频教程

    嵌入式linux基础学习全套精品视频教程嵌入式linux基础学习全套精品视频教程在给大家分享教程之前,首先给大家简要的介绍一下嵌入式linux,嵌入式linux是将日益流行的Linux操作系统进行裁剪修改,使之能在嵌入式计算机系统上运行的一种操作系统。嵌入式linux既继承了Internet上无限的开放源代码资源,又具有嵌入式操作系统的特性。本教程是嵌入式linux基础学习全套精品视频教程,比较适合嵌入式初级学员们学习,需要

    2022年5月16日
    48
  • 通过进程名获取 窗口句柄

    通过进程名获取 窗口句柄HWNDFindMainWindow(unsignedintprocessID){structHANDLE_DATA{unsignedintprocessID;HWNDhandle;}data;data.processID=processID;data.handle=0;staticautoIsMainWindow=[](HWNDhandle)->BOOL{.

    2022年7月21日
    17
  • pycharm创建django项目报错[通俗易懂]

    pycharm创建django项目报错[通俗易懂]ErrorcreatingDjangoapplication:Erroronpythonside.Exitcode如果创建Django项目的时候出现如上截图错误,则是Django下载失败,需要检查本机django是否下载成功,有的时候是因为缺少pytz包而导致django下载失败解决方案:关于pytz包缺失error:CouldnotfindsuitabledistributionforRequirement.parse(‘pytz’)首先去官网下载pytz包:http

    2025年6月15日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号