mysql5.6怎样使用_mysql5.6初级使用方法学习第一天

mysql server

mysql -h localhost -u root -p //连接数据库

enterpasswd:  //键入密码

>show databases; //输出数据库名表

>create database test_db; //创建一个名字是test_db的数据库

>use test_db; //进入test_db数据库

>create table tb_emp1

>(

>id int(11),

>name varchar(25),

>deptid int (11),

>salary float

>);

//创建一个数据库表,标明为tb_emp1,表中有4个字段,字段名id表示名单标号,字段名name表示员工名称,字段名deptid表示所在部门编号,字段名salary表示员工薪水

>show tables; //输出数据库中的表

>desc tb_emp1; //输出数据表中的字段名称

//定义主键的方法

//1.定义列的同时指定主键

>create table tb_emp2

>(

>id int(11) primary key,

>name varchar(25),

>deptid int(11),

>salary float

>);

//创建一个数据库,标明为tb_emp2,表中有4个字段,字段名id表示名单编号且定义为主键

//主键能够唯一表示表中的一条记录,可以结合外键来定义不同的数据表之间的关系,并且可以加快数据库的查询速度

>desc tb_emp2; //使用desc显示数据表中列的名称,id字段定义为PRI

//2.定义完所有列后定义主键

>create table tb_emp3

>(

>id int(11),

>name varchar(25),

>deptid int(11),

>salary float,

>primary key(id)

>);

//效果同上

//设置多字段联合主键  一个确定不了唯一,需要多个组合来确定唯一。

>create table tb_emp4

>(

>id int(11),

>name varchar(25),

>deptid int(11),

>salary float,

>primary key(id,deptid)

>);

>desc tb_emp4; //查看发现id和deptid字段都被标记为主键 称为表tb_emp4的联合主键

//外键是用来在两个表之间建立连接,可以是一个或者多个,一个表的外键可以是空值,若不是空值,则必须与另外一个表的主键键值

//外键是表的一个字段,可以不是本表的一个主键,但必须对应于另外一个表的主键

//定义外键后,不允许删除在另一个表中具有关联关系的行,外键的作用是保持数据的一致完整性。部门表tb_dept的主键是id,在员工表tb_emp5中有一个键deptid与这个id关联

>create table tb_dept

>(

>id int(11) primary key,

>name varchar(22) not null, //使用了非空约束字段标志not null

>location varchar(50)

>);

//新建一个部门表,id表示部门号,name表示部门名称,location表示部门位置

>create table tb_emp5

>(

>id int(11) primary key,

>name varchar(25),

>deptid int(11),

>salary float,

>constraint fk_emp_dept1 foreign key(deptid) references tb_dept(id)

>);

//新建一个员工信息表tb_emp5,在该表中添加名称为fk_emp_dept1的外键约束,外检名称为deptid,其依赖于表tb_dept1的主键id

//模板 constraint 外键名 foreign key(字段名1) references 主表名(主键1)

//字表与父表

//相关表之间的联系,子表(从表)的外键必须关联父表(主表)的主键,且关联字段的数据类型必须匹配

>create table tb_emp6

>(

>id int(11) primary key,

>name varchar(25) not null

>deptid int(11),

>salary float,

>constraint fk_emp_dept2 foreign key(deptid) references tb_emp6(id)

>);

//定义非空字段name插入值不能为空

//唯一性约束(unique)要求该列唯一,允许为空,但只能出现一个空值

//字段唯一性约束定义方法1

>create table tb_dept2

>(

>id int(11) primary key,

>name varchar(22) unique,

>location varchar(50)

>);

>desc tb_dept2  //显示字段键值为UNI

//字段唯一性约束定义方法2

>create table tb_dept3

>(

>in int(11) primary key,

>name varchar(22),

>location varchar(50),

>constraint sth unique(name)

>);

>desc tb_dept3

show create table 表名 //查看表中外键约束名称

//默认约束用来指定列默认的值。如果插入一条新的记录是没有为这个字段复制,那么系统会自动为这个字段赋默认值。

//字段名 数据类型 default 默认值

>create table tb_emp7

>(

>id int(11) primary key,

>name varchar(25) not null,

>deptid int(11) default 11111,  //设置员工所在的部门编号默认11111

>salary float,

>constraint fk_emp7_dept foreign key(deptid) references tb_dept(id)

>);

>desc tb_emp7 //发现tb_emp7表中deptid列的default键值为11111

//在主键中添加AUTO_INCREMENT关键字可以使系统自动生成主键值,且每增加一条记录,主键值加1 该关键字可以应用于任何整数类型

>create table tb_emp8

>(

>id int(11) primary key auto_increment,

>name varchar(25) not null,

>deptid int(11) default 11111,

>salary float,

>constraint fk_emp8_dept foreign key(deptid) references tb_dept(id)

>);

>desc tb_emp8 //tb_emp8表中的deptid列default键值为11111,id列Extra键值为auto_increment

//下面我们来测试一下

//首先我们现在tb_dept表中添加一个部门id为11111的记录,否则在tb_emp8中插入记录时会因为缺少默认11111的部门id的外键值而连接出错

>insert into tb_dept(id,name,location)

>values(11111,'server','shaanxi,china');

>insert into tb_emp8(name,salary)

>values('frank',6000),('tom',5600),('grace',5900);

//下面我们用select显示表中所有记录 结果可以看到id值自动增加

>select * from tb_emp8

//我们可以查看mysql中变量的值

>show variables like '%xxx%'; //查看session会话变量的值 可以查看auto_increment变量值

>show global variables like '%xxx%'; //查看全局变量的值

//查看表基本结构语句

>describe tb_emp8;

>desc tb_emp8;

//表基本结构极端解释

//NULL :该列是否可以存储NULL值,可以为YES,不也以为NO

//Key:表示该列是否可以存储NULL值,PRi表示该列是表主键的一部分,UNI表示该类是UNIQUE索引的一部分,MUL表示在列中某个给定值允许出现多次

//Default:表搜狐死该列是否有默认值,如果有的话是多少

//Extra:表示可以获取的与给定列有关的附加信息,例如AUTO_INCREMENT等

//查看表详细结构语句

>show create table tb_emp8\G;

//增加\G参数是显示效果整齐

//区别 desc语句使用表格的形式显示出表的基本结构 show create table语句使用语句的形式显示出标的详细结构

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值