Доступ через ODBC - Oracle DEFAULT не работает - PullRequest
1 голос
/ 24 декабря 2008

Мы используем MS Access в качестве внешнего интерфейса для таблиц Oracle через ODBC, и он работает хорошо. Но мы пытаемся использовать ограничение DEFAULT в таблице Oracle. Когда мы открываем связанную таблицу в Access, мы прекрасно видим существующие данные, но когда мы пытаемся добавить строку, не вводя никакого значения в столбец (столбцы) с Oracle DEFAULT (ожидая использования по умолчанию), мы видим Удаляется в каждом столбце, и строка не добавляется в таблицу. Есть идеи? Я могу предоставить более подробную информацию, если это поможет, просто дайте мне знать.

Ответы [ 2 ]

1 голос
/ 24 декабря 2008

Если вы делаете это с видом сетки в качестве ввода данных, я думаю, что 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 используются значения по умолчанию для неустановленных столбцов, но в виде сетки для предоставления пустых значений из пользовательского интерфейса, которые не позволяют использовать значения по умолчанию.

0 голосов
/ 27 декабря 2008

Не знаю об Oracle, но для того, чтобы это работало с SQL Server, вам нужно поле отметки времени в вашей таблице.

...