开启数据库服务
1 2 3 4
| # 先将路径放进环境变量中 export PATH=/usr/local/mysql/support-files:$PATH # 完成以上操作后就可以直接用命令了⬇️⬇️ sudo mysql.server start
|
关闭数据库服务
登陆数据库
1 2
| cd /usr/local/MySQL/bin mysql -u root -p12345678
|
显示数据库
创建数据库
删除数据库
打开数据库
显示当前数据库内的表
查看表结构
查询表的索引
新建(唯一)索引
1
| create (unique) index 索引名 on 表名(列名);
|
删除索引
1 2
| alter table 表名 drop index 索引名 (on 表名);
|
创建表
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
| drop table 表名 if exist; create table 表名( integer(整型) not null primary key auto_increment, varchar(字符串类型,必须要跟最大字符串), text(大文本), float(单精度,即7-8位有效数字), double(双精度,即15-16位有效数字), date(只有年月日), time(只有时分秒), datetime(既有年月日,又有时分秒), ); eg1.主键+外键 CREATE table course( cno char(7) not null PRIMARY KEY, cname VARCHAR(7) not null, ccredit int(2) not null, cpno char(7) REFERENCES course(con) ); eg2.复合主键+复合外键(多对多情况) CREATE table sc( sno char(7), cno char(7), score DECIMAL(4,1), point DECIMAL(2,1) PRIMARY key(sno,cno), FOREIGN key sno REFERENCES students(sno), FOREIGN key cno REFERENCES course(cno) );
|
查看新建表的命令/查看表约束和索引
查询表
1
| select 列名 form 表名 (join 从表 on 条件) where 条件 having 条件 group by 列名 order by 列名 (asc) limit 数量;
|
插入表
1
| insert into 表名(列名1,列名2,...) values(value1,value2,...);
|
修改表
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| 1、添加列 alter table 表名 add 列名 类型; 2、修改列 alter table 表名 change 列名 (新列名) 类型; 3、删除列 alter table 表名 drop 列名; 4、添加主键约束 (4.1)、单主键 alter table 表名 add constraint primary key(列名); (4.2)、复合主键(注意顺序) alter table 表名 add constraint primary key(列名1,列名2,...); 5、添加外键约束 (5.1)、单外键(单外键可以和复合主键中的单键相连,但是这样会不稳定) alter table 表名 add foreign key(列名) references 外表(主键); (5.2)、复合外键(注意顺序) alter table 表名 add foreign key(列名1,列名2,...) references 外表(主键1,主键2,...); 6、删除主键约束(主键在链接了外键的情况下不能删除) alter table 表名 drop primary key; 7、删除外键约束 alter table 表名 drop constraint 约束名 (on 表名);
|
复合主/外键内部是有顺序的,请注意!顺序由创建时决定
单键可以和复合主键的单键相连,但是不建议这么做
删除表
清空表