在 sql 插入查询中将 datetime 转换为 smalldatetime
Convert datetime to smalldatetime in sql insert query
我有一个这样的 INSERT 查询
INSERT INTO tna_temp_attendance VALUES('" + strEmpCode + "', CONVERT(SMALLDATETIME, '" + dtDateTime.ToString() + "'), 0, " + _inOutMode.ToString() + ", null, 0, 'CHO-', '" + strMachine + "')
当我执行这个查询时发生了这个错误
“将 varchar 数据类型转换为 datetime 数据类型导致值超出范围”
求助
我的数据库有这个table“tna_temp_attendance”
它的列是
- Emp_id char(6)
- Wdate smalldatetime
- Is_read位
- Machine_Status位
- Process_Status位
- Is_Error位
- Loc_no char(4)
- ip varchar(16)
编辑
我也是这样过日子的
CONVERT(SMALLDATETIME, '" + Convert.ToDateTime(dtDateTime.ToString("yyyy-MM-dd hh:mm:ss") ) + "')
但它也不起作用
尝试使用 ISO 格式将日期插入 SQL 服务器,如下所示:
dtDateTime.ToString("yyyyMMdd")
我终于做到了。
我声明了一个字符串。
- string dt = DateTime.Now.ToString();
然后将其转换为日期时间
DateTime ndt = Convert.ToDateTime(dt);
然后我用了
CONVERT(SMALLDATETIME, CONVERT(DATETIME, '" + ndt + "'))
它奏效了。谢谢大家
我有一个这样的 INSERT 查询
INSERT INTO tna_temp_attendance VALUES('" + strEmpCode + "', CONVERT(SMALLDATETIME, '" + dtDateTime.ToString() + "'), 0, " + _inOutMode.ToString() + ", null, 0, 'CHO-', '" + strMachine + "')
当我执行这个查询时发生了这个错误 “将 varchar 数据类型转换为 datetime 数据类型导致值超出范围”
求助
我的数据库有这个table“tna_temp_attendance” 它的列是
- Emp_id char(6)
- Wdate smalldatetime
- Is_read位
- Machine_Status位
- Process_Status位
- Is_Error位
- Loc_no char(4)
- ip varchar(16)
编辑
我也是这样过日子的
CONVERT(SMALLDATETIME, '" + Convert.ToDateTime(dtDateTime.ToString("yyyy-MM-dd hh:mm:ss") ) + "')
但它也不起作用
尝试使用 ISO 格式将日期插入 SQL 服务器,如下所示:
dtDateTime.ToString("yyyyMMdd")
我终于做到了。 我声明了一个字符串。
- string dt = DateTime.Now.ToString();
然后将其转换为日期时间
DateTime ndt = Convert.ToDateTime(dt);
然后我用了
CONVERT(SMALLDATETIME, CONVERT(DATETIME, '" + ndt + "'))
它奏效了。谢谢大家