[size=medium][color=blue]1:测试SQLite
在SQLite的官方网站上有关测试SQLite的方法中谈到动态分析。
动态分析:当程序处于运行期或者还处于生命期时进行内部和外部检查。动态分析在管理代码时可以提高SQLite的代码质量(性能)。
》Assert:用于SQLite编译。编译时要定义SQLITE_DEBUG预处理宏。
》在大多数系统中Assert的使用会降低数据库引擎的运行时间。
Valgrind工具:一款基于模拟Linux下的程序调试器和剖析器的软件套件,可运行于x86, amd64和ppc32架构上。valgrind包含一个核心,它提供一个虚拟的CPU运行程序,还有一系列工具,它们完成调试,剖析和一些类似的任务。valgringd是高度模块化的。开发人员或者用户可以给它添加新的工具而不会损坏已有的结构。可以检测读取了未初始化的内存,栈溢出,内存泄漏等等。
2:C/C++中SQLite的接口
核心对象和接口(执行的接口顺序)
sqlite3_open():打开数据库连接。
sqlite3_prepare():SQLite允许一条prepared_statement处理多次,执行流程为:sqlite3_reset()——sqlite3_bind() .
sqlite3_step()
sqlite3_column()
sqltie3_finalize():被用来删除prepared_statement。
slqite3_close()
实际上以上6个接口并不是都必须有。[/color][/size]
在SQLite的官方网站上有关测试SQLite的方法中谈到动态分析。
动态分析:当程序处于运行期或者还处于生命期时进行内部和外部检查。动态分析在管理代码时可以提高SQLite的代码质量(性能)。
》Assert:用于SQLite编译。编译时要定义SQLITE_DEBUG预处理宏。
》在大多数系统中Assert的使用会降低数据库引擎的运行时间。
Valgrind工具:一款基于模拟Linux下的程序调试器和剖析器的软件套件,可运行于x86, amd64和ppc32架构上。valgrind包含一个核心,它提供一个虚拟的CPU运行程序,还有一系列工具,它们完成调试,剖析和一些类似的任务。valgringd是高度模块化的。开发人员或者用户可以给它添加新的工具而不会损坏已有的结构。可以检测读取了未初始化的内存,栈溢出,内存泄漏等等。
2:C/C++中SQLite的接口
核心对象和接口(执行的接口顺序)
sqlite3_open():打开数据库连接。
sqlite3_prepare():SQLite允许一条prepared_statement处理多次,执行流程为:sqlite3_reset()——sqlite3_bind() .
sqlite3_step()
sqlite3_column()
sqltie3_finalize():被用来删除prepared_statement。
slqite3_close()
实际上以上6个接口并不是都必须有。[/color][/size]