go/main.go
author viric <viriketo@gmail.com>
Mon, 03 Sep 2012 23:35:31 +0200
branchgo
changeset 7 d5750f4e6e8c
permissions -rw-r--r--
Adding a first attempt at go code
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
7
d5750f4e6e8c Adding a first attempt at go code
viric <viriketo@gmail.com>
parents:
diff changeset
     1
package main
d5750f4e6e8c Adding a first attempt at go code
viric <viriketo@gmail.com>
parents:
diff changeset
     2
d5750f4e6e8c Adding a first attempt at go code
viric <viriketo@gmail.com>
parents:
diff changeset
     3
import (
d5750f4e6e8c Adding a first attempt at go code
viric <viriketo@gmail.com>
parents:
diff changeset
     4
	"database/sql"
d5750f4e6e8c Adding a first attempt at go code
viric <viriketo@gmail.com>
parents:
diff changeset
     5
	"github.com/coopernurse/gorp"
d5750f4e6e8c Adding a first attempt at go code
viric <viriketo@gmail.com>
parents:
diff changeset
     6
	_ "github.com/mattn/go-sqlite3"
d5750f4e6e8c Adding a first attempt at go code
viric <viriketo@gmail.com>
parents:
diff changeset
     7
	"log"
d5750f4e6e8c Adding a first attempt at go code
viric <viriketo@gmail.com>
parents:
diff changeset
     8
	"os"
d5750f4e6e8c Adding a first attempt at go code
viric <viriketo@gmail.com>
parents:
diff changeset
     9
)
d5750f4e6e8c Adding a first attempt at go code
viric <viriketo@gmail.com>
parents:
diff changeset
    10
d5750f4e6e8c Adding a first attempt at go code
viric <viriketo@gmail.com>
parents:
diff changeset
    11
type Sentence struct {
d5750f4e6e8c Adding a first attempt at go code
viric <viriketo@gmail.com>
parents:
diff changeset
    12
	Id       int64
d5750f4e6e8c Adding a first attempt at go code
viric <viriketo@gmail.com>
parents:
diff changeset
    13
	Word     string
d5750f4e6e8c Adding a first attempt at go code
viric <viriketo@gmail.com>
parents:
diff changeset
    14
	Sentence string
d5750f4e6e8c Adding a first attempt at go code
viric <viriketo@gmail.com>
parents:
diff changeset
    15
}
d5750f4e6e8c Adding a first attempt at go code
viric <viriketo@gmail.com>
parents:
diff changeset
    16
d5750f4e6e8c Adding a first attempt at go code
viric <viriketo@gmail.com>
parents:
diff changeset
    17
func main() {
d5750f4e6e8c Adding a first attempt at go code
viric <viriketo@gmail.com>
parents:
diff changeset
    18
	db, err := sql.Open("sqlite3", "lingvigilo.db")
d5750f4e6e8c Adding a first attempt at go code
viric <viriketo@gmail.com>
parents:
diff changeset
    19
	if err != nil {
d5750f4e6e8c Adding a first attempt at go code
viric <viriketo@gmail.com>
parents:
diff changeset
    20
		log.Fatal("Fatal error: ", err)
d5750f4e6e8c Adding a first attempt at go code
viric <viriketo@gmail.com>
parents:
diff changeset
    21
	}
d5750f4e6e8c Adding a first attempt at go code
viric <viriketo@gmail.com>
parents:
diff changeset
    22
	defer db.Close()
d5750f4e6e8c Adding a first attempt at go code
viric <viriketo@gmail.com>
parents:
diff changeset
    23
d5750f4e6e8c Adding a first attempt at go code
viric <viriketo@gmail.com>
parents:
diff changeset
    24
	dbmap := &gorp.DbMap{Db: db, Dialect: gorp.SqliteDialect{}}
d5750f4e6e8c Adding a first attempt at go code
viric <viriketo@gmail.com>
parents:
diff changeset
    25
d5750f4e6e8c Adding a first attempt at go code
viric <viriketo@gmail.com>
parents:
diff changeset
    26
	dbmap.TraceOn("dbmap", log.New(os.Stderr, "sql", 0))
d5750f4e6e8c Adding a first attempt at go code
viric <viriketo@gmail.com>
parents:
diff changeset
    27
d5750f4e6e8c Adding a first attempt at go code
viric <viriketo@gmail.com>
parents:
diff changeset
    28
	dbmap.AddTableWithName(Sentence{}, "sentences").SetKeys(true, "Id")
d5750f4e6e8c Adding a first attempt at go code
viric <viriketo@gmail.com>
parents:
diff changeset
    29
d5750f4e6e8c Adding a first attempt at go code
viric <viriketo@gmail.com>
parents:
diff changeset
    30
	dbmap.DropTables()
d5750f4e6e8c Adding a first attempt at go code
viric <viriketo@gmail.com>
parents:
diff changeset
    31
d5750f4e6e8c Adding a first attempt at go code
viric <viriketo@gmail.com>
parents:
diff changeset
    32
	err = dbmap.CreateTables()
d5750f4e6e8c Adding a first attempt at go code
viric <viriketo@gmail.com>
parents:
diff changeset
    33
	if err != nil {
d5750f4e6e8c Adding a first attempt at go code
viric <viriketo@gmail.com>
parents:
diff changeset
    34
		log.Fatal("Fatal error: ", err)
d5750f4e6e8c Adding a first attempt at go code
viric <viriketo@gmail.com>
parents:
diff changeset
    35
	}
d5750f4e6e8c Adding a first attempt at go code
viric <viriketo@gmail.com>
parents:
diff changeset
    36
d5750f4e6e8c Adding a first attempt at go code
viric <viriketo@gmail.com>
parents:
diff changeset
    37
	mySentence := &Sentence{0, "potato", "Open the potato"}
d5750f4e6e8c Adding a first attempt at go code
viric <viriketo@gmail.com>
parents:
diff changeset
    38
d5750f4e6e8c Adding a first attempt at go code
viric <viriketo@gmail.com>
parents:
diff changeset
    39
	err = dbmap.Insert(mySentence)
d5750f4e6e8c Adding a first attempt at go code
viric <viriketo@gmail.com>
parents:
diff changeset
    40
	if err != nil {
d5750f4e6e8c Adding a first attempt at go code
viric <viriketo@gmail.com>
parents:
diff changeset
    41
		log.Fatal("Fatal error: ", err)
d5750f4e6e8c Adding a first attempt at go code
viric <viriketo@gmail.com>
parents:
diff changeset
    42
	}
d5750f4e6e8c Adding a first attempt at go code
viric <viriketo@gmail.com>
parents:
diff changeset
    43
}