语法的差异
我这里主要说语法的不同
1、默认约束
区别:mysql里面DEFAULT关键字后面是不用加括号的
--sqlserver
CREATE TABLE emp
(
id INT DEFAULT(12)
)
--mysql
CREATE TABLE emp
(
id INT DEFAULT 12
)
insert into emp(id) values(default);
Query OK, 1 row affected (0.05 sec)
mysql> select * from emp;
+------+
| id |
+------+
| 12 |
+------+
1 row in set (0.00 sec)
2、设置自增列
MYSQL的自增列一定要是有索引的列,设置种子值要在表的后面设置
--设置自增列
--sqlserver
CREATE TABLE emp
(
id INT IDENTITY(1, 1)
)
--mysql
-- 设置自增ID从N开始
CREATE TABLE empautoinc(
ID INT PRIMARY KEY AUTO_INCREMENT
) AUTO_INCREMENT = 100 ; --(设置自增ID从100开始)
insert into empautoinc(id) values(null);
Query OK, 1 row affected (0.00 sec)
mysql> select * from empautoinc;
+-----+
| ID |
+-----+
| 100 |
+-----+
1 row in set (0.00 sec)
show table status like 'empautoinc'\G;
*************************** 1. row ***************************
Name: empautoinc
Engine: InnoDB
Version: 10
Row_format: Compact
Rows: 1
Avg_row_length: 16384
Data_length: 16384
Max_data_length: 0
Index_length: 0
Data_free: 0
Auto_increment: 101
Create_time: 2016-06-27 11:50:32
Update_time: NULL
Check_time: NULL
Collation: utf8_general_ci
Checksum: NULL
Create_options:
Comment:
1 row in set (0.00 sec)