加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net – SQL查询无法按预期工作

发布时间:2020-12-16 03:53:49 所属栏目:asp.Net 来源:网络整理
导读:我在SQL Server中使用标准的ASP.NET Membership表结构,并在Management studio中进行了一些手动查询并运行此查询 SELECT *FROM [aspnet_Users]WHERE UserId = '2ac5dd56-2630-406a-9fb8-d4445bc781dacID=49' 注意最后的 cID = 49 – 我从查询字符串中复制了这
我在SQL Server中使用标准的ASP.NET Membership表结构,并在Management studio中进行了一些手动查询并运行此查询

SELECT *
FROM [aspnet_Users]
WHERE UserId = '2ac5dd56-2630-406a-9fb8-d4445bc781da&cID=49'

注意最后的& cID = 49 – 我从查询字符串中复制了这个并忘了删除该部分.

但是,令我惊讶的是它正确地返回了数据(有一个ID为2ac5dd56-2630-406a-9fb8-d4445bc781da的用户) – 任何想法为什么这样做?在我看来它不应该匹配或者更可能抛出一个错误,因为它不能转换为Guid?

解决方法

uniqueidentifier类型被认为是用于从字符表达式转换的字符类型,因此受到用于转换为字符类型的截断规则的约束.也就是说,当字符表达式转换为不同大小的字符数据类型时,对于新数据类型而言太长的值将被截断.

由于uniqueidentifier类型限制为36个字符,因此超出该长度的字符将被截断.

请注意,以上引用自MSDN

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读