package main import ( "database/sql" "log" _ "xugu_driver/xugu" ) func main() { db, err := sql.Open("xugusql", "IP=10.28.20.101;DB=SYSTEM;User=SYSDBA;PWD=SYSDBA;Port=5190;AUTO_COMMIT=on;CHAR_SET=UTF8") //_, err = db.Exec("create table go_test(c1 int, c2 varchar);") //db.Ping() if err != nil { log.Fatal(err) } // stmt, err := db.Prepare("SELECT ? FROM gotest2;") // stmt.Query("1") //查询 // row, err := db.Query("select 1 from gotest2;") // if err != nil { // fmt.Println("查询错误", err) // } // col, _ := row.Columns() // fmt.Println("row.Columns(): ", col) // fmt.Println("len(col)", len(col)) // pvals := make([]interface{}, len(col)) // for key, _ := range pvals { // dest := make([]byte, 216) // pvals[key] = &dest // } /* end for */ // for row.Next() { // row.Scan(pvals...) // for _, v := range pvals { // //fmt.Printf("pvals:%v\t \n", v) binary.LittleEndian.Uint32(col.Col_Data) // //fmt.Printf("第%d次: %s\t", k, string(*(v.(*[]byte)))) // // fmt.Printf("pvals:%v\t \n", (v.(*[]byte))) // fmt.Printf("结果 %s\t", string(*(v.(*[]byte)))) // } // fmt.Printf("\n") // } //消息类型为E r, err := db.Exec("drop table ta3;drop table ta33; ") r.RowsAffected() // db.Exec("INSERT INTO gotest VALUES('gt3');") db.Close() }