使用 UltraLite,可以使用 ExecuteStatement 方法(PreparedStatement 类的一个成员)执行 SQL 数据操作。
请参见UltraLite_PreparedStatement 类。
UltraLite 使用 ? 字符表示查询参数。对于任何 INSERT、UPDATE 或 DELETE 语句,每个 ? 都是根据其在预准备语句中的顺序位置引用的。例如,第一个 ? 引用为参数 1,第二个引用为参数 2。
声明 PreparedStatement。
PreparedStatement * prepStmt; |
将一条 SQL 语句指派给 PreparedStatement 对象。
prepStmt = conn->PrepareStatement( UL_TEXT("INSERT INTO MyTable(MyColumn) values (?)") ); |
为该语句指派输入参数值。
以下代码显示一个字符串参数。
prepStmt->SetParameter( 1, UL_TEXT("newValue") ); |
执行预准备语句。
返回值表示受该语句影响的行数。
ul_s_long rowsInserted; rowsInserted = prepStmt->ExecuteStatement(); |
提交更改。
conn->Commit(); |
声明 PreparedStatement。
PreparedStatement * prepStmt; |
将一条 SQL 语句指派给 PreparedStatement 对象。
ULValue sqltext( ); prepStmt = conn->PrepareStatement( UL_TEXT("DELETE FROM MyTable WHERE MyColumn = ?") ); |
为该语句指派输入参数值。
prepStmt->SetParameter( 1, UL_TEXT("deleteValue") ); |
执行该语句。
ul_s_long rowsDeleted; rowsDeleted = prepStmt->ExecuteStatement(); |
提交更改。
conn->Commit(); |
声明 PreparedStatement。
PreparedStatement * prepStmt; |
将一条语句指派给 PreparedStatement 对象。
prepStmt = conn->PrepareStatement( UL_TEXT("UPDATE MyTable SET MyColumn1 = ? WHERE MyColumn1 = ?") ); |
为该语句指派输入参数值。
prepStmt->SetParameter( 1, UL_TEXT("newValue") ); prepStmt->SetParameter( 2, UL_TEXT("oldValue") ); |
执行该语句。
ul_s_long rowsUpdated; rowsUpdated = prepStmt->ExecuteStatement(); |
提交更改。
conn->Commit(); |
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |