· 5 years ago · Jul 18, 2020, 11:20 AM
1package main
2
3import (
4 "database/sql"
5 "fmt"
6 "log"
7 "os"
8
9 _ "github.com/mattn/go-sqlite3"
10)
11
12func addClass(className string) {
13
14 // Open DataBase
15 database, err := sql.Open("sqlite3", "./school.db")
16 if err != nil {
17 log.Fatal(err)
18 }
19 defer database.Close()
20
21 // Create a new Class
22 db, err := database.Prepare("CREATE TABLE IF NOT EXISTS " + className + " (id INTEGER PRIMARY KEY, firstName TEXT, lastName TEXT)")
23 if err != nil {
24 log.Fatal(err)
25 }
26 db.Exec()
27}
28
29func addStudent(classname, firstName, lastName string) {
30 // Open DataBase
31 database, err := sql.Open("sqlite3", "./school.db")
32 if err != nil {
33 log.Fatal(err)
34 }
35 defer database.Close()
36
37 // Insert student into a Class
38 db, err := database.Prepare("INSERT INTO " + classname + " (firstName, lastName) VALUES(?, ?)")
39 if err != nil {
40 log.Fatal(err)
41 }
42 db.Exec(firstName, lastName)
43}
44
45func main() {
46
47 if len(os.Args) < 3 {
48 fmt.Println("Please enter command")
49 return
50 }
51 cmd := os.Args[1] + os.Args[2]
52
53 if cmd == "addstudent" {
54 if len(os.Args) < 6 {
55 fmt.Println("Please specify className, firstName, lastName")
56 return
57 }
58 className, firstName, lastName := os.Args[3], os.Args[4], os.Args[5]
59 addStudent(className, firstName, lastName)
60 }
61
62 if cmd == "addclass" {
63 if len(os.Args) < 4 {
64 fmt.Println("Please specify className")
65 return
66 }
67 className := os.Args[3]
68 addClass(className)
69 }
70
71}