返回:SQLite—系列文章目录
上一篇:SQLiteC/C++接口详细介绍之sqlite3类(十八)
下一篇:SQLiteC/C++接口详细介绍sqlite3_stmt类(一)
预准备语句对象
typedef struct sqlite3_stmt sqlite3_stmt;
此对象的实例表示单个SQL语句,该语句已编译为二进制形式,并准备进行评估。
将每个SQL语句视为一个单独的计算机程序。这原始SQL文本是源代码。预准备语句对象是已编译的目标代码。所有SQL都必须转换为准备好语句,然后才能运行。
预准备语句对象的生命周期通常如下所示:
使用sqlite3_prepare_v2()创建预准备语句对象。
使用sqlite3_bind_*()将值绑定到参数接口。
通过调用sqlite3_step()一次或多次来运行SQL。
使用sqlite3_reset()重置预准备语句,然后返回到步骤2。这样做零次或多次。
使用sqlite3_finalize()销毁对象。
使用此对象的构造函数:
sqlite3_prepare sqlite3_prepare16 sqlite3_prepare16_v2
sqlite3_prepare16_v3 sqlite3_prepare_v2 sqlite3_prepare_v3
使用此对象的析构函数:sqlite3_finalize()
使用此对象的方法有一下各个:
1、sqlite3_bind_blob 2、sqlite3_bind_blob64 3、sqlite3_bind_double
4、sqlite3_bind_int 5、sqlite3_bind_int64 6、sqlite3_bind_null
7、sqlite3_bind_parameter_count 8、sqlite3_bind_parameter_index
9、sqlite3_bind_parameter_name 10、sqlite3_bind_pointer
11、sqlite3_bind_text 12、sqlite3_bind_text16 13、sqlite3_bind_text64
14、sqlite3_bind_value 15、sqlite3_bind_zeroblob 16、sqlite3_bind_zeroblob64
17、sqlite3_clear_bindings 18、sqlite3_column_blob 19、sqlite3_column_bytes
20、sqlite3_column_bytes16 21、sqlite3_column_count 22、sqlite3_column_database_name
23、sqlite3_column_database_name16 24、sqlite3_column_decltype
25、sqlite3_column_decltype16 26、sqlite3_column_double 27、sqlite3_column_int 28、sqlite3_column_int64 29、sqlite3_column_name 30、sqlite3_column_name16
31、sqlite3_column_origin_name 32、sqlite3_column_origin_name16
33、sqlite3_column_table_name 34、sqlite3_column_table_name16
35、sqlite3_column_text 36、sqlite3_column_text16 37、sqlite3_column_type
38、sqlite3_column_value 39、sqlite3_data_count 40、sqlite3_db_handle
41、sqlite3_expanded_sql 42、sqlite3_normalized_sql 43、sqlite3_reset
44、sqlite3_sql 45、sqlite3_step 46、sqlite3_stmt_busy
47、sqlite3_stmt_explain 48、sqlite3_stmt_isexplain 49、sqlite3_stmt_readonly
50、sqlite3_stmt_scanstatus 51、sqlite3_stmt_scanstatus_reset
52、sqlite3_stmt_scanstatus_v2 53、sqlite3_stmt_status
另请参阅对象、常量和函数的列表。
下面章节将按相关函数进行展开说明。