错误开始转换到SQL Server Compact Edition

时间:2016-01-18 06:45:33

标签: sql sql-server sql-server-ce sql-server-ce-4

我想使用以下代码在SQL Server CE 4.0中开始一个事务,并且还回滚该事务。

相同的查询在SQL Server 2008中工作正常但在SQL Server CE 4.0中没有,所以请帮我解决这个问题:

BEGIN TRAN d

SELECT COUNT(*) 
FROM Customers 
WHERE DOB = CONVERT(datetime, '16/01/2003',103)

UPDATE Customers 
SET dob = NULL
WHERE DOB = CONVERT(datetime, '16/01/2003', 103)

SELECT COUNT(*) 
FROM Customers 
WHERE DOB = CONVERT(datetime, '16/01/2003', 103)

ROLLBACK tran d;
--COMMIT tran d;

但我收到此错误

  

错误代码:80040E14
  解析查询时出错。[令牌行号= 1,令牌行偏移= 1,令牌错误=开始]
  次要错误:25501
  来源:SQL Server Compact ADO.NET数据提供者
  Num.Par。 :1
  民。帕。 :1
  呃。帕。 :开始

出了什么问题?任何帮助将不胜感激!

请建议如何在SQL Server CE 4.0中使用开始和回滚事务。

我还检查了SQL Server CE rollback tranSQL Server CE begin tran。但是在c#中使用该方法,所以我不了解如何在SQL Server CE查询中使用它。

谢谢。

而且我的问题也不重复,因为我没有用C#编写代码而且我使用SQL查询来完成这项任务。

谢谢

1 个答案:

答案 0 :(得分:0)

在google等上进行了大量的冲浪。我得到的答案是,在SQL Server CE中你不能声明变量。

如果要在SQL Server CE中开始,回滚或提交事务并编写SQL查询,那么在SQL Server CE中是不可能的。

但是您可以使用以下msdn教程使用其他方式执行此操作: -

谢谢。