0

我公司的一位开发人员开发了一个 C# 项目,其中包含在以下 DBMS 上执行 SQL 查询的类:

  • 使用以下连接之一 访问(扩展名为“.mdb”的 DB 文件) :
    • ODBC连接。
    • 一个OLE DB连接
  • 使用以下连接之一 访问(扩展名为“.accdb”的 DB 文件) :
    • ODBC连接。
    • OLE DB连接。
  • DB2通过使用 ODBC 连接。
  • MySQL通过使用以下连接之一:
    • ADO .Net连接。
    • ODBC连接。
    • OLE DB连接。
  • Oracle通过使用以下连接之一:
    • ADO .Net连接。
    • ODBC连接。
    • OLE DB连接。
  • PostgreSQL通过使用以下连接之一:
    • ADO .Net连接。
    • ODBC连接。
  • SQL Server通过使用以下连接之一:
    • ADO .Net连接。
    • ODBC连接。
    • OLE DB连接。

我想实现一种方法,该方法将用于调整 SQL 查询谓词中使用的字符串中的通配符。
然后将执行 SQL 查询。
当开发人员需要使用通配符时,他将使用独立于 DBMS 的已知字符。

通配符可以不同于 DBMS。例子 :

  • Access 使用的通配符是“*”。
  • SQL Server 使用的通配符是“%”。

但我想知道通配符是否也取决于用于与 DBMS 通信的连接。
ODBC 连接使用的通配符可能与 ADO .Net 连接使用的通配符不同。
我无法对上面列出的每一对 DBMS/Connection 执行测试,因为我无法使用某些 DBMS。

4

1 回答 1

0

我已经以编程方式为我的第一篇文章中列出的每一对(DBMS/数据提供者)执行了选择查询,除了这对(DB2/ODBC)。
我在选择查询的 where 语句中包含了一个谓词。
我使用了多字符通配符:%
通配符 '%' 适用于我执行测试的每一对(DBMS/数据提供程序)。

于 2012-09-27T08:11:05.810 回答