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   
       
       
       
       
       
       
       
       

  

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

上一篇:Sonarqube配置


下一篇:【POJ】3255 Roadblocks(次短路+spfa)