数据库隐式类型转换
正确的语句:    
select  *     
from tabla     
where  convert(varchar(7),myDate,120)= '2012-04';
报错的语句:    
select  *     
from tabla     
where  convert(varchar(7),myDate,120)= 2012-04;                    
(0 行受影响)     
消息 245,级别 16,状态 1,第 5 行     
Conversion failed when converting the varchar value '2012-03' to data type int.
数据库隐式转换:    
convert(varchar(7),myDate,120)= 2012-04;    
数据库试图把:  convert(varchar(7),myDate,120)出来的varchar结果转成int结果然后 进行  convert(varchar(7),myDate,120)= 2012-04这个是否相等的对比.     
结果是 convert(varchar(7),myDate,120)出来的结果是:'2012-03' 无法转成int.报错.如果convert(varchar(7),myDate,120)出来的结果是:'2012'像这样可以转成int.则不会报错.
 
                    
                
 
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号

