Prepared Statement Object
Prepared Statement Object
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
Destructor: sqlite3_finalize()
- sqlite3_bind_blob
- sqlite3_bind_blob64
- sqlite3_bind_double
- sqlite3_bind_int
- sqlite3_bind_int64
- sqlite3_bind_null
- sqlite3_bind_parameter_count
- sqlite3_bind_parameter_index
- sqlite3_bind_parameter_name
- sqlite3_bind_pointer
- sqlite3_bind_text
- sqlite3_bind_text16
- sqlite3_bind_text64
- sqlite3_bind_value
- sqlite3_bind_zeroblob
- sqlite3_bind_zeroblob64
- sqlite3_clear_bindings
- sqlite3_column_blob
- sqlite3_column_bytes
- sqlite3_column_bytes16
- sqlite3_column_count
- sqlite3_column_database_name
- sqlite3_column_database_name16
- sqlite3_column_decltype
- sqlite3_column_decltype16
- sqlite3_column_double
- sqlite3_column_int
- sqlite3_column_int64
- sqlite3_column_name
- sqlite3_column_name16
- sqlite3_column_origin_name
- sqlite3_column_origin_name16
- sqlite3_column_table_name
- sqlite3_column_table_name16
- sqlite3_column_text
- sqlite3_column_text16
- sqlite3_column_type
- sqlite3_column_value
- sqlite3_data_count
- sqlite3_db_handle
- sqlite3_expanded_sql
- sqlite3_reset
- sqlite3_sql
- sqlite3_step
- sqlite3_stmt_busy
- sqlite3_stmt_readonly
- sqlite3_stmt_scanstatus
- sqlite3_stmt_scanstatus_reset
- sqlite3_stmt_status