Sql 创建mdb表格字段并设置为自动增量

Sql 创建mdb表格字段并设置为自动增量,sql,ms-access,asp-classic,Sql,Ms Access,Asp Classic,我完全不熟悉SQL,但我正在尝试从ASP在数据库中创建一个新表,并设置三个字段,其中“field3”被设置为主键自动递增字段 我尝试了许多在网上找到的代码片段,但都因语法错误而失败。创建表工作正常,直到我尝试使字段自动递增 另外,在尝试使用ALTERTABLE时,我已成功地将字段设置为主键,但在尝试使其自动递增时,由于语法错误而失败 下面是我正在尝试的一个例子 任何帮助我实现我需要完成的事情都将不胜感激。提前谢谢 <% 'returns: Microsoft JET Database E

我完全不熟悉SQL,但我正在尝试从ASP在数据库中创建一个新表,并设置三个字段,其中“field3”被设置为主键自动递增字段

我尝试了许多在网上找到的代码片段,但都因语法错误而失败。创建表工作正常,直到我尝试使字段自动递增

另外,在尝试使用ALTERTABLE时,我已成功地将字段设置为主键,但在尝试使其自动递增时,由于语法错误而失败

下面是我正在尝试的一个例子

任何帮助我实现我需要完成的事情都将不胜感激。提前谢谢

<%

'returns: Microsoft JET Database Engine error '80040e14' Syntax error in ALTER TABLE statement.

set conn = server.CreateObject ("ADODB.Connection")

conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & server.MapPath ("databases\db1.mdb")

Dim strSQL

strSQL = "CREATE TABLE table1 (field1 INT, field2 CHAR(10))"

conn.Execute strSQL

strSQL = "ALTER TABLE table1 ADD field3 INT UNSIGNED NOT NULL AUTO_INCREMENT, ADD PRIMARY KEY (field3)"

conn.Execute strSQL

conn.Close

%>

您可以使用如下查询创建表:

CREATE TABLE table1 (field1 INT, field2 CHAR(10), field3 Identity(1,1), Primary Key (field3))

我个人会一次性创建表,而不是创建和更改,比如

"CREATE TABLE table1(field 1 int, field 2 CHAR(10), field 3 INT PRIMARY KEY AUTOINCREMENT(1,1))
已编辑,原始postey MySQL,未正确阅读
第二次编辑。现在我们已经看到了ms access,所以上面的语法应该是正确的

感谢Kul Tigin,感谢Dev N00B,它工作得非常好。在9种语言中,我编写的SQL不是其中之一,但即使在我定期编写的语言之间,它的语法也总是混合在一起,这就造成了“船上的洞”。@Clay你确定这个查询通过Microsoft.Jet.OLEDB.4.0提供的连接创建表吗?它不起作用了。