我们使用MS Access作为Oracle表的前端,通过ODBC,它一直运行良好。 但是我们试图在Oracle表中使用DEFAULT约束。当我们在Access中打开链接表时,我们看到现有数据就好了,但是当我们尝试添加一行时,没有将任何值键入具有Oracle DEFAULT的列(期望使用默认值),我们看到#在每列中删除,该行不会添加到表中。有任何想法吗?如果有帮助我可以提供更多细节,请告诉我。
答案 0 :(得分:1)
如果您使用网格视图作为数据条目执行此操作,我认为Access可能会明确尝试插入空字符串作为该值。尝试为插入编写简单的SQL语句,看看会发生什么。
我希望这样的基础SQL(假设为name =“John”,balance =“0.0”设置默认值)...
通过网格视图:
insert into customers (cust_id, name, balance) values (1, "Bob", 50.25);
如果一个人是空的:
insert into customers (cust_id, name, balance) values (2, "", 0);
但是,通过SQL:
insert into customers (cust_id, name) values (3, "Pete");
insert into customers (cust_id) values (4);
我假设SQL示例使用未设置列的默认值,但网格视图从UI提供空白值,这将阻止使用默认值。
答案 1 :(得分:0)
关于Oracle的Dunno,但要使用SQL Server,您需要在表中使用时间戳字段。