语句多次执行¶
示例如下,省略数据库连接操作:
//相同的insert语句,一次prepare,多次执行
func prepareStatementManyInsert(db * sql.DB){
var err error
var stmt * sql.Stmt
var result sql.Result
var val2 string = "hello"
var insertSQL string = "insert into testcase1(col1, col2) values(:1, :2)"
//准备查询语句
stmt, err = db.Prepare(insertSQL)
getError(err)
defer stmt.Close()
for i := 0; i < 3; i++ {
result, err = stmt.Exec(i, val2)
getError(err)
//获取执行影响行数
rowsAffected, err := result.RowsAffected()
getError(err)
fmt.Println(rowsAffected)
}
}