gpt4 book ai didi

c# - 在postgresql中的select语句中传递参数

转载 作者:行者123 更新时间:2023-11-29 12:37:11 25 4
gpt4 key购买 nike

我试图在 postgresql 中为下面的 select 语句传递参数,但它没有返回任何行,

cmd.Parameters.AddWithValue("@name", richTextBox_searchEmp.Text);                
string sql = "select * from tbl_emp_Info where LOWER(firstname) like LOWER('@name%');";

richTextBox_searchEmp.Text 是“第一个”也试过了-

cmd.Parameters.AddWithValue("@name", NpgsqlDbType.Char , searchEmp.Text);

同时,下面的无参数查询总是返回正确的结果。

 string sql = "select * from tbl_emp_Info where LOWER(firstname) like LOWER('first%');";

请帮忙!!!

完整代码-

            conn.Open();
cmd.Parameters.AddWithValue("@name", NpgsqlDbType.Char , richTextBox_searchEmp.Text);

string sql = "select * from tbl_emp_Info where LOWER(firstname) like LOWER('@name%');";

NpgsqlDataAdapter da = new NpgsqlDataAdapter(sql, conn);

cmd.Connection = conn;
cmd.CommandText = sql;
cmd.ExecuteNonQuery();

ds.Reset();
da.Fill(ds);
dt = ds.Tables[0];
dataGridView.DataSource = dt;

最佳答案

用 % like 传递你的参数

将您的查询更改为

string sql = "select * from tbl_emp_Info where LOWER(firstname) like LOWER(@name);";

然后像这样传递@name

cmd.Parameters.AddWithValue("@name", "%" + searchEmp.Text + "%"); 

关于c# - 在postgresql中的select语句中传递参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29352633/

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