从C#的MS Access SQL查询LIKE [英] MS Access SQL LIKE query from C#

查看:156
本文介绍了从C#的MS Access SQL查询LIKE的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我已经使用这个查询微软的Access和IM C#和OLE DB命令。它适用于微软的Access,但是当我从C#中使用OLEDB传递查询,什么都没有发生。反正这里是我的代码:



SQL查询

  SELECT * FROM tblIssue WHERE ID LIKE'* 2 *'和dateChecque LIKE'**'AND + 
issueTo LIKE'**'AND byTheName LIKE'**'AND LIKE BANKNAME'**'AND accountNo LIKE'**'+
和checqueNo LIKE'**'AND LIKE'**'金额,是LIKE'**'AND whoDeleted LIKE'**'+
和whyDeleted LIKE'**'AND dateCreated会LIKE'**' ;



C#代码



 
{
的DataTable newDt =新的DataTable();
OleDbDataAdapter的newSda =新OleDbDataAdapter的(sqlquery的,康恩);
newSda.Fill(newDt);

如果(newDt.Rows.Count大于0)
{
dataGridView1.DataSource = newDt.DefaultView;
_hasData = TRUE;
}
,否则
{
_hasData = FALSE;
}
}
赶上(例外错误)
{
MessageBox.Show(error.ToString()); conn.Close();
}


解决方案

在Microsoft内进行查询访问应用程序本身通常使用 * 作为 LIKE 运营商。从外部应用程序Access数据库OleDb连接应使用 _ 通配符代替。 (后者实际上是在其他SQL方言中比较常用的通配符。)


I have this query for Ms Access and im using C# and Ole DB commands. It works on Ms Access but when I'm passing the query from C# using OleDB, nothing happened. Anyway here's my code:

SQL query

SELECT * FROM tblIssue WHERE  id LIKE '*2*' AND dateChecque LIKE '**'AND +
issueTo LIKE '**' AND byTheName LIKE '**' AND bankName LIKE '**' AND accountNo LIKE '**' +
AND checqueNo LIKE '**' AND amount LIKE '**' AND being LIKE '**'   AND whoDeleted LIKE '**' +
AND whyDeleted LIKE '**' AND dateCreated LIKE '**';

C# code

try
{
    DataTable newDt = new DataTable();
    OleDbDataAdapter newSda = new OleDbDataAdapter(sqlQuery , conn);
    newSda.Fill(newDt);

    if (newDt.Rows.Count > 0)
    {
        dataGridView1.DataSource = newDt.DefaultView;
        _hasData = true;
    }
    else
    {
        _hasData = false;
    }
}
catch (Exception error)
{
    MessageBox.Show(error.ToString()); conn.Close();
}

解决方案

Queries performed from within the Microsoft Access application itself normally use * and ? as wildcard characters for the LIKE operator. OleDb connections to an Access database from an external application should use the % and _ wildcard characters instead. (The latter are actually the more commonly-used wildcard characters in other SQL dialects.)

这篇关于从C#的MS Access SQL查询LIKE的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆