1,连接数据库服务器命令
mysql -u 用户名 -p 密码
mysql是连接MySql数据库的命令,-u后跟用户名,-p后跟密码,如果登陆后展示"mysql",则表示登录成功。
2,退出数据库命令
quit;
3,库相关的命令操作
3.1查看所有的库: show databases;
(前四个是库中就有的,后两个是自己建的)
(信息''6 rows in set (0.01 sec)''表示集合中有六行信息,处理时间为0.01秒)
3.2创建数据库:create database 库名;
(信息''Query OK, 1 row affected (0.01 sec)'' 表示创建成功,一行受到影响,处理时间为0.01秒)
3.3删除数据库:drop database 库名;
(需要注意的是,删除数据库会同时将数据库中所有表及表中的数据删除)
3.4修改数据库:
alter database 库名
3.4选择所要操作的数据库:use 库名;
(当要查看,创建或编辑表时,要先使用该命令选中库名,注:只第一次时使用一次就可以了,后面无需
使用就可直接对表操作)
4,表相关操作
4.0创建表:create table 表名(属性名 数据类型 [完整性约束],属性名 数据类型 [完整性约束]....属性名 数据类型 [完整性约束])
注意:在数据库创建的时候要选取合适的数据类型,而且还要添加完整性约束。
完整性约束:
4.0.1设置表的主键:
(主键:能唯一的标识表中的每一条记录,主键与记录的关系如同身份证和人的关系,表中任何两个记录的主键字段的值都不能相同,且主键字段的值是非空值,主键可以是单一字段,也可以是多个字段的和)
(目的:帮助MySQL以最快的速度查到表中的某一条记录)
单字段主键:
多字段主键:
4.0.2设置表的外键(foreign key)
(包含外键的表称为从表,包含外键所引用的主键或唯一键的表为主表。例如:SC,Student,Course表,Sno是Student表的主键,Cno是Course表的主键,Sno ,Cno就为SC表的外键,Student表,Course表为主表,SC表为从表)
(外键的作用:建立该表与主表之间的关联关系,主表中删除某条信息时,从表中与之对应的信息也必须相应改变。例如:Student表中删除学号为001学生的信息,那么SC中所有关于001学生的信息也必须删除,以保证信息完整性)
(注意:从子表的外键必须为主表的主键,而且数据类型也必须相同)
4.03设置表的非空约束(not null)
(非空性是指表中该字段的值不能为空,如果用户新添加的记录中,该字段为空值,则会报错)
4.0.4设置表的唯一性(unique)
(唯一性是指该表中所有记录的该字段值不能相等)
(primary key 和 unique 的区别:
1,一个表只能定义一个primary key ,但可以定义多个unique。
2,primary key 定义的列,不允许有空值,但unique 定义的列允许出现空值。
3,不能为同一列或多既定义primary key ,又定义unique。)
4.0.5设置表的属性值自动增加(auto_increment)
(auto_increment 主要用于为表中插入的新纪录自动生成唯一的id。一个表中只允许一个字段使用auto_increment,该字段必须为主键的一部分,且应为整数类型。默认情况下从1开始增,若第一条记录有设初始值,则后面的在该值上递增)
4.0.6设置表的属性的默认值(default)
(如果插入一条记录时没有为该字段赋值,那么系统会默认为这个字段插入默认值。)
4.0删除表:drop table 表名;
4.1查看表的字段名称,类型,约束条件,默认值等信息:desc 表名;
4.2查看表的创建:show create table 表名;或 show create table 表名G;
4.3 查看表中信息内容:select * from 表名;
4.4修改表名:alter table 旧表名 rename [to] 新表名;
4.5修改表中属性名:alter table 表名 change 旧属性名 新属性名 新数据类型;
4.6 修改表中属性类型:alter table 表名 modify 属性名 新数据类型;
4.7增加新的属性:alter table 表名 add 属性名 数据类型 [完整性约束] [ first | after 属性名];
4.7.1 往表中插入一条记录:insert into 表名 (属性名1...属性名n)values (值1....值n);
4.8 删除表中的属性:alter table 表名 drop 属性名;
4.8.2删除表中某条记录:delete from 表名 where 条件;
4.9修改属性的排列顺序: alter table 表名 modify 属性名1 数据类型 after 属性名2;
alter table 表名 modify 属性名1 数据类型 first;(将该字段移到第一列)
4.10修改表中某条记录的属性值:update user set name='lisa' where id=1;
4.10 修改表的存储引擎: alter table 表名 engin = innodb|myisam;
4.11 查看表的存储引擎:show create table 表名[G];
4.12 查看MySQL数据库支持的存储引擎:show engins;
(Engine :指存储引擎名称;
Support:说明MySql是否支持该类引擎;
Comment:指对该引擎的评论;
Transactions:表示是否支持事务处理;
XA:表示是否分布式交易处理的XA规范;
4.13查看MySQL支持的存储引擎:show variables like 'have%';
(Variable_name:表示存储引擎的名称;
Value:表示MySQL支持的情况;
DISABLED:表示支持但还没开启;)