diff options
Diffstat (limited to 'db.go')
-rw-r--r-- | db.go | 42 |
1 files changed, 35 insertions, 7 deletions
@@ -1,35 +1,63 @@ package main import ( + mysql "github.com/Philio/GoMySQL" "os" + "log" ) -func queryInt(sql string, params ...interface{}) (int, os.Error) { +var db *mysql.Client + +func initDb() { + log.SetFlags(log.Ltime | log.Lshortfile) + + var err os.Error + db, err = mysql.DialTCP("173.228.31.111", "audio", "audio", "audio") + if err != nil { + log.Panicln(err) + } + db.Reconnect = true +} + +func prepare(sql string, params ...interface{}) (*mysql.Statement, os.Error) { query, err := db.Prepare(sql) if err != nil { - return 0, err + log.Println(err) + return nil, err } err = query.BindParams(params...) if err != nil { - return 0, err + log.Println(err) + return nil, err } err = query.Execute() if err != nil { + log.Println(err) + return nil, err + } + return query, err +} + +func queryInt(sql string, params ...interface{}) (int, os.Error) { + query, err := prepare(sql, params...) + if err != nil { return 0, err } var result int query.BindResult(&result) eof, err := query.Fetch() if err != nil { - return 0, err + log.Println(err) + return result, err } else if eof { - return 0, os.EOF + return result, os.EOF } err = query.FreeResult() if err != nil { - return 0, err + log.Println(err) + return result, err } - return result, nil + return result, err } // given an id ('abcd1234'), return the pid (1) |