Как определить, происходит ли сбой вызова SQL Execute () с использованием ADO в классическом ASP - PullRequest
4 голосов
/ 03 марта 2010

У меня есть следующий сокращенный классический код ASP, который выполняет вызов вставки SQL ...

cmd.CommandText = "insert into MyTable values(blah, blah, blah)"   
cmd.CommandType = adCmdText

Set rs = cmd.Execute()

Используя набор записей, который возвращает Execute (), как узнать, была ли вставка успешной или нет?

Ответы [ 2 ]

8 голосов
/ 03 марта 2010

Проверьте объект Err

cmd.CommandText = "insert into MyTable values(blah, blah, blah)"   
cmd.CommandType = adCmdText
On Error Resume Next
Set rs = cmd.Execute()
If Err.number<>0 or  objConnection.Errors.Count <> 0 Then
   'Do something to handle the error
End If
On Error Goto 0

Также посмотрите на эту ссылку на 15 секунд

3 голосов
/ 04 марта 2010

Если вы не хотите проверять наличие ошибок, вы можете:

cmd.CommandText = "insert into MyTable values(blah, blah, blah) SELECT @@Rowcount"
cmd.CommandType = adCmdText

Set rs = cmd.Execute()
RecordsAffected = rs(0)

В том же waw, если у вас есть столбец идентификаторов, вы можете получить полученный идентификатор, используя

cmd.CommandText = "insert into MyTable values(blah, blah, blah) SELECT @@Identity"
cmd.CommandType = adCmdText

Set rs = cmd.Execute()
NewID = rs(0)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...