mysql数据表的操作

1.创建数据表语法

CREAT TABLE <表名>

(

  字段名1:数据类型 [列级别的约束条件][默认值],

  字段名2:数据类型 [列级别的约束条件][默认值],

  ....

  [表级别的约束条件]

)

例子:

mysql> create table tb_emp1 (id int(11),name varchar(25),salary float,deptId int(11));
Query OK, 0 rows affected (0.18 sec)

mysql> show create table tb_emp1\G;
*************************** 1. row ***************************
Table: tb_emp1
Create Table: CREATE TABLE `tb_emp1` (
`id` int(11) DEFAULT NULL,
`name` varchar(25) DEFAULT NULL,
`salary` float DEFAULT NULL,
`deptId` int(11) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4

2.使用主键约束:

(1)在定义列的同时指定主键

字段名 数据类型 PRIMARY KEY [默认值]

(2)在定义完所有列以后指定主键

[CONSTRAINT <约束名>] PRIMARY KEY(<字段名>)

(3)多字段联合主键

[CONSTRAINT <约束名>] PRIMARY KEY(<字段名1><字段名2>...)

例子:

mysql> create table tb_emp2 (id int(11) PRIMARY KEY,name varchar(25),salary float,deptId int(11));
Query OK, 0 rows affected (0.03 sec)

create table tb_emp3 (id int(11),name varchar(25),salary float,deptId int(11),[CONTSRAINT pri_id] PRIMARY KEY(id);

mysql> show create table tb_emp3\G;
*************************** 1. row ***************************
Table: tb_emp3
Create Table: CREATE TABLE `tb_emp3` (
`id` int(11) NOT NULL DEFAULT '0',
`name` varchar(25) DEFAULT NULL,
`salary` float DEFAULT NULL,
`deptId` int(11) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4  

联合主键

mysql> create table tb_emp4 (id int(11),name varchar(25),salary float,deptId int(11), PRIMARY KEY(id,name));
Query OK, 0 rows affected (0.00 sec)

mysql> show create table tb_emp4\G;
*************************** 1. row ***************************
Table: tb_emp4
Create Table: CREATE TABLE `tb_emp4` (
`id` int(11) NOT NULL DEFAULT '0',
`name` varchar(25) NOT NULL DEFAULT '',
`salary` float DEFAULT NULL,
`deptId` int(11) DEFAULT NULL,
PRIMARY KEY (`id`,`name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4

  

posted @ 2016-11-11 10:30  季宁  阅读(212)  评论(0编辑  收藏  举报