【发布时间】:2013-04-10 04:09:46
【问题描述】:
在我的 SQL Server Compact Edition 数据库中,这是可行的:
INSERT INTO Clients (Title, FirstName, MiddleName, LastName, Suffix, IsMale)
VALUES (NULL, NULL, NULL, NULL, NULL, NULL)
但这不起作用:
INSERT INTO Clients (Title, FirstName, MiddleName, LastName, Suffix, IsMale)
VALUES (NULL, NULL, NULL, NULL, NULL, NULL); SELECT @@IDENTITY
这里的方言阻碍是什么?如果这有什么不同的话,我将把它作为一个字符串/命令从 VB.Net 传递给 SQL Server CE。
最初我尝试使用 SCOPE_IDENTITY() 执行此操作,并且强烈希望这样做,但显然不支持?如果 SCOPE_IDENTITY() 问题有解决方法,我希望得到涉及该解决方法的答案;如果不是,那么我会很好地回答涉及 @@IDENTITY 的问题。
谢谢!
【问题讨论】:
-
显而易见的。是否所有列都允许为 null 并且是否插入了一行?
-
从一个快速的谷歌搜索也返回了你的交叉发布的问题 (grr) 似乎精简版不允许批量查询,所以你必须在另一个查询中选择 @@IDENTITY 。您可能希望使用事务,以便在大量用户同时访问数据库的情况下不会得到错误的值。
-
SQL Server Compact 不是多用户数据库
-
交叉发布的问题?
-
@Blam 如前所述,插入语句独立工作。
标签: sql sql-server vb.net tsql sql-server-ce