SQLServer、MySQL、Oracle语法差异小集锦

一、表操作语法差异

  在建表的时候,只有自增的语法不同。

  主键(PRIMARY KEY)、外键(FOREIGN KEY)、非空(NOT NULL)、唯一(UNIQUE)、默认值(DEFAULT)都相同,自增实现的方式不同。

  下面给出3种数据库通用的建表与初始化测试语句:

CREATE TABLE Country(
   Id int PRIMARY KEY,
   Name varchar(20)
);

CREATE TABLE Person (  
  Id int PRIMARY KEY,  
  CountryId int,
  Name varchar(20) NOT NULL UNIQUE,  
  Sex int DEFAULT 0,
  CONSTRAINT FK_CID_PID FOREIGN KEY (CountryId) REFERENCES Country(Id)
);

  插入测试数据:

INSERT INTO Country VALUES(1, 蜀国);
INSERT INTO Country VALUES(2, 魏国);
INSERT INTO Country VALUES(3, 吴国);

INSERT INTO Person VALUES(1,1,刘备,1);
INSERT INTO Person VALUES(2,1,关羽,1);
INSERT INTO Person VALUES(3,1,张飞,1);
INSERT INTO Person VALUES(4,2,曹操,1);
INSERT INTO Person VALUES(5,2,郭嘉,1);
INSERT INTO Person VALUES(6,2,典韦,1);
INSERT INTO Person VALUES(7,3,孙权,1);
INSERT INTO Person VALUES(8,3,周瑜,1);
INSERT INTO Person VALUES(9,3,大乔,2);

 

  SQLServer MySQL Oracle
自增 identity(1,1)  AUTO_INCREMENT   
       
       
       
       
       
       
       
       

  

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。