我在一些insert T-SQL查询中看到了前缀N.许多人在将值插入表中之前使用了N.

我搜索了一下,但在向表中插入任何字符串之前,我无法理解包含N的目的.

INSERT INTO Personnel.Employees
VALUES(N'29730', N'Philippe', N'Horsford', 20.05, 1),

这个"N"前缀的用途是什么,应该在什么时候使用?

推荐答案

它将字符串声明为nvarchar数据类型,而不是varchar

您可能见过使用Transact-SQL传递字符串的代码

引用from Microsoft:

以字母N作为Unicode字符串常量的前缀.不带


如果您想知道这两种数据类型之间的区别,请参阅本文:

What is the difference between varchar and nvarchar?

Sql相关问答推荐

根据另一列的值添加另一列的给定值

在SQL Server中使用LEFT连接包含特定记录

如何并行SELECT和RESET?

Postgres,使用iLike运算符从json数组中搜索的工作方式与从常规表中搜索不同

Postgres:对包含数字的字符串列表进行排序

在Postgres中实现合并功能的干净方法,因为当目标/源不匹配时

如何隐藏聚合JSON数组元素的键

如何在T-SQL中编写row_number的WHERE子句?

不同计数的 Postgres PIVOT 表

根据具有特定值的 ID 创建自定义组

从输出中删除 jsonb_build_object

GRAFANA 数据库查询错误:pq:列名称不存在

SQL:考虑合并分支计算分支的增长百分比

汇总具有连续日期范围的行

带有数组输入参数的Snowflake UDF优化

为重复的项目编号显示正在处理

HIVE SQL where 子句未按预期工作

更新表 A,然后将新值插入表 B(包含更新内容的历史日志(log))

包含多行的 SQL 查询

SQL/Postgres:按日期和其他属性对相关性能进行分组