我正在尝试理解我的Uni项目的代码。
由于我不熟悉使用存储过程,您能帮我解决一下吗?
SET @SQL = @SQL + CHAR(13) + 'DELETE fROM table_name WHERE [Date] ='''+ CONVERT(varchar, @DATE, 120) + ''';'
我不清楚这里是否使用单引号。
由于
答案 0 :(得分:2)
''
是单引号的转义序列。那么添加到@SQL
字符串的内容最终会如下所示:
DELETE FROM table_name WHERE [Date] = 'SomeDateHere';
我必须查找120的日期格式。可以在SQL Server中隐式转换某些格式的日期。例如,这是有效的:
DELETE FROM table_name WHERE [Date] = '2015-04-09';
答案 1 :(得分:0)
就像提示一样,字符串的转换可能会因区域设置而异。使用字符串作为日期时,如果使用没有短划线的格式YYYYMMDD,则无论区域设置如何,它似乎都可以正确转换。我总是使用那种格式。让生活更简单。要包括您使用的时间,例如:
'20150409 09:44:00.000'
这可以减少月份和日间混合的风险等。)