我正在编写一个简单的桌面应用程序,其中使用本地 SQL 数据库 (SQL Server CE)。这是有问题的部分:
SqlCeConnection conn = new SqlCeConnection("Data Source=|DataDirectory|\\App_Data\\Rosters.sdf");
System.Data.SqlServerCe.SqlCeCommand cmd = new SqlCeCommand();
cmd.Connection = conn;
cmd.CommandText = String.Format("Insert into Teams (LeagueID, TeamName, Color) values ({0},'{1}','{2}');SELECT @@IDENTITY;", leagueID, txtTeamName.Text.Replace("'", "''"), txtColor.Text.Replace("'", "''"));
conn.Open();
int teamID = (int)cmd.ExecuteScalar();
conn.Close();
问题是我调用时遇到异常cmd.ExecuteScalar
.
异常消息显示,
{“解析查询时出错。[ 令牌行号 =
1、令牌行偏移 = 97、错误令牌 = SELECT ]"}
我通过直接查询在完全相同的数据库中运行了完全相同的命令,并且运行良好 - 这让我认为问题不在于 SQL Server CE。
任何帮助将不胜感激。
SQL Server Compact 仅支持每个命令一条语句,因此首先使用executenonquery 运行插入语句,然后使用executescalar 获取标识,并记住不要关闭之间的连接
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)