mysql的常用命令
一. 登录数据库
1. 登录本地数据库:mysql –u 用户名 –p;
一般情况下都为:mysql -u root -p;
在DOS下你输入以上命令之后,就会让你输入密码,输入正确的密码之后,就可以成功登录mysql数据库
二. 查看已有的数据库
1. show databases;
输入以上命令之后,就可以看见已经存在的数据库,一般默认的数据库有information_schema
mysql
performance_schema
test
四个数据库,在使用中,尽量不要修改或删除这四个数据库,及其里面的内容。
三. 创建数据库
1. create database 数据库名;
创建数据库时要注意数据库名不能和数据库的命令相同,如create,descirbe,insert等关键字,否则会创建失败。
四. 删除数据库
1. drop database 数据库名;
此种方式会一次性不留痕迹删整个数据库里的所有数据,所以在使用时,要注意做好数据的备份工作。
五. 应用数据库
1. use 数据库名;
如果不使用此语句的话,就无法对数据库里的表进行操作,因为系统根本不知道
该对那个数据库里的表进行相应的操作。系统就会报出ERROR 1046 (3D000): No database selected错误。
六. 查看数据库的引擎
1. 查看数据库支持的引擎:show engines;
此语句可以查看mysql 支持的数据库引擎,如下表:
可在其后加\G,可使显示的结果更加美观。
2. 查看数据可当前的默认引擎:show variables like ‘storage_engine’;
mysql 的默认数据库引擎为:InnoDB 。
七. 创建表
1.create table 表名 (属性名 数据类型 [完整约束条件],
属性名 数据类型 [完整约束条件],
属性名 数据类型 [完整约束条件]
);
表明 指的是你要创建的表的名称,属性名 指的是你的表中字段的名称,数据类型 指的是对应字段的数据类型,完整约束条件 指的是对应字段的特殊约束条件,如下表:
八. 设置表的字段
1.单字段设置:属性名 数据类型 primary key
例如:
以上代码中stu_id 为表example1的主键。
2.多字段设置:primary key (属性名1 ,属性名2 ......,属性名n)
例如:
九.设置表的外键
1. constraint 外键别名 foreign key (属性1.1,属性1.2.......,属性1.n)
references 表明(属性2.1,属性2.2.....,属性2.n)
十.设置表的非空约束
1. 属性名 数据类型 not null
例如:
十一.设置表的唯一性约束
1.属性名 数据类型 unique
例如:
十二.设置表的属性值自动增加
1.属性名 数据类型 auto_increment
例如:
十三.设置表的属性默认值
1.属性值 数据类型 default
例如:
十四.查看表的基本结构
1.describe 表名;
2. desc 表名;
describe 可以省略写为 desc
显示如下:
十五.查看表的详细信息
1.show create table 表名;
显示如下:
十六.修改表名
1.alter table 旧表名 rename [to] 新表名;
to 可以有,也可以省略。
十七.修改字段的数据类型
1.alter table 表名 modify 属性名 数据类型;
十八.修改字段名
1.alter table 表名 change 旧属性名 新属性名 新数据类型;
这里的属性名指的就是字段名,大家不要产生疑问。
十九.增加字段
1.alter table 表名 add 属性名1 数据类型 [完整约束条件] [first/after 属性名2]
当把括号里面的全部省略之后,系统默认将增加的字段加入到已有字段的最后,而使用first 后,则将增加的字段放在已有字段的最前面,用after 属性名2 后,则将增加的字段加入到属性名2的后面,也就是要求属性名2必须是表中已有的字段。
二十.删除字段
1.alter table 表名 drop 属性名;
二十一. 修改字段的顺序
1.alter table 表名 modify 属性名 数据类型 first/after 属性名2;
与增加字段相同,当使用first的,将目标字段放在所有字段之前,当使用after 属性名2 后,指将目标字段放在属性名 2 之后。
二十二. 删除表的外键约束
1.after table 表名 drop foreign key 外键别名;
二十三 . 删除表
1.删除没有被外键关联的普通表:drop table 表名;
2.删除被其他表关联的父表:先删除外键约束,再删除表。
二十四.退出mysql
1.exit;
exit后可带分号,也可以不带。