SQL SELECT INSERTed данные из таблицы - PullRequest
0 голосов
/ 17 июня 2010

в ASP Classic. БД MS-Access.

я делаю: INSERT INTO Orders (userId) VALUES (123)"

я хочу получить orderNumber из этой строки. это номер автоинкремента.

так я и сделал: SELECT orderNumber FROM Orders WHERE userId=123

но поскольку он находится на той же странице, SELECT возвращает: Либо BOF, либо EOF имеет значение True, либо текущая запись была удалена. Запрошенная операция требует текущей записи.

Я видел где-то RETURNING orderNumber as variable, но это было для оракула, и я не знаю, как внедрить его в мой Asp: (

set addOrder = Server.CreateObject("ADODB.Command")
        addOrder.ActiveConnection = MM_KerenDB_STRING
        addOrder.CommandText = "INSERT INTO Orders (userId) VALUES ("&userId&")"
        addOrder.CommandType = 1
        addOrder.CommandTimeout = 0
        addOrder.Prepared = true
        addOrder.Execute()

Dim getOrderNumber
Set getOrderNumber = Server.CreateObject("ADODB.Recordset")
        getOrderNumber.ActiveConnection = MM_KerenDB_STRING
        getOrderNumber.Source = "SELECT orderNumber FROM Orders WHERE userId=" & userId
        getOrderNumber.CursorType = 0
        getOrderNumber.CursorLocation = 2
        getOrderNumber.LockType = 1
        getOrderNumber.Open()

                    session("orderNumber") = getOrderNumber.Fields.Item("orderNumber").value

1 Ответ

1 голос
/ 17 июня 2010

Следующее может быть полезно, если вы используете их метод добавления записей с использованием объектов ADO.

http://support.microsoft.com/kb/221931

Но, фактически, не увидев классического ASP-кода, трудно дать правильный ответ.

...