![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Добавляю запись в которой одно поле "Счётчик"
Chlavik © (2004-09-21 13:34:00)Привет! (VBA) Command = CreateObject("ADODB.Command")
Command.CommandText = "INSERT INTO Фирмы (NAME) VALUES('Фирма')"
...
как получит значение счётчика (у меня это ID) последнего добавленого элемента?
Chlavik (2004-09-21 15:54:00) [1]А надо потом уничтожать RecordSet возвращённый Executom ? И закрывать тоже ?
Chlavik (2004-09-21 15:51:00) [2]я Сделал так
rs.Open "SELECT @@IDENTITY as ID"
ID = RS.Fields("ID")
RS.Close
Всё работает но правда создавал RS (рекордсет)
sniknik (2004-09-21 15:17:00) [3]> Так а где сам ID будет ???
в поле (с именем id в данном случае), поле в рекордсете, рекордсет возврашается командой execute.
> Что такое @@IDENTITY ?
а ты уверен что он у тебя есть?
там где есть, это значение сработавшего счетчика автоинкремента.
Chlavik (2004-09-21 14:31:00) [4]Так а где сам ID будет ??? Что такое @@IDENTITY ?
Johnmen (2004-09-21 14:26:00) [5]Не знаю, как там с Command, а с TADOQuery именно так. Разделить команды ;
Chlavik (2004-09-21 14:20:00) [6]Как правильно Задать строку для Execute иак правильно перадать перменную в которой будет ID я просто первый раз с этим имею дело ...
Command.CommandText = "INSERT INTO Фирмы (NAME) VALUES('Фирма')"
Command.execute
а потом
Command.CommandText = "SELECT @@IDENTITY AS id"
Command.execute
а куда запишется полученый ID ?
Johnmen (2004-09-21 14:12:00) [7]Всё вместе
INSERT INTO Фирмы (NAME) VALUES('Фирма')
SELECT @@IDENTITY AS id
sniknik (2004-09-21 14:02:00) [8]зависит от того как ты создаеш (и что пишеш в свойства) ADODB.Connection.