首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > 其他数据库 >

关于sqlite 传参,该怎么处理

2012-03-14 
关于sqlite 传参string sql SELECT .... FROM.....WHERE......IN (1,3)SQLiteParameter[] para

关于sqlite 传参
string sql = "SELECT .... FROM.....WHERE......IN ('1','3')";

  SQLiteParameter[] para = new SQLiteParameter[]
  {
  new SQLiteParameter("@GROUP_ID", GROUP_ID),
  };

('1','3') 这样的数据用SQLiteParameter 这样传参 怎么能传进去

"SELECT 。。。 FROM 。。。。WHERE 。。。。LIKE '%abc%'
'%abc%' 这样的怎么传?
 

[解决办法]
这种%abc%参数没办法传。只能想办法直接通过程序生成SQL语句。
[解决办法]
只能用字符串累加生成SQL语句再执行
[解决办法]
实际上是有办法的。
1. 对IN子句:
sql = "select * from " + _t1 + " where id in (?, ?, ?)";
cmd.Parameters.AddWithValue("", 1);
cmd.Parameters.AddWithValue("", 2);
cmd.Parameters.AddWithValue("", 3);
有几个值就使用几个问号进行绑定
2. 对like子句
sql = "select * from " + _t1 + " where col3 like @col3";
cmd.Parameters.AddWithValue("@col3", "%abc%");

这样也能进行绑定。

SQLite的adonet实现还是蛮不错的。

热点排行