C# 如何使用c在sqlite中使用通配符列出表中的项?
如何使用通配符从表中获取元素 我已经编写了类似的代码。 这里写的是什么?我把这个放进循环里安全吗C# 如何使用c在sqlite中使用通配符列出表中的项?,c#,sqlite,wildcard,sql-like,C#,Sqlite,Wildcard,Sql Like,如何使用通配符从表中获取元素 我已经编写了类似的代码。 这里写的是什么?我把这个放进循环里安全吗 private void Pokaz() { String sql = "SELECT [element] FROM [table] LIKE @Word"; SQLiteConnection connection = new SQLiteConnection(@"Data Source=C:\Temp2\dictionary.s3db");
private void Pokaz()
{
String sql = "SELECT [element] FROM [table] LIKE @Word";
SQLiteConnection connection = new SQLiteConnection(@"Data Source=C:\Temp2\dictionary.s3db");
connection.Open();
SQLiteCommand cmd = new SQLiteCommand(connection);
cmd.CommandText = sql;
cmd.Parameters.AddWithValue("@Word", "%" + "dog" + "%");
DataTable dt = new DataTable();
SQLiteDataReader reader = cmd.ExecuteReader();
dt.Load(reader);
reader.Close();
connection.Close();
dataGridView1.DataSource = dt;
}
我改为字符串sql=从[table]中选择[element],其中[element]类似于\'@Word\';
但现在我得到的结果是空的
我也试过这种方法。固定和工作。还是上面没有
List<string> list = new List<string>();
string connectionString = @"Data Source=C:\Temp2\dictionary.s3db";
string sql = "SELECT [element] FROM [table] where [element] LIKE \'%dog%\' ";
using (var connection = new SQLiteConnection(connectionString))
{
using (var command = new SQLiteCommand(sql, connection))
{
connection.Open();
SQLiteDataReader rd = command.ExecuteReader();
while (rd.Read())
{
list.Add(rd[0].ToString());
}
}
}
你试过了吗
String insSQL = "SELECT [element] FROM [table] like @Word"; //% search with prefix and postfix
SQLiteCommand cmd = new SQLiteCommand(insSQL);
cmd.Parameters.AddWithValue("@Word", "%" + "dog" + "%");
?