不同数字的nvarchar有什么区别?

What is the difference between nvarchar of different number?

不到一周前我才开始学习 SQL 我注意到在 SQL 服务器中,字符串可以是 nvarchar(5)nvarchar(20) 或任何其他类型数字。我只是想知道不同数字的 nvarchar 有什么区别?

您指的是声明性声明。

通过声明,这是一种声明的方法。 MySQL 根据上下文有不同的规则,因此值得花时间了解语法。

在SQL中,例如MySQL,有一些数据类型可以是可变长度的。

您看到的是声明性语句,其中 NVARCHAR 具有不同的长度。

<DATA TYPE> (<character length>)
 NVARCHAR(5) -- 5 unicode characters long.
 NVARCHAR(20) -- unicode length of 20 characters

如果不指定长度,这些类型的数据将是一个字符长度。这就是标准允许括号声明的原因。

语法差异示例:

DECLARE @string NVARCHAR(5);

SELECT CAST(<some_column> AS NVARCHAR(20)
FROM <some_table>

CREATE TABLE <schema_name>.<table_name>
( firstColumn NVARCHAR(20) NOT NULL
, secondColumn INT not null)

与许多语言一样,除非有防止输入溢出的约束,否则任何超过长度的字符的插入都会 TRUNCATED... 或被截断以适合该列。

数字代表内容长度。在定义为 nvarchar(5) 的列或变量中,您可以放置​​一个 5 个字符长的 unicode 字符串。在定义为 nvarchar(20) 的列或变量中,您可以放置​​ 20 个字符长的 unicode 字符串。
这些都是 sql 中非常基础的东西,我建议阅读一个很好的 sql 教程,然后带着更高级的问题来到这里。