gpt4 book ai didi

c# - OleDbCommand 中的参数未更改

转载 作者:太空宇宙 更新时间:2023-11-03 13:33:46 25 4
gpt4 key购买 nike

这是一个简单的搜索页面 (search.aspx?title=Hello),我想在数据库中查询相似的匹配项。根据微软文档(http://msdn.microsoft.com/en-us/library/system.data.oledb.oledbparameter.aspx 参见:备注)这是正确的方法,但参数 (?) 永远不会设置为查询字符串的值。

        string sqlcmd = "SELECT * FROM TableName WHERE Title LIKE ?";

OleDbCommand command = new OleDbCommand(sqlcmd, sqlcon);

OleDbParameter p1 = new OleDbParameter("@p1", OleDbType.WChar);
p1.Value = Request.QueryString["title"];

OleDbDataAdapter da = new OleDbDataAdapter(command);
da.SelectCommand.Parameters.Add(p1);

DataTable dt = new DataTable();
da.Fill(dt);

参数永远不会改变查询字符串的内容,它只是执行查询

        SELECT * FROM Table WHERE Title LIKE ?

最佳答案

您可以尝试以下方法吗:

"SELECT * FROM Table WHERE Title LIKE @p1"

我认为这是在 ADO.Net 命令文本中使用参数时的约定。

关于c# - OleDbCommand 中的参数未更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19436709/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com