我有问题。在我的前端UI用户输入的时间类似于 12:21 ,当我在SQL服务器数据库中更新它显示为 12:21:23 时间存储在 DATETIME_PARAM COLUMN我应该添加转换还是其他任何进程来限制值?
代码
UPDATE A SET
A.SYNCOPERATION = 'U',
A.VERSION = A.VERSION + 1,
A.SYNCVERSION = DBO.GetCountryDate(),
A.PAR_VALUE3 = CASE @VALUE WHEN '' THEN NULL ELSE @VALUE END,
A.DATETIME_PARAM = CASE @JITTIME WHEN '' THEN NULL ELSE @JITTIME END
答案 0 :(得分:0)
您可以尝试这样:
CONVERT(VARCHAR(5),DateCol, 108)
即,您可以使用CONVERT函数来限制数据库本身的HH:MM格式的时间。(假设您在日期时间列中不需要第二个部分)
修改强>
在你的情况下,你可以把它像
A.DATETIME_PARAM = CASE @JITTIME WHEN '' THEN NULL ELSE CONVERT(VARCHAR(5),@JITTIME, 108) END
答案 1 :(得分:0)
试试这个
....
A.PAR_VALUE3 = NULLIF(@VALUE, ''),
A.DATETIME_PARAM = LEFT(NULLIF(@JITTIME, ''), 5)
不要忘记在该更新上放置WHERE子句