sqlserver datetime主键数据不能删除为什么

sqlserver数据库,数据结构如下
 COLUMN_NAME DATA_TYPE DATA_LENGTH DATA_PRECISION DATA_SCALE NULLABLE DATA_DEFAULT IDENTITY
 ------------ --------- ----------- -------------- ---------- -------- ------------ --------
 USERID int NO  
 CHECKTIME datetime NO (getdate())  
 CHECKTYPE varchar 1 YES ('I')  
 VERIFYCODE int YES (0)  
 SENSORID varchar 5 YES  
 WorkCode int YES (0)  
有条数据是这样的
 USERID CHECKTIME CHECKTYPE VERIFYCODE SENSORID WorkCode  
 --------- ------------------ ------------ ------------- ----------- ----------- 
 292 2011-3-1 上午8:27:31 I 1 1 0  

sql语句是这样:DELETE FROM CHECKINOUT WHERE userid=292 and checktime='2011-3-1 8:27:31'
为什么不能删除这条数据?每次执行都会显示
 Command was executed successfully

大侠们救命啊

作者: baodanerliu   发布时间: 2011-06-10

把checktime转换为日期格式看看

作者: lh_fengyuzhe   发布时间: 2011-06-10

DELETE FROM CHECKINOUT WHERE userid=292 and checktime=to_date('2011-3-1 8:27:31','yyyy-mm-dd hh24:mi:ss')

作者: lh_fengyuzhe   发布时间: 2011-06-10

TO_DATE 不能再sqlserver中用,只能在oracle中用

作者: baodanerliu   发布时间: 2011-06-10

我看主要是你的这句话checktime='2011-3-1 8:27:31'和数据库里的checktime的值不对应当然闪不到了但是执行是成功的就是影响的数据行数是0而已,你数据库的数据是checktime='2011-3-1 上午8:27:31'你可以按照子试一下。

作者: comaple   发布时间: 2011-06-10