环境VS2005, .NET Compact Framework,SQL Server 2005
用的C#开发移动设备上的数据库
数据库文件类型是*.sdf,由于是数据库开发新手,有个问题现在向大家请教:SqlCeCommand cmd;
OpenConnection();
cmd.CommandText = strSql;
try
{
     dataCmd.ExecuteNonQuery();
}
catch (System.Exception e)
{
     throw new Exception(e.Message);
}
CloseConnection();这里面的SqlCeCommand字符串strSql是否可以由两条语句组成,比如:
strSql = "INSERT ...  SELECT ...";
我执行程序会抛出异常,提示
[token line number =1, token line offset =.. token in erro = SELECT ]
我检查了两条sql语句没错,它们之间用空格或者;号分开都试过了,请问大家这是什么问
题,理论上sql server中两条sql语句肯定可以一起执行,难道移动设备上的不支持,Sql
CeCommand不支持两条sql语句?

解决方案 »

  1.   

    不好意思,差点忘了自己发这个帖子了、
    前段时间自己看MSDN,下面是SqlCeCommand类的属性SqlCeCommandText的一段文字:The Data Provider for SQL Server Mobile also does not support batch queries. C
    ommands must follow the following form: SELECT * FROM Customers and not SELECT
     * FROM Customers; SELECT * FROM Orders. If you are using code generated for S
    ystem.Data.SqlClient, you may have to modify your queries to conform to this r
    estriction.因此,SqlCeCommand是不支持batch queries的。结贴。