C# C中Finisar.SQLite的SQLite Alter表出现语法错误#
我想通过C代码创建列 我尝试过以下代码:C# C中Finisar.SQLite的SQLite Alter表出现语法错误#,c#,sqlite,C#,Sqlite,我想通过C代码创建列 我尝试过以下代码: string query = "Alter Table CompanyMaster ADD COLUMN CompanyType TEXT"; DbConnection.ExecuteNonQuery(query); DbConnection.ExecuteNonQuery类代码为: // Class variables declared elsewhere... private static SQLiteConnection sqlConnectio
string query = "Alter Table CompanyMaster ADD COLUMN CompanyType TEXT";
DbConnection.ExecuteNonQuery(query);
DbConnection.ExecuteNonQuery
类代码为:
// Class variables declared elsewhere...
private static SQLiteConnection sqlConnection;
private static SQLiteCommand sqlCmd;
private static SQLiteDataAdapter sqlAdt;
Public static int ExecuteNonQuery(string query)
{
try
{
if (sqlConnection.State == ConnectionState.Closed)
sqlConnection.Open();
sqlCmd = sqlConnection.CreateCommand();
sqlCmd.CommandText = query;
Thread.Sleep(5);
return sqlCmd.ExecuteNonQuery();
}
catch (Exception)
{
throw;
// return 0;
}
finally
{
...
}
}
我犯了抛接球错误
Finisar.SQLite.SQLiteException:“靠近”Alter:“语法错误”
altertable
命令看起来不错。你没有分享的地方出了问题。一件奇怪的事情是,当我有意提交错误时,我得到的是相同的文本大小写,但在查询赋值中显示大写的ALTER
,但显示的错误是小写的。您是否检查了query
变量以确保它包含相同的SQL语句?另外,只显示相关代码非常有用,但是裁剪代码的方式很笨拙。至少通过包含带有参数的DbConnection.ExecuteNonQuery
声明等来显示完整的上下文。亲爱的C Perkins,感谢您重播我,我添加了两个屏幕,请检查并给我一些解决方案。旁注:不要让您的连接像那样打开。而且,您创建的帮助器类对您没有帮助。在查询需要时,类似乎不能传递参数。避免这样做。还有,别再打那个催眠电话了。@ConnectInfotech老实说,屏幕截图没用。您已经给出了大部分代码和错误,因此代码图片和错误图片没有添加任何有用的内容。它唯一的帮助是显示ExecuteNonQuery()
函数的声明,但其目的是编辑现有代码以使其更具可读性。照片常常占据太多的空间,分散注意力。(我分享此详细信息是为了帮助您改进未来的帖子。如果您以最佳方式设置问题的格式,您将获得更多的投票,并且更愿意提供帮助。)Finisar.SQLite查看SourceForge,上一次更新是在2005年。那是你正在使用的版本吗?ALTERTABLE语句看起来很好,因此我将尝试另一个.NETSQLite实现。