嵌入式SQL示例
这些示例展示了如何使用低级 C API 打开和初始化数据库以进行 SQL 访问。这些 C 函数是使用 C++ McoSqlEngine 及相关类的替代方案,其用法在 C++ 示例中进行了演示。
访问
此示例演示了如何使用 mcosql_open()
和 mcosql_close()
函数打开、连接到并关闭用于 SQL 访问的数据库。
通过调用 mcosql_initialize_memory_manager()
函数注册了 SQL 引擎要使用的内存分配器,并通过调用 mcoapi_initialize()
函数初始化了 SQL 运行时。
\target\bin\api_sql_01_c_api_access
内存分配
此示例演示了如何用自定义内存分配函数 mem_alloc()
和 mem_free()
替换标准 C 运行时堆管理函数 malloc()
和 free()
。
\target\bin\api_sql_01_c_api_allocators
主节点
此示例展示了在主节点上使用 SQL API 的实现方式。
\target\bin\hasql_master
副节点
此示例展示了在副本端使用 SQL API 的实现方式。
\target\bin\hasql_replica
副节点
此示例展示了在副本端使用 SQL API 的实现方式。
\target\bin\hasql_replica
初始化
此示例演示了如何通过调用 mcosql_initialize_memory_manager()
和 mcoapi_initialize()
来初始化 SQL 会话。
\target\bin\api_sql_01_c_api_initialize
多文件操作
此示例演示了打开、连接、填充和关闭多文件数据库的过程。
除了通常为持久存储应用程序定义的四个内存设备外,还定义了两个额外的设备以增加数据库存储空间。并且所有数据库存储设备均被定义为 MCO_MEMORY_MULTIFILE
类型。另外,还请注意使用了 mco_disk_transaction_policy()
函数来设置 NO_SYNC
事务策略(以加快事务处理速度),以及调用了 mco_execute_statement()
函数来插入数据库对象。
\target\bin\api_sql_01_c_api_multifile
MURSIW
此示例演示了使用 MURSIW 事务管理器在两个数据库实例中执行插入、选择、更新和删除操作。
\target\bin\api_sql_01_c_api_mursimul
标准 ODBC
此示例演示了使用标准 ODBC 函数实现事务处理性能委员会基准 B 的一种方式。
\target\bin\tpcodbc
基本操作
此示例演示了如何使用 C 语言 API 函数对 SQL 数据库引擎执行基本的插入/更新/删除和数据检索操作。
\target\bin\api_sql_01_c_api_transactions