Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Delphi и MS SQL Server
|
|||
|---|---|---|---|
|
#18+
Только начал разбираться с MS SQL Server (Раньше работал только с Paradox) и наткнулся на (наверное глупую) такую проблему: Создал таблицу с автоинкрементным полем (Id). Через TTable подключаюсь к ней, подключаю DBGrid, добавляю новую строку и выдается ошибка Id must have a value. Почаму на добавляется новый номер? В Enterprise Manager (Open Table) все работает? Подскажите... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2003, 12:39 |
|
||
|
Delphi и MS SQL Server
|
|||
|---|---|---|---|
|
#18+
А ты точно это поле сделал автоинкрементным ??? такое ощущение что утебя просто стоит NOT NULL _____________ __ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2003, 12:58 |
|
||
|
Delphi и MS SQL Server
|
|||
|---|---|---|---|
|
#18+
Для работы с МS SQL не надо использовать BDE. В BDE не надо использовать TTаble. При ипользовании TTable не надо надеятся на автоформирование запросов на вставку средствами BDE. В данном случае надо, что бы приложение явно собирало и отправляло нужный запрос на вставку. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2003, 15:55 |
|
||
|
Delphi и MS SQL Server
|
|||
|---|---|---|---|
|
#18+
Re:А ты точно это поле сделал автоинкрементным ??? Ну насколько я понял Identity incremrnt равен 1 - это автоинкремент? Re:Для работы с МS SQL не надо использовать BDE. В BDE не надо использовать TTаble. Ну вообще возможно же как-то использовать TTable, чтоб работал автоинкремент? И вообще я не очень понимаю: если я настроил алиас через ODBC и использую TTable я все равно использую BDE? Ну вообще возможно же как-то использовать TTable, чтоб работал автоинкремент? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2003, 17:23 |
|
||
|
Delphi и MS SQL Server
|
|||
|---|---|---|---|
|
#18+
Вставка записей с автоинкриментными полями в TTable через BDE работает нормально (сам с этого начинал, потом перешел на TQuery). Видимо какая-то мелкая ошибка, проверь все внималельно, особенно в свойствах полей TTable. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2003, 19:14 |
|
||
|
Delphi и MS SQL Server
|
|||
|---|---|---|---|
|
#18+
Да. Это все равно будет работа через BDE. Не надо пытаться перенести приемы работы с парадоксом на SQL-сервера. Не поленился, создал тестовую таблицу и подключился через BDE. Оказалось, что запрос до SQL-сервера ДАЖЕ НЕ ДОШЕЛ. То есть, ошибку возвращает BDE. Что вполне логично, так как BDE "знает", что поле - обязательное. А вот то, что оно автоинкременентное - получается, не знает. Если в это поле что-то ввести, то ошибку возвратит уже ODBC, так как оно "знает" что в автоинкременент вводить значения нельзя. Обойти это, кончно можно. Да вот надо ли, если при работе через ADO никаких проблем нет? C BDE так же будут проблемы при вставке, если в таблице есть поля со значениями по умолчанию. Это мне давно известно, но докопаться до причины . Зачем героически преодолевать самим собою созданные трудности? ========= Случайный прохожий. Наверное Вы работали через Native Driver MSSQL, а не через ODBC. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2003, 20:23 |
|
||
|
Delphi и MS SQL Server
|
|||
|---|---|---|---|
|
#18+
поставь у Field свойство Required в false ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.11.2003, 17:05 |
|
||
|
|

start [/forum/topic.php?fid=58&msg=32334664&tid=2115760]: |
0ms |
get settings: |
7ms |
get forum list: |
25ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
70ms |
get topic data: |
9ms |
get forum data: |
4ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
| others: | 231ms |
| total: | 400ms |

| 0 / 0 |
