Creé una secuencia de comandos SQL para agregar una entrada en una base de datos diferente. Sin embargo, cuando ejecuto el script a través de SQL Server Management Studio.Error: "Debe declararse la variable escalar" para las instrucciones de inserción en la base de datos múltiple
declare @address varchar(50)
set @address = 'Hope'
use DB1
go
insert into Address
values (@address)
go
use DB2
go
insert into Address
values (@address)
go
me dieron el siguiente error:
Must declare the scalar variable '@address'
En este punto, estoy totalmente confundido porque yo he declarado la variable @address
antes de ejecutar la instrucción insert
. ¿Es porque estoy atravesando diferentes bases de datos?
Por el momento, acabo de poner el valor real en la declaración insert
solo por el bien de completar la tarea, aunque me pregunté qué causó el error.
Ah, de acuerdo. El alcance del lote finaliza mediante la instrucción 'go'. ¡Ahora sé! Es un error sutil: S. – OnesimusUnbound