gpt4 book ai didi

sql-server - 两个微笑的太阳等于一个微笑的太阳吗?

转载 作者:行者123 更新时间:2023-12-02 22:58:16 24 4
gpt4 key购买 nike

SQL Server 如何判断两个标识符是否匹配?无论我以什么顺序排列以下语句,SQL Server 都会愉快地创建第一个语句,然后拒绝创建任何其他语句,并声称它们已经存在。

create database [🌞]
go
create database [🌞🌞]
go
create database [ 🌞 🌞 ]
go
create database [🐱🐱🐱]
go
create database [🐱🐱]
go
create database [🐱]
go
create database [🌞🐱]
go

最佳答案

How does SQL Server decide if two identifiers match?

数据库名称使用 Server Collation 进行比较。在数据库内部,使用数据库排序规则比较表和其他对象名称的标识符。

The server collation is specified during SQL Server installation. Default server-level collation is SQL_Latin1_General_CP1_CI_AS.

对于任意两个字符,排序规则确定哪一个更大,或者它们是否被视为相等。 🌞 > 🐱、🌞 < 🐱 或 🌞 = 🐱 也是如此吗?

select 'match'
where N' 🌞 🌞 ' = N'🐱🐱🐱' collate SQL_Latin1_General_CP1_CI_AS

匹配,但是

select 'match'
where N' 🌞 🌞 ' = N'🐱🐱🐱' collate Latin1_General_Bin

没有。

关于sql-server - 两个微笑的太阳等于一个微笑的太阳吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56156761/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com