语句多次执行

示例如下,省略数据库连接操作:

//相同的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)
        }
}