C#SQLite参数化选择使用LIKE
我正在尝试做一个SQL查询,如
SELECT * FROM [TABLE] WHERE hostname LIKE '%myhostname%';
这在纯SQL中工作正常,但是当我在C#中使用System.Data.SQLite时,它只适用于文字,而不是参数,例如
string sel = "SELECT * FROM [TABLE] WHERE hostname LIKE '%@host%'"; ... command.Parameters.AddWithValue("@host", "myhostname");
这不会返回任何结果。
你不能这样做。 参数必须是完整的值 – 它不仅仅是SQL的字符串替换。 你可以这样做:
string sel = "SELECT * FROM [TABLE] WHERE hostname LIKE @host"; ... command.Parameters.AddWithValue("@host", "%myhostname%");
最简单的方法是使用’||’
使用 :
const string qry = "SELECT SiteNum FROM WorkTable WHERE WTName LIKE @wtName || '%' ";
代替:
const string qry = "SELECT SiteNum FROM WorkTable WHERE WTName LIKE @wtName%";
我已经在这里回答了
上述就是C#学习教程:C#SQLite参数化选择使用LIKE分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/cdevelopment/1003498.html