转换日期时间,当我有这个疑问,以填补在多数民众赞成给我这个错误信息表日期:从字符串转换日期时间时SQL服务器转换失败从字符串
转换失败。
下面是我的表声明和查询。我做错了什么,我该如何解决它?
CREATE TABLE #inv
(
Rep_LName NVARCHAR(50)
, Rep_FName NVARCHAR(50)
, Rep_ID NVARCHAR(50)
, Rep_Email NVARCHAR(100)
, Rep_Status NVARCHAR(50)
, Rep_BU NVARCHAR(50)
, Sales_Force NVARCHAR(50)
, Territory NVARCHAR(50)
, Sample_Eligibility NVARCHAR(50)
, DM_Name NVARCHAR(100)
, Phys_Inv_Date DATETIME
, Last_Reconciled DATETIME
, Inv_Type NVARCHAR(50)
, Days_Since_Last_inv INT
)
我试图填补Phys_Inv_Date
场光标里面,像这样:
OPEN Inventory_info
FETCH NEXT FROM Inventory_info INTO @rep_ID, @call_date
WHILE (@@fetch_status = 0) BEGIN
SELECT
@ls_Sql = 'update #inv set Phys_Inv_Date = case when inventory_type = ''physical'' then '
+ @call_date
+ ' else b.inv_date end from #inv a INNER JOIN (select top 1 call_date, rep_id from inv_header where call_date < '
+ @call_date + ' and rep_id = ''' + @rep_id
+ ''') b ON a.rep_id = b.rep_id WHERE Phys_Inv_Date IS NULL'
EXEC (@ls_Sql)
FETCH NEXT FROM Inventory_info INTO @rep_ID, @call_date
END
CLOSE Inventory_info
DEALLOCATE Inventory_info
什么是“字符串”您要转换为一个约会?换句话说,@call_date的价值是什么? – 2013-05-09 19:48:11
你为什么在这里使用动态SQL?看起来您可以使用带参数的常规SQL,那么您不必担心格式化“datetime”值。 – Pondlife 2013-05-09 19:58:24