Must declare the scalar variable “@değişken” hatasının çözümü

7 Eki by NURULLAH ÇAKIR

Must declare the scalar variable “@değişken” hatasının çözümü

Bu hatayı çalıştırdığımız scriptte değişken varsa ve bu değişken’i tanımlamamışsak alırız.

 

Örneğin aşağıdaki script yardımıyla denemeveri veritabanında kolonsize isminde bir tablo oluşturalım.

 

USE [denemeveri]
GO
CREATE TABLE [dbo].[kolonsize](
[veritabanı_adı] [varchar](10) NULL,
[kullanıcı_adı] [varchar](10) NULL,
) ON [PRIMARY]

 

Daha sonra bu tabloya aşağıdaki gibi bir insert yapmaya çalışalım.

 

INSERT INTO [denemeveri].[dbo].[kolonsize]
           ([veritabanı_adı]
           ,[kullanıcı_adı])
     VALUES
           (@loginname,@databasename)
GO

 

Bu şekilde insert yapmaya çalıştığımızda aşağıdaki gibi bir hata alacağız.

 

Script’imizi gerekli değişkenleri tanımlayıp set ettikten sonra aşağıdaki şekilde tekrar çalıştırdığımızda sorunun düzeldiğini göreceksiniz.

 

declare @loginname varchar(50)
declare @databasename varchar(50)
 
set @loginname =(select top 1 name from sys.sql_logins)
set @databasename = (select top 1 name from sys.databases)
 
INSERT INTO [denemeveri].[dbo].[kolonsize]
           ([veritabanı_adı]
           ,[kullanıcı_adı])
     VALUES
           (@loginname,@databasename)
GO

 

Loading

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir