您的位置:首页 > 数据库

SQL Server 和嵌入式 SQL (转贴)

2008-06-09 17:50 197 查看
嵌入式 SQL (ESQL) 是用于 SQL 数据库访问的SQL-92 标准应用程序接口 (API)。ESQL 的编译需要分两步进行:预编译器将嵌入式 SQL语句翻译成编写该应用程序所使用的编程语言中的命令。生成的语句专供提供预编译器的数据库使用,因此,虽然原始源程序与ESQL同类,但生成的语句和最后的可执行文件专门用于某个数据库供应商。

然后,用应用程序编程语言的编译器编译由预编译器生成的源程序。
与 OLE DB 这类 COM API 或 ODBC 这类调用级接口相比,嵌入式 SQL的语法更简单,因此更易于学习和编程。但嵌入式 SQL 不如 OLE DB 或ODBC 灵活,在用 OLE DB 或 ODBC精心编写的应用程序中,只需切换驱动程序或提供程序,即可从一个 DBMS切换到另一个。在编译应用程序(例如开发按需查询工具时)时不识别 SQL语句的环境中,更适合使用 OLE DB 和 ODBC。Microsoft SQL Server&S482; 2000 提供用于 C 应用程序的嵌入式SQL 预编译器。这个 SQL Server 预编译器将嵌入式 SQL语句翻译成对适当DB-Library API 函数的调用。Microsoft 实现的 ESQL 与 DB-Library应用程序有相同的限制。SQL Server 旨在支持用与 Microsoft SQL Server 兼容的第三方嵌入式SQL 预编译器编译的 COBOL 嵌入式 SQL 应用程序。虽然在 Microsoft SQL Server 2000 中仍然支持用于 C 语言的嵌入式SQL API,但在 SQL Server 以后的版本中,不再包含在使用此 API的应用程序上进行编程工作所需要的文件。在 SQL Server的下一版本中,仍然支持使用用于 C 语言的嵌入式 SQL编写的现有应用程序的连接,但在以后的版本中也将不再提供这种支持。编写新的应用程序时,请不要使用用于C 语言的嵌入式 SQL。修改现有应用程序时,强烈建议删除依赖用于 C语言的嵌入式 SQL 的内容。可以使用 Microsoft ActiveX Data Objects(ADO)、OLE DB 或 ODBC 来代替用于 C 语言的嵌入式 SQL,对 SQL Server中的数据进行访问。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: