summaryrefslogtreecommitdiffstats
path: root/db.go
diff options
context:
space:
mode:
Diffstat (limited to 'db.go')
-rw-r--r--db.go42
1 files changed, 35 insertions, 7 deletions
diff --git a/db.go b/db.go
index 44b6011..8ded5ec 100644
--- a/db.go
+++ b/db.go
@@ -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)