我正在使用sql-server 2012
,我有这个查询
create table t
(
id int not null,
name varchar(10)
);
select OBJECT_NAME(object_id) as table_name,type,name as table_name,type_dec
from sys.indexes
where object_id=OBJECT_ID(N'dbo.t',N'U')
object_id and OBJECT_ID
中的差异是什么
写作N''
查询返回相同的结果:有或没有N
答案 0 :(得分:0)
N
中的N'xxx'
表示"国家语言",表示unicode字符串。
如果您使用它将数据存储到VARCHAR
而不是NVARCHAR
列,则几乎没有用。
您可以在" Unicode字符串"下阅读更多相关内容。本页的小标题:Constants (Transact-SQL)。
答案 1 :(得分:0)
在SQL Server中,前缀N'
用于指定nvarchar
类型,代表国家字符。
来自doc:
使用字母N前缀Unicode字符串常量。无 N前缀,该字符串被转换为默认代码页 数据库。此默认代码页可能无法识别某些字符。
在另一个世界,它是一个unicode角色。
答案 2 :(得分:0)
第一季度:Object_id和OBJECT_ID相同。
第二季度已在[此处] [1]
回答