Я опубликовал вопрос 4 месяца назад в Сохранение старых данных в одном столбце и обновление новых данных в другом столбце в той же таблице .
Теперь я снова работаю над кодами, и вот моя проблема. После того, как я нажал кнопку «Обновить» на веб-странице, old (previous) LastName не сохранялся в столбце Alias . Фактически, new LastName сохраняется в столбцах LastName (для нового LastName) и Alias (предположительно для предыдущего LastName). Мне нужно, чтобы old LastName был сохранен в столбце Alias . Пожалуйста, просмотрите ниже и посмотрите, что я сделал не так. Заранее спасибо!
Хранимая процедура
ALTER PROCEDURE [dbo].[KeepAliasName]
@PeopleID int,
@LastName varchar(25)
AS BEGIN
UPDATE People
SET Alias = LastName,
LastName = @LastName
WHERE CAST(PeopleID AS Varchar(25)) = @PeopleID
END
Коды, которые вызывают хранимую процедуру
Dim oCmd1
Dim ln
Dim retCount
Set oCmd1 = Server.CreateObject("ADODB.Connection")
Set oCmd1 = Server.CreateObject("ADODB.Command")
''' EXECUTE THE COMMAND TO CREATE THE RECORDSET
With oCmd1
.ActiveConnection = Connect
.Commandtext = "KeepAliasName"
.CommandType = adoCmd1StoredProc
.Parameters.Append .CreateParameter("@PeopleID", adInteger, adParamInput, 25)
.Parameters("@PeopleID") = pID 'some Employee you get from your code
.Parameters.Append .CreateParameter("@LastName", adVarChar, adParamInput, 25)
.Parameters("@LastName") = lastnameVal 'some Employee's name you get from your code
.Execute ln, , adExecuteNoRecords
End With
Set oCmd1 = Nothing