Reputation: 61
I'm unable to locate the error here:
CREATE PROCEDURE sp_update_sync @sync_no varchar(50), @status INT
AS
BEGIN
UPDATE dbo.table_sync
SET sync_end_time = GETDATE()
SET sync_status = @status
WHERE sync_no = @sync_no
END
I had a similar script which worked:
CREATE PROCEDURE sp_write_watermark @Last_ROW_NO_SYNC INT, @TableName
varchar(50)
AS
BEGIN
UPDATE dbo.watermarktable
SET WatermarkValue = @Last_ROW_NO_SYNC
WHERE TableName = @TableName
END
The syntax is just the same, but still the one above shows an error!
The SQL Server is setup on azure.
Upvotes: 0
Views: 7226
Reputation: 4647
The first Stored Procedure that you've written in the question had two SET clauses which is not correct...
CREATE PROCEDURE sp_update_sync @sync_no
varchar(50), @status INT
AS
BEGIN
UPDATE dbo.table_sync
SET sync_end_time = GETDATE(),
sync_status = @status
WHERE sync_no = @sync_no
END
Hope this helps!
Upvotes: 1
Reputation: 33867
You only need the set key word a single time, e.g.
CREATE PROCEDURE sp_update_sync @sync_no varchar(50), @status INT
AS
BEGIN
UPDATE dbo.table_sync
SET sync_end_time = GETDATE(),
Sync_status = @status
WHERE sync_no = @sync_no
END
Upvotes: 3
Reputation: 4477
You added SET clause more than once
CREATE PROCEDURE sp_update_sync @sync_no varchar(50), @status INT
AS
BEGIN
UPDATE dbo.table_sync
SET sync_end_time = GETDATE()
,sync_status = @status
WHERE sync_no = @sync_no
END
Upvotes: 3