Ada*_*amC 16 c# sqlite system.data.sqlite
我正在尝试做一个SQL查询,如
SELECT * FROM [TABLE] WHERE hostname LIKE '%myhostname%';
Run Code Online (Sandbox Code Playgroud)
这在纯SQL中工作正常,但是当我在C#中使用System.Data.SQLite时,它只适用于文字,而不是参数,例如
string sel = "SELECT * FROM [TABLE] WHERE hostname LIKE '%@host%'";
...
command.Parameters.AddWithValue("@host", "myhostname");
Run Code Online (Sandbox Code Playgroud)
这不会返回任何结果.
Mar*_*ers 27
你不能这样做.参数必须是完整的值 - 它不仅仅是SQL中的字符串替换.你可以这样做:
string sel = "SELECT * FROM [TABLE] WHERE hostname LIKE @host";
...
command.Parameters.AddWithValue("@host", "%myhostname%");
Run Code Online (Sandbox Code Playgroud)
最简单的方法是使用'||'
使用 :
const string qry = "SELECT SiteNum FROM WorkTable WHERE WTName LIKE @wtName || '%' ";
Run Code Online (Sandbox Code Playgroud)
代替:
const string qry = "SELECT SiteNum FROM WorkTable WHERE WTName LIKE @wtName%";
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
14422 次 |
| 最近记录: |