T-SQL存储过程

时间:2015-04-09 02:24:51

标签: sql sql-server tsql stored-procedures

我正在尝试理解我的Uni项目的代码。

由于我不熟悉使用存储过程,您能帮我解决一下吗?

SET @SQL = @SQL + CHAR(13)   +  'DELETE fROM  table_name WHERE [Date]  ='''+ CONVERT(varchar, @DATE, 120) + ''';'

我不清楚这里是否使用单引号。

由于

2 个答案:

答案 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'

这可以减少月份和日间混合的风险等。)