我正在使用MS Access数据库创建Java程序。 修改了我的程序
Statement s;
String[] tabinfo = {"Albara", "TBala"};
s.execute("ALTER TABLE " + tabinfo[0] + " ALTER COLUMN " +
tabinfo[1] + " SET DEFAULT 0 ");
我得到的是SqlException: ALTER TABLE syntax error
。我做错了什么?我拥有该文件的完整权利。表名和列名是正确的,因为名称是从数据库元数据中提取的,我不是在修改系统表。
这是一个修改我自己的数据库的程序,这是我几年前制作的一个程序所使用的,所以改变数据库是不可能的。还有一个问题是使用Java,我的客户端计算机不会安装.Net framework 3.5而且我不会去那里做信息维护。
答案 0 :(得分:1)
该查询不符合MSDN上指定的MS Access的ALTER TABLE
语法
ALTER TABLE Statement (Microsoft Access SQL)
其他sources似乎表明您在设置默认值时需要包含数据类型,例如
ALTER TABLE <tableName> ALTER COLUMN <columnName> <columnType> DEFAULT <defaultValue>
(另请注意,它不包括SET
)
这个问题似乎表明你需要启用SQL Server语法兼容性才能使用它: SQL to add column with default value - Access 2003