该声明:
SELECT [ToWhom] FROM [myChecks] WHERE [ToWhom] like '*e*'
Run Code Online (Sandbox Code Playgroud)
在Access中工作得很好但是当我从C#运行它时,我回来并清空数据集.这是代码:
string connectionstring = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=Checkbook.accdb";
OleDbConnection Conn = new OleDbConnection();
Conn.ConnectionString = connectionstring;
OleDbCommand myCommand = Conn.CreateCommand();
OleDbDataAdapter myDataAdapter = new OleDbDataAdapter();
DataSet myDataset = new DataSet();
DataTable EmptyDataTable = new DataTable();
myCommand.CommandText = SQL;
myDataAdapter.SelectCommand = myCommand;
Conn.Open();
try
{
//This part does not throw an error it just return an empty Dataset
myDataAdapter.Fill(myDataset);
Conn.Close();
return myDataset.Tables[0];
}
catch(SyntaxErrorException e)
{
MessageBox.Show(e.Message, "Database Error", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
Conn.Close();
return EmptyDataTable;
}
Run Code Online (Sandbox Code Playgroud)
任何帮助,将不胜感激.
在具有上述连接的C#中,使用百分比(%)作为通配符,而不是星号(*)
SELECT [ToWhom] FROM [myChecks] WHERE [ToWhom] like '%e%'
Run Code Online (Sandbox Code Playgroud)
在MS Access内部,在未设置ANSI 92选项的查询设计窗口中(即通常的设置),通配符为星号(*),Access之外通常为百分比(%).
| 归档时间: |
|
| 查看次数: |
483 次 |
| 最近记录: |