我设计了一个访问查询,如下所示:
SELECT Replace(names,'lion','kiss') AS Expr1
FROM table1;
这两个值是lion and kiss,它们是临时的,现在我希望它们是两个变量,这样我就可以从 C# 向它传递值。
如何从 C# 调用此查询并向其传递两个值。
我用的是access 2007。
感谢您的帮助 :)
尝试这样的事情(我发现this就此主题而言):
public void ReplaceColumnA(string oldvalue, string newvalue)
{
using(OleDbConnection connection1 = (OleDbConnection)DatabaseConnection.Instance.GetConnection())
{
connection1.Open();
using(OleDbCommand sqlcmd2 = new OleDbCommand("queryname", connection1))
{
sqlcmd2.Parameters.AddWithValue("param1", newvalue);
sqlcmd2.Parameters.AddWithValue("param2", oldvalue);
sqlcmd2.ExecuteNonQuery();
}
}
}
Access 查询将如下所示:
UPDATE [t]
SET [a] = ?
WHERE [a] = ?
您传递的参数名称并不重要,重要的是您传递它们的顺序。
通过使用“using”语句,您可以确保.NET 正确释放连接和资源。
此外,我强烈建议切换到 SQL Server Express Edition。它是免费的,而且比您在 Access 中制作的内容更有效。真的,继续在 Access 中你只是搬起石头砸自己的脚……
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)