Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/266.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# C-Alter table tname add列cname Long Integer NOT NULL引发异常_C#_Sql_Ms Access_Alter - Fatal编程技术网

C# C-Alter table tname add列cname Long Integer NOT NULL引发异常

C# C-Alter table tname add列cname Long Integer NOT NULL引发异常,c#,sql,ms-access,alter,C#,Sql,Ms Access,Alter,我正在动态创建表和列 首先创建表,然后使用ALTERTABLE在其中添加列 但无论何时 ALTER TABLE TNAME ADD COLUMN CNAME LONG INTEGER NOT NULL 执行时,它在alter table语句中显示错误 当存在小数点28,0 NOTNULL时,列被成功添加 数据库是MS Access,使用C 在JET SQL语言中,long int有什么问题?没有long INTEGER数据库类型。您只需指定LONG或INTEGER 我用Access Quer

我正在动态创建表和列

首先创建表,然后使用ALTERTABLE在其中添加列

但无论何时

ALTER TABLE TNAME 
ADD COLUMN CNAME LONG INTEGER NOT NULL
执行时,它在alter table语句中显示错误

当存在小数点28,0 NOTNULL时,列被成功添加

数据库是MS Access,使用C


在JET SQL语言中,long int有什么问题?没有long INTEGER数据库类型。您只需指定LONG或INTEGER


我用Access Query Builder尝试了您的sql语句,但它不喜欢这种语法。然而,您是对的,如果我删除结尾NOTNULL,它将接受该语句,尽管它似乎不是有效的语法

access标记不引用ms access数据库。如果我没有指定not null,那么它可以正常工作。它会添加number DATATE类型和LONG INTEGER field类型的列,但如果不为null,则会抛出错误。是的,表为空。我刚刚创建了一个空白表,并向其中添加了列。不要跳过not null,跳过整数:ALTER TABLE TNAME ADD COLUMN CNAME LONG NOTNULL@Remou是的,这是正确的方法。然而,正如OP所指出的,我可以确认,如果我删除NOTNULL,Jet引擎将接受带有长整数的字符串。这对我来说很奇怪。是的,它正在工作。非常感谢你们两位。