Конференция "Базы" » получить Insert Id после запроса INSERT... [D7, MSAccess via Ado]
 
  • Anatoly Podgoretsky © (30.07.08 13:30) [40]
    > stas  (30.07.2008 11:51:34)  [34]

    А там он определен, если ты не заметил.
  • Anatoly Podgoretsky © (30.07.08 13:32) [41]
    > Нат  (30.07.2008 12:26:36)  [36]

    А нафига Insert - ты думаешь факт определения ИД изменится, если делать вставку с помощью запроса.
  • Anatoly Podgoretsky © (30.07.08 13:33) [42]

    > Разве что прямо на серверной стороне... ну там свои штуки.

    Где ты нашел серверную сторону в Акцесс?
  • Anatoly Podgoretsky © (30.07.08 13:34) [43]
    Кстати а вас не очень занесло с триггерами в Акцесс?
  • Нат (30.07.08 13:40) [44]
    Серверный курсор имеет место быть, однако с закладки пожелали счастливо оставаться.
    Без закладко грид ничего не смог отобразить.
    На этом и расстались.
    С серверной стороной в Акцессе.
  • stas © (30.07.08 13:56) [45]
    Anatoly Podgoretsky ©   (30.07.08 13:30) [40]
    где там?
    Anatoly Podgoretsky ©   (30.07.08 13:30) [40]-[43]
    Разошелся...
  • Anatoly Podgoretsky © (30.07.08 14:48) [46]
    > stas  (30.07.2008 13:56:45)  [45]

    Читай все обсуждение.
  • Игорь Шевченко © (30.07.08 14:55) [47]
    Надо использовать RETURNING. Это правда тоже не в Access-е, но какая нахрен разница ?
  • Sergey13 © (30.07.08 15:10) [48]
    > [47] Игорь Шевченко ©   (30.07.08 14:55)

    Надо НЕ использовать Access, тогда заработает RETURNING. 8-)
  • Игорь Шевченко © (30.07.08 15:15) [49]
    Sergey13 ©   (30.07.08 15:10) [48]

    > Надо НЕ использовать Access, тогда заработает RETURNING


    Абсолютно верно - Oracle XE наше все :) К тому же там есть средство миграции из Access-а, если мне память не изменяет
  • Ega23 © (30.07.08 15:27) [50]

    > Oracle XE наше все :)


    Ацтой Оракл, ini-файлы рулят.
  • Игорь Шевченко © (30.07.08 15:40) [51]
    Ega23 ©   (30.07.08 15:27) [50]

    "Старайтесь избегать «оффтопиков». Добавляя свое сообщение, убедитесь, что оно соответствует обсуждаемой теме"
    http://www.delphimaster.ru/forums.shtml#rule
  • Нат (31.07.08 03:15) [52]
    MsGuns

    > cm.CommandText := 'Insert ...   '+' Select @@indentity';

    А как тебе удалось загнать обе команды в один запрос?
    И на какой версии Акцесса?
  • Ega23 © (31.07.08 10:40) [53]

    > А как тебе удалось загнать обе команды в один запрос?


    А в чём проблема?


    ADODataSet1.CommandText := 'Set NoCount ON;
    Insert into xxx (aName) Values ('
    111');
    Insert into xxx (aName) Values ('
    222');
    Insert into xxx (aName) Values ('
    333');
    Insert into xxx (aName) Values ('
    444');
    Insert into xxx (aName) Values ('
    555');
    Insert into xxx (aName) Values ('
    666');
    Set NoCount OFF;

    Select * from xxx'
    ;

    ADODataSet1.Open;

  • Anatoly Podgoretsky © (31.07.08 11:14) [54]
    > Ega23  (31.07.2008 10:40:53)  [53]

    Акцесс требует точки с запятой между частями?
  • Ega23 © (31.07.08 11:19) [55]

    > Акцесс требует точки с запятой между частями?


    Ну это не для Access, это TSQL. А точка с запятой - это уже просто тупо привычка. Многие СУБД требуют. TSQL не требует, но ставить можно.
  • Anatoly Podgoretsky © (31.07.08 13:44) [56]
    Ну вообще то тема по Акцесс.
    Ладно не знаешь, но не так это и важно. Когда будет важно, то проверка займет несколько секунд.
  • Нат (31.07.08 18:09) [57]
    В акцессе можно ставить точку с запятой после запроса, однако акцесс не терпит после  больше ничего, т.к. считает ";" завершением инструкции.
    Не прокатывает такая конструкция.

    Вобчем и без запятой тож не хочет.
    Ток по-отдельности.
  • Anatoly Podgoretsky © (01.08.08 09:43) [58]
    Ну так в Акцесс, что по отдельности, что вместе результат одинаков - это же файлсерверная БД

    По идеологии SQL как было задумано голубым гигантом и как позволяла тогда техника (телетайпы) надо было как то завершать инструкцию, что бы ее можно было выполнить, для этой цели была выбрана точка с запятой.

    При программном решение это нонсенс, если только не рассматривать это как набор независимых инструкций, но система поддержки должна поддерживать это.

    А вот конструкция, для T-SQL или подобных

    инструкция1
    ...
    инструкция N



    Это одна инструкция и естественно она выполняется как единое целое, на этом кстати основан и SQL Ejection

    Не уверен, что это было хорошей идеей.
 
Конференция "Базы" » получить Insert Id после запроса INSERT... [D7, MSAccess via Ado]
Есть новые Нет новых   [134435   +34][b:0][p:0.001]