环境:sql 2016;
语句 select * from a where pid=joid
上述查询语句中的where pid=joid条件中pid的字段类型为varchar(50)而joid的字段类型为uniqueidentifier,该写法在升级之前的(sql2012)库上没有问题,但在新库(sql2016)中会报错(conversion failed when converting from a character string to uniqueidentifier)。只需对字段(uniqueidentifier)做个类型转换即可(pid=cast(a.joid as varchar(36))),但由于pid字段中存储的数据带“{}”所以需将上述条件改为where substring(pid, 2, len(pid)-2) = cast(joid as varchar(36))
如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复
SQL Server免费版的安装以及使用SQL Server Management Studio(SSMS)连接数据库的图文方法
SQL Server 2017 Developer的下载、安装、配置及SSMS的下载安装配置(图文教程详解)
网友评论