powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / SQL Insert
14 сообщений из 14, страница 1 из 1
SQL Insert
    #32691142
DЭN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
strSQL = "INSERT INTO ceh (cehn) VALUES ('" & ggg.Text & "')"
Zapusk.cmdADO.CommandText = strSQL
Zapusk.cmdADO.Execute

Как мне при добавлении записи сразу запомнить номер поля COD счетчика в таблице?
...
Рейтинг: 0 / 0
SQL Insert
    #32691168
Bolik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А зачем? А база какая? Вообще в MsSQL была такая переменная @@IDENTITY.
А еще можно извращаться как я:
Код: plaintext
1.
SELECT Max(Cod) FROM Ceh
...
Рейтинг: 0 / 0
SQL Insert
    #32691179
DЭN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
база SQL 7.0
ну нада мне запомнить код
а в визуале бэйсик есть такая переменная @@IDENTITY ???
в фоксе такая переменная есть при работе с SQL ето я знаю
...
Рейтинг: 0 / 0
SQL Insert
    #32691188
Bolik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если я правильно понимаю, то код надо запомнить для последующей вставки в связанную таблицу? Тогда может на сервере написать ХП, а ей передавать только данные для вставки?
Если же код надо запомнить для того чтобы вывести просто на экран, тогда и SELECT Max(...) подойдет...
...
Рейтинг: 0 / 0
SQL Insert
    #32691210
DЭN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
мне ну жно запомнить код для последующей вставки данных с таким же кодом в другую в связанную таблицу
но нужно предусмотреть чтобы в процессе запоминания кода не появилась другая запись которая бы не запомнилась созданная другим пользователем
так как мне ето лучше сделать?
...
Рейтинг: 0 / 0
SQL Insert
    #32691211
Bolik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тогда пиши на сервере ХП. Заодно и нагрузку с клиента снимешь.
...
Рейтинг: 0 / 0
SQL Insert
    #32691240
DЭN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
че такое ХП ????
...
Рейтинг: 0 / 0
SQL Insert
    #32691306
Bolik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ХП = Хранимая Процедура = Stored Procedure
...
Рейтинг: 0 / 0
SQL Insert
    #32691330
DЭN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
как ее вызвать из бэйсика ету процедуру?
...
Рейтинг: 0 / 0
SQL Insert
    #32691508
Alexey Kudinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BolikА зачем? А база какая? Вообще в MsSQL была такая переменная @@IDENTITY.
А еще можно извращаться как я:
Код: plaintext
1.
SELECT Max(Cod) FROM Ceh

1 HOWTO: Retrieving Calculated Fields from SQL Server 7.0

2 Использование max для возврата значения столбца с признаком Identity только что добавленной строки - не самый лучший подход. Лучше используйте для MSSQLServer 7.0
Код: plaintext
 SELECT @@IDENTITY 
для MSSQLServer 2000
Код: plaintext
 SELECT @@SCOPE_IDENTITY
...
Рейтинг: 0 / 0
SQL Insert
    #32691754
DЭN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и где ее прописать??? етот SELECT @@IDENTITY
см выше.
...
Рейтинг: 0 / 0
SQL Insert
    #32691807
Alexey Kudinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DЭNи где ее прописать??? етот SELECT @@IDENTITY
см выше.@@IDENTITY - это переменная SQLServera. Следовательно, чтобы получить ее значение необходимо обратиться к нему
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
    Dim rst As ADODB.Recordset
    strSQL = "INSERT INTO ceh (cehn) VALUES ('" & ggg.Text & "')"
    cmdADO.CommandText = strSQL
    cmdADO.Execute
    strSQL = "SELECT @@IDENTITY"
    cmdADO.CommandText = strSQL
    Set rst = cmdADO.Execute
    rst.MoveFirst
    intIdentity = rst.Fields( 0 ).Value
для понимания добавление строки и получение Identity разбито на 2 запроса
...
Рейтинг: 0 / 0
SQL Insert
    #32691867
Фотография Magnus23
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexey Kudinov BolikА зачем? А база какая? Вообще в MsSQL была такая переменная @@IDENTITY.
А еще можно извращаться как я:
Код: plaintext
1.
SELECT Max(Cod) FROM Ceh

1 HOWTO: Retrieving Calculated Fields from SQL Server 7.0

2 Использование max для возврата значения столбца с признаком Identity только что добавленной строки - не самый лучший подход. Лучше используйте для MSSQLServer 7.0
Код: plaintext
 SELECT @@IDENTITY 
для MSSQLServer 2000
Код: plaintext
 SELECT @@SCOPE_IDENTITY


@@IDENTITY И SCOPE_IDENTITY() немного разные вещи. в 2к тоже есть @@IDENTITY, но он не ограничен областью видимости как SCOPE_IDENTITY(), поэтому нужно использовать последний.

И все-таки нужно делать хранимку.

Код: plaintext
1.
2.
3.
4.
5.
CREATE PROCEDURE MyInsert @param varchar( 50 )
AS
Begin
	INSERT INTO ceh (cehn) VALUES (@param)
	select @Outparam = Scope_identity()
End
...
Рейтинг: 0 / 0
SQL Insert
    #32691892
Alexey Kudinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Magnus23
@@IDENTITY И SCOPE_IDENTITY() немного разные вещи. в 2к тоже есть @@IDENTITY, но он не ограничен областью видимости как SCOPE_IDENTITY(), поэтому нужно использовать последний.

И все-таки нужно делать хранимку.

Код: plaintext
1.
2.
3.
4.
5.
CREATE PROCEDURE MyInsert @param varchar( 50 )
AS
Begin
	INSERT INTO ceh (cehn) VALUES (@param)
	select @Outparam = Scope_identity()
End


У DЭN - MSSQLServer 7.0
DЭN база SQL 7.0
ну нада мне запомнить код
а в визуале бэйсик есть такая переменная @@IDENTITY ???
в фоксе такая переменная есть при работе с SQL ето я знаю
но насчет ХП согласен:)
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / SQL Insert
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]