Heim > Datenbank > MySQL-Tutorial > Hauptteil

SQL中数据库之间不兼容的语法汇总

WBOY
Freigeben: 2016-06-07 15:30:26
Original
1367 Leute haben es durchsucht

1.TOP SQL Server 的语法: SELECT TOP number columnName FROM tableName MySQL 的语法: SELECT columnName FROM tableName LIMIT number Oracle 的语法: SELECT columnName FROM tableName WHERE ROWNUM=number 2.创建表时添加UNIQUE/PRIMARY KEY/FOREIG

1.TOP

SQL Server的语法:

SELECT TOP number columnName

FROM tableName

MySQL的语法:

SELECT columnName

FROM tableName

LIMIT number

Oracle的语法:

SELECT columnName

FROM tableName

WHERE ROWNUM

2.创建表时添加UNIQUE/PRIMARY KEY/FOREIGN KEY/CHECK(不需名为约束人为命时才有不兼容)

   (接下来举例说明)

SQL Server/Oracle/Access的语法:

CREATE TABLE Students

(Name char(10) NOT NULL,

Id char(10) NOT NULL UNIQUE

)

MySQL的语法:

CREATE TABLE Students

(Name char(10) NOT NULL,

Id char(10) NOT NULL,

UNIQUE(Id)

)

PRIMARY KEY和UNIQUE同理,只是把UNIQUE换成PRIMARY KEY而已;

FOREIGN KEY也是同理,只不过要加上REFERENCES的内容而已;

CHECK也是同理,只不过要加上约束的内容而已;

3.撤销UNIQUE

SQL Server/Oracle/Access的语法:

ALTER TABLE TableName

DROP CONSTRAINT constraintName

MySQL的语法:

ALTER TABLE TableName

DROP INDEX indexName

4.撤销PRIMARY KEY

SQL Server/Oracle/Access的语法:

ALTER TABLE TableName

DROP CONSTRAINT constraintName

MySQL的语法:

ALTER TABLE TableName

DROP PRIMARY KEY

5.撤销FOREIGN KEY

SQL Server/Oracle/Access的语法:

ALTER TABLE TableName

DROP CONSTRAINT constraintName

MySQL的语法:

ALTER TABLE TableName

DROP FOREIGN KEY foreignKeyName

6.撤销CHECK

SQL Server/Oracle/Access的语法:

ALTER TABLE TableName

DROP CONSTRAINT constraintName

MySQL的语法:

ALTER TABLE TableName

DROP CHECK checkName

7.为已有的表添加DEFAULT

SQL Server/Oracle/Access的语法:

ALTER TABLE tableName

ALTER columnName SET DEFAULT 'defaultValue'

MySQL的语法:

ALTER TABLE tableName

ALTER COLUMN columnName SET DEFAULT 'defaultValue'

8.撤销DEFAULT

SQL Server/Oracle/Access的语法:

ALTER TABLE tableName

ALTER columnName DROP DEFAULT 

MySQL的语法:

ALTER TABLE tableName

ALTER COLUMN columnName DROP DEFAULT

9.撤销引索

SQL Server的语法:

DROP INDEX tableName.columnName

Oracle的语法:

DROP INDEX indexName

Access的语法:

DROP INDEX indexName ON tableName

MySQL的语法:

ALTER TABLE tableName

DROP INDEX indexName


当然,不同的数据库在时间处理等方面还有不同,但由于文本过长,在此不再赘述。





Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage