日期:2014-05-19  浏览次数:20438 次

.net数据库查询匹配问题.高手进来帮忙.
例如数据库有表:
id       ...       keyword
1                 {3}{2}..
2                     {1}
3                   {3}{5}{6}

现在要读出这张数据表中一些数据.查询keyword   这字段,这字段中存的的是:
{3}{2}   这样的数,现在输入查询 3   或2   (只要符合keyword中的其中一个就行)
   就把   对应的行列出来.  
例如:   输入3   ,则把 ID 为 1,3这两行符合的列出,
   输入2,把        ID   为 1,那一行列出.



------解决方案--------------------
select * from table where keyword like '% "+inStr+ "% '
------解决方案--------------------
用like,例如

string sql = "select * from table where keyword like '%2% ' ";

取出keyword里包含2的数据
------解决方案--------------------
string sql = "select * from table where keyword like '%{ "+ inStr + "}% ' ";
------解决方案--------------------
楼上严谨
------解决方案--------------------
之前要:inStr=inStr.Replace( " ' ", " ' ' ");

从SQL语法要求、系统安全要求出发,都应该如此写。