Sql server 如何从SQL server数据库检索值?
以下查询工作正常:Sql server 如何从SQL server数据库检索值?,sql-server,tsql,Sql Server,Tsql,以下查询工作正常: select ProductNumber,Name,Color,ListPrice from Production.Product where ProductNumber = 'AR-5381' 无论何时何地, 为了从SQL Server检索值,我编写了如下代码: declare @ProductNum nvarchar set @ProductNum = 'AR-5381' select ProductNumber,Name,Color,ListPrice from
select ProductNumber,Name,Color,ListPrice
from Production.Product
where ProductNumber = 'AR-5381'
无论何时何地,
为了从SQL Server检索值,我编写了如下代码:
declare @ProductNum nvarchar
set @ProductNum = 'AR-5381'
select ProductNumber,Name,Color,ListPrice
from Production.Product
where ProductNumber = @ProductNum
我无法得到这些值。但ProductNumber('AR-5381')出现在表中。
我做错了什么?变量是用默认长度1声明的
nvarchar
不指定长度意味着nvarchar(1)
所以后面的nvarchar
varaible只存储字符串中的第一个字符,因为它的长度是1
declare @ProductNum nvarchar
set @ProductNum = 'AR-5381'
SELECT @ProductNum
输出A 输出
AR 您应该指定一些长度,如
declare @ProductNum nvarchar(255)
set @ProductNum = 'AR-5381'
select ProductNumber,Name,Color,ListPrice
from Production.Product
where ProductNumber =@ProductNum
变量以默认长度1声明
nvarchar
不指定长度意味着nvarchar(1)
所以后面的nvarchar
varaible只存储字符串中的第一个字符,因为它的长度是1
declare @ProductNum nvarchar
set @ProductNum = 'AR-5381'
SELECT @ProductNum
输出A 输出
AR 您应该指定一些长度,如
declare @ProductNum nvarchar(255)
set @ProductNum = 'AR-5381'
select ProductNumber,Name,Color,ListPrice
from Production.Product
where ProductNumber =@ProductNum