Add missing check
authorSimon J Mudd <sjmudd@pobox.com>
Mon, 1 Dec 2014 23:28:05 +0000 (00:28 +0100)
committerSimon J Mudd <sjmudd@pobox.com>
Mon, 1 Dec 2014 23:28:05 +0000 (00:28 +0100)
lib/check_table_access.go [new file with mode: 0644]

diff --git a/lib/check_table_access.go b/lib/check_table_access.go
new file mode 100644 (file)
index 0000000..3e4e8c3
--- /dev/null
@@ -0,0 +1,24 @@
+package lib
+
+import (
+       "database/sql"
+       "log"
+)
+
+// check that select to a table exists.  Return an error if we get a failure.
+func CheckTableAccess(dbh *sql.DB, table_name string) error {
+       sql_select := "SELECT 1 FROM " + table_name + " LIMIT 1"
+
+       var one int
+       err := dbh.QueryRow(sql_select).Scan(&one)
+       switch {
+       case err == sql.ErrNoRows:
+               log.Println("No setting with that variable_name", one)
+       case err != nil:
+               log.Fatal(err)
+       default:
+               // we don't care if there's no error
+       }
+
+       return err
+}