X-Git-Url: http://git.pjr.cc/?p=goDBhammer.git;a=blobdiff_plain;f=src%2Fdbibridge.go;h=fe26e60f695873b090b1bce2064f0a839a0a73be;hp=64b7d1b8f1b6b85f9bec3950b7c55254a804f3c1;hb=ff6679f750e301016b3e070d7d6ffa41048004b8;hpb=ea18014aa62ab7de47d63b4d123d52230eb96c53 diff --git a/src/dbibridge.go b/src/dbibridge.go index 64b7d1b..fe26e60 100644 --- a/src/dbibridge.go +++ b/src/dbibridge.go @@ -6,10 +6,11 @@ import "C" import ( "unsafe"; + "fmt"; ) type DBIConnection struct { - dbconn C.dbi_conn; + dbconn unsafe.Pointer; dbinit bool; } @@ -29,23 +30,26 @@ func DBIConnect(thisDBConn *DBIConnection, dbtype string, host string, username { C.dbi_initialize(nil); - thisDBConn.dbconn = C.dbi_conn_new(C.CString(dbtype)); + thisDBConn.dbconn = (unsafe.Pointer)(C.dbi_conn_new(C.CString(dbtype))); - C.dbi_conn_set_option((unsafe.Pointer)(thisDBConn.dbconn), C.CString("host"), C.CString(host)); - C.dbi_conn_set_option((unsafe.Pointer)(thisDBConn.dbconn), C.CString("username"), C.CString(username)); - C.dbi_conn_set_option((unsafe.Pointer)(thisDBConn.dbconn), C.CString("password"), C.CString(password)); - C.dbi_conn_set_option((unsafe.Pointer)(thisDBConn.dbconn), C.CString("dbname"), C.CString(database)); - C.dbi_conn_connect((unsafe.Pointer)(thisDBConn.dbconn)); + C.dbi_conn_set_option(thisDBConn.dbconn, C.CString("host"), C.CString(host)); + C.dbi_conn_set_option(thisDBConn.dbconn, C.CString("username"), C.CString(username)); + C.dbi_conn_set_option(thisDBConn.dbconn, C.CString("password"), C.CString(password)); + C.dbi_conn_set_option(thisDBConn.dbconn, C.CString("dbname"), C.CString(database)); + C.dbi_conn_connect(thisDBConn.dbconn); thisDBConn.dbinit = true; } func ExecSQL(thisDBConn *DBIConnection, SQL string) { - C.dbi_conn_query((unsafe.Pointer)(thisDBConn.dbconn), C.CString(SQL)); + fmt.Printf("%s;\n", SQL); + res := C.dbi_conn_query(thisDBConn.dbconn, C.CString(SQL)); + + C.dbi_result_free((unsafe.Pointer)(res)); } func DBIDisconnect(thisDBConn *DBIConnection) { - C.dbi_conn_close((unsafe.Pointer)(thisDBConn.dbconn)); + C.dbi_conn_close(thisDBConn.dbconn); } \ No newline at end of file