c# 如何查找ACCESS数据库中某一列中的所有数据并判断每个数据是否包含在某一个特定参数内 到数组中去
时间: 2024-09-18 21:04:10 浏览: 46
C#逐行分元素读取记事本数据并写入数据库的方法
在C#中,要查询Access数据库的一列并将结果与特定参数进行匹配,你可以使用ADO.NET库,特别是` OleDbConnection`, `OleDbCommand`, 和 `OleDbDataReader`。假设你想从名为"YourTable"的表中查询"YourColumn"列,并检查其是否包含在名为"searchValue"的数组内的某个元素,可以按照以下步骤操作:
```csharp
using System;
using System.Data.OleDb;
// 定义搜索值数组
string[] searchValues = { "value1", "value2", "value3" };
// 创建数据库连接字符串
string connectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=yourDatabase.accdb;Mode=Read;";
// 创建命令实例
OleDbCommand command = new OleDbCommand("SELECT * FROM YourTable WHERE YourColumn LIKE '%" + string.Join("%' OR YourColumn LIKE '%", searchValues) + "%'", connection);
// 建立数据库连接
using (OleDbConnection connection = new OleDbConnection(connectionString))
{
try
{
// 打开连接并执行查询
connection.Open();
OleDbDataReader reader = command.ExecuteReader();
while (reader.Read())
{
string data = reader.GetString(reader.GetOrdinal("YourColumn"));
if (Array.IndexOf(searchValues, data) >= 0)
{
Console.WriteLine($"Data '{data}' found in the array.");
}
}
reader.Close();
}
catch (Exception ex)
{
Console.WriteLine($"Error: {ex.Message}");
}
}
// 关闭连接
connection.Close();
```
在这个例子中,我们使用`LIKE`关键字配合通配符 `%` 来模糊匹配包含在数组中的值。如果`YourColumn`中有任何一个值存在于`searchValues`中,程序会打印出相应的行。
阅读全文