Есть код
private void btnSearch_Click_1(object sender, EventArgs e)
{
string searchValue = txtSearch.Text.Trim();
if (string.IsNullOrEmpty(searchValue))
{
MessageBox.Show("Введите текст для поиска");
return;
}
SearchPlants(searchValue);
dataGridView1.Columns[1].HeaderText = "Растение";
dataGridView1.Columns[2].HeaderText = "Описание";
dataGridView1.Columns[3].HeaderText = "Род";
dataGridView1.Columns[4].HeaderText = "Семейство";
dataGridView1.Columns[5].HeaderText = "Вид";
dataGridView1.Columns[6].HeaderText = "Территория";
}
private void SearchPlants(string searchValue)
{
string searchColumn = "NamePlants";
if (label2.Text == "по растениям")
{
searchColumn = "NamePlants";
}
else if (label2.Text == "по семействам")
{
searchColumn = "FamId";
}
else if (label2.Text == "по видам")
{
searchColumn = "AppId";
}
else if (label2.Text == "по родам")
{
searchColumn = "IdGen";
}
else if (label2.Text == "по территориям")
{
searchColumn = "TerrId";
}
SQLiteCommand selectCommand = new SQLiteCommand($"SELECT Id, NamePlants, Description, IdGen, FamId, AppId, TerrId, ImageId FROM Plants WHERE LOWER({searchColumn}) LIKE '%' || LOWER(@searchValue) || '%'", DB);
selectCommand.Parameters.AddWithValue("@searchValue", searchValue.ToLower());
SQLiteDataAdapter adapter = new SQLiteDataAdapter(selectCommand);
DataTable table = new DataTable();
adapter.Fill(table);
dataGridView1.DataSource = table;
}
Но там выводит не все нужные результаты и как я понимаю LOWER не работает к значениям в столбце