Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (中文) » SQL Anywhere 服务器 - 编程 » SQL Anywhere 数据访问 API » SQL Anywhere ODBC API » 创建 ODBC 应用程序

 

在 Windows Mobile 上链接 ODBC 应用程序

在 Windows Mobile 操作系统上没有 ODBC 驱动程序管理器。导入库 (dbodbc11.lib) 直接定义进入 SQL Anywhere ODBC 驱动程序 dbodbc11.dll 的入口点。此文件位于 SQL Anywhere 安装目录的 SDK\Lib\CE\Arm.50 子目录中。

由于 Windows Mobile 没有 ODBC 驱动程序管理器,因此必须在提供给 SQLDriverConnect 函数的链接字符串中以 "DRIVER= 参数" 的形式指定 SQL Anywhere ODBC 驱动程序 DLL 的位置。以下是一个示例。

szConnStrIn = "driver=ospath\\dbodbc11.dll;dbf=\\samples-dir\\demo.db"

这里,ospath 是 Windows Mobile 设备上 Windows 目录的完整路径。例如:

\\Windows
♦  链接 ODBC 应用程序 (Windows Mobile)

有关支持的 Windows Mobile 版本列表,请参见 [external link] http://www.sybase.com/detail?id=1062617 下的 "SQL Anywhere 支持的 PC 平台" 表。

示例程序 (odbc_sample.cpp) 使用一个名为 SQL Anywhere 11 Demo.dsn 的文件数据源(FileDSN 连接参数)。该文件在您将 SQL Anywhere for Windows Mobile 安装到设备上时被放置在 Windows Mobile 设备的根目录下。您可以通过 ODBC 数据源管理器在桌面系统上创建文件数据源,但是必须为桌面环境设置文件数据源,然后对其进行编辑使之符合 Windows Mobile 环境。在进行适当的编辑后,可将它们复制到 Windows Mobile 设备。

有关 samples-dir 缺省位置的信息,请参见示例目录

Windows Mobile 和 Unicode

SQL Anywhere 使用称为 UTF-8 的编码方式,这是一种多字节字符编码技术,可用于进行 Unicode 编码。

SQL Anywhere ODBC 驱动程序支持 ASCII(8 位)字符串或 Unicode 代码(宽字符)字符串。UNICODE 宏控制 ODBC 函数将使用 ASCII 还是 Unicode 字符串。如果您必须在已定义 UNICODE 宏的情况下创建应用程序,而您又要使用 ASCII ODBC 函数,则还必须定义 SQL_NOUNICODEMAP 宏。

示例文件 samples-dir\SQLAnywhere\C\odbc.c 说明了如何使用 Unicode ODBC 功能。