当执行到达时cmd.ExecuteNonQuery()必须声明标量变量,我收到错误:
OleDbCommand cmd = new OleDbCommand();
cmd.Connection = Connection;
cmd.CommandTimeout = 0;
string commandText = "update groups set subjectline ='" + txtSubjectLine.Text + "',data= @data where groupid = " + ddlGroup.SelectedItem.Value + " ";
cmd.CommandText = commandText;
cmd.CommandType = CommandType.Text;
cmd.Parameters.Add("@Data",OleDbType.VarBinary);
cmd.Parameters["@Data"].Value = binarydata;
cmd.ExecuteNonQuery();
Run Code Online (Sandbox Code Playgroud) 我为使用 SQL Server 作为其数据库的客户端编写了一个相当大的 C# Winforms 应用程序。这最初是为内部使用而设计和开发的。他们已经决定向他们的客户授权其精简版,并在内部使用完整版。
虽然缩减版本将存储的一些数据将通过调用 Web 服务发送到我们的服务器,但需要将大部分数据存储在本地。
我的大部分数据库经验都是使用安装的 SQL Server。但是,在这种情况下,理想情况下,它应该将数据存储在基于文件的本地数据库中(无需安装和配置数据库服务器)。他们的客户不太可能有技术头脑,他们只需要一个可以安装软件的 setup.exe,它就可以正常工作。
我的大部分 .NET 代码使用 Linq-to-Sql 与数据库进行通信。
在这种情况下,本地数据库的最佳选择是什么,这应该允许我仍然使用现有的 Linq 代码?