sql 服务器 2008 R2 中制表符和空格之间的解析有什么区别
What is the difference when parsing between Tab and Spaces in sql server 2008 R2
我遇到过以下情况
Declare @var int = ' 123'
select @var
Declare @var1 int = ' 123'
select @var1
对于第一种情况,我在值前面使用了 spaces 并在执行它时 returns 值为 123
在第二种情况下,我在值前面使用了制表符而不是 space,并且在执行时抛出转换错误
谁能告诉我这两种情况有什么区别..
即使你输入了相同数量的 spaces(使用 spaces 然后使用 Tab),它们的字符代码是不同的,这就是 space 和 TAB 在 SQL 服务器中被单独对待。
有关字符代码和字符编码的更多信息可以在以下 2 个链接中找到:-
https://www.computerhope.com/jargon/c/charcode.htm
https://www.pcmag.com/encyclopedia/term/51983/standards-character-codes
此外,如果您从数学和逻辑上思考:- 在整数之前有 spaces 没有意义。这就像数字前有零。
例如:-'123'(5 spaces 然后 123)就像 00000123。
space 在整数
之前被修剪的另一个原因
我遇到过以下情况
Declare @var int = ' 123'
select @var
Declare @var1 int = ' 123'
select @var1
对于第一种情况,我在值前面使用了 spaces 并在执行它时 returns 值为 123
在第二种情况下,我在值前面使用了制表符而不是 space,并且在执行时抛出转换错误
谁能告诉我这两种情况有什么区别..
即使你输入了相同数量的 spaces(使用 spaces 然后使用 Tab),它们的字符代码是不同的,这就是 space 和 TAB 在 SQL 服务器中被单独对待。
有关字符代码和字符编码的更多信息可以在以下 2 个链接中找到:-
https://www.computerhope.com/jargon/c/charcode.htm https://www.pcmag.com/encyclopedia/term/51983/standards-character-codes
此外,如果您从数学和逻辑上思考:- 在整数之前有 spaces 没有意义。这就像数字前有零。 例如:-'123'(5 spaces 然后 123)就像 00000123。 space 在整数
之前被修剪的另一个原因