检测SQL方言

时间:2016-04-07 16:38:46

标签: sql sql-server

我想知道在代码段中使用了哪种SQL方言。它是MSSQL,MySQL,PL / SQL还是无效的SQL?

CREATE TABLE ACTable (
    id int NOT NULL,
    x float NOT NULL,
    y float NOT NULL,
    z float NOT NULL
)
CONSTRAINT [PK_FTTable] PRIMARY KEY( id )

3 个答案:

答案 0 :(得分:3)

SQL不正确,但此SQL可以在SQL Server中使用:

CREATE TABLE ACTable (
    id int NOT NULL,
    x float NOT NULL,
    y float NOT NULL,
    z float NOT NULL
CONSTRAINT [PK_FTTable] PRIMARY KEY( id ))

答案 1 :(得分:1)

这部分几乎在每个rdbms

中都可以
CREATE TABLE ACTable (
    id int NOT NULL,
    x float NOT NULL,
    y float NOT NULL,
    z float NOT NULL
)

问题是约束,并且看起来不像任何db的有效语句。

您可以在 sqlFiddle 的每个rdmb上试用CREATE TABLE

答案 2 :(得分:0)

据我所知,它不是有效的SQL。

我能想到的每个数据库都需要{{1}}来添加约束。

当然,有一些我无法想到的数据库。但我跟它一起只是一个错误。毕竟,受约束影响的表没有上下文。