关于我们

质量为本、客户为根、勇于拼搏、务实创新

< 返回新闻公共列表

【收藏级】MySQL 100条命令,基本操作的所有内容(常看常新)(一)

发布时间:2023-06-30 17:00:55
大家好,我是秋意临。 一学期快结束了,结束前总结一篇MySQL,篇幅内容很多,所以是一篇收藏级,因为内容覆盖面比较广、比较浅、好理解非常适合正在学习mysql同学的新手,可以当作msyql命令手册大全,覆盖了mysql基本操作的所有内容(相信看到目录结构的一瞬间就会明白)。 常看常新,常看常新,常看常新哦!!~ 记得收藏+关注免得迷了路。 欢迎加入云社区 一、ER模型 实体-联系模型(简称E-R模型)它提供不受任何DBMS约束的面向用户的表达方法,在数据库设计中被广泛用作数据建模的工具。 我们在做一个项目是就需要提前使用ER模型来绘制ER图,从而使其数据库结构清晰、合理。 DBMS 中的约束,约束强制限制可以从表中插入、更新、删除的数据或数据类型。约束的整个目的是在更新、删除、插入表中时保持数据完整性。 约束的类型 非空、独特、默认、校验、键约束 – 主键,外键、域约束、映射约束 二、数据类型 三、字段命名规范 1.采用26个英文字母(区分大小写)和0-9的自然数(经常不需要)加上下划线_'组成,命名简洁明确,多个单词用下划线_'分隔。 2.—般采用小写命名。 3.禁止使用数据库关键字,如: table, time, datetime, primary等。 4.字段名称一般采用名词或动宾短语,如user_id,is_good。 5.采用字段的名称必须是易于理解,一般不超过三个英文单词。 四、数据库创建与管理 帮助 说明: table_name:数据表表名col_name:字段名data_type:字段的数据类型 查看创建过程 语法:show create 关键字(table database) 名称; show create table t_teacher; 4.1、创建数据库 语法:create database db_name; create database db_test; 4.2、删除数据库 语法:drop database db_name; drop database db_test; 4.3、列出数据库 语法:show databases; show databases; 4.4、备份数据库 如果在宿主机操作,可省略 -h 参数。 语法:mysqldump -h 主机名 -u 用户名 -p 密码 数据库名称 > 脚本文件路径; mysqldump -uroot -p000000 test > test.sql; 4.5、还原数据库 语法:mysql -h 主机名 -u 用户名 -p 密码 数据库名称 < 脚本文件路径; mysql -uroot -p000000 test < test.sql; 或者 source test.sql; 4.6、使用某个数据库 语法:use db_name; use db_test; 五、数据表创建与管理 5.1、创建表、结构 语法:create table table_name(col_name1 data_type1,col_name2 data_type2,....); 创建t_test数据表,字段为id,name(数据类型中的数字是字段长度) create table t_test(id char(20),name char(10)); 5.2、查看表结构 语法:describe table_name; desc table_name; describe可以缩写为desc。 describe t_test; desc t_test; 5.3、查看数据表 语法:show tables; show tables; 5.4、复制表结构 如果是复制其他数据库的表结构,在table_name2前加上数据库的名称 语法:create table new_table_name1 like old_table_namme2; 将数据库db_test中的t_test1表结构复制到当前数据库,命名为表结构t_test2。 create table t_test1 like t_test2; 5.5、复制表数据 表结构一致 insert into table_name_new select * from table_name_old; 表结构不一致 insert into table_name_new(column1,column2...) select column1,column2... from table_name_old; 5.6、修改表名 语法:alter table old_table_name (旧名字) rename new_table_name(新名字); alter table t_test1 rename t_test2; 5.7、增加字段 语法:alter table table_name add col_name1(添加字段名)data_type (字段类型); alter table t_test add test_address varchar(255); 5.7.1、将添加的字段放入首位 语法:alter table table_name add col_name1(添加字段名)data_type (字段类型) first; alter table t_test add test_address varchar(255) first; 5.7.2、将添加的字段放入 test2字段之后 语法:alter table table_name add col_name1(添加字段名)data_type (字段类型) after test2(字段); alter table t_test add test1 varchar(20) after test2; 5.8、删除字段 语法:alter table t_reader drop reader_qq (删除的字段名); alter table t_test drop test1; 5.9、修改字段的数据类型 语法:alter table table_name modify col_name1(字段名) data_type (字段类型); 将test2的数据类型由varchar改为char。 alter table table_name modify test2 char(100); 5.10、修改字段的名称 语法:alter table table_name change old_col_name(字段名) new_col_old(新字段名) data_type(字段数据类型); alter table t_test change test_address address char(100); 5.11、设置主键 作用:保证输入记录唯一性 方式: 创建表时设置 创建表之后设置 语法:create table table_name(xs_id char(12),xs_name char(10) primary key (xs_id)); 创建studnet表时,将xs_id设置为主键。 create table student (xs_id char(12),xs_name char(10),primary key(xs_id)); 创建studnet表时,将xs_id和xs_name设置为主键。这种将多个字段设为主键的方式称为:组合主键。组合主键也是一个主键(唯一性)。 create table student (xs_id char(12),xs_name char(10),primary key(xs_id,xs_name)); 5.12、删除主键 语法:alter table table_name drop primary key; alter table studnet drop primary key; 5.13、外键 作用:确保数据完整性。如: 实体完整性 用户定义完整性 参照完整性只有当某个字段成为了主键后,该字段才能在其它表中成为外键。语法:alter table table_name add constraint 外键名称 foreign key (设为外键的字段名)references t_table2(主键字段名); 将t_test1表中id字段设为主键,t_test2表中id字段设为外键。 alter table t_test2 add constraint fk1 foreign key (id) references t_test1(id); 5.14、删除外键 语法: show create table table_name; 获取外键名称: show create table t_test2; 语法:alter table t_test2 drop foreign key 外键名称; alter table t_test2 drop foreign key fk1; 六、数据更新 6.1、insert 插入记录 6.1.1、插入单条记录 语法:insert [into] 表名 [字段1,字段n] values(值1,值n); insert into test values(123,'tt'); insert into test(pid) values(124); 6.1.2、插入多条记录 insert into test values(125,'ttww'),(126,'ttwwe'),(127,'ttqqq'); 6.1.3、子查询,插入多条记录 使用select查询出来的内容字段,插入到inert对应的字段 语法:insert [into] 表名1 [字段1,字段n] select [字段1,字段n] from 表名2 [where语句]; insert into test-1 select * from test-2; insert into test-1(pid,name) select pid,name from test-2; 6.2、delete 删除记录 语法:delete from 表名 [where <条件>]; delete from test; ## 删除所有记录 delete from test where pid==123; #删除id为123的这条记录。 6.3、update 更新记录 语法:update 表名 set 列名1 = 值1,列名2 = 值2,…[where 条件];

/template/Home/leiyu/PC/Static