| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- package main
- import (
- "fmt"
- "bufio"
- "strings"
- "os"
- "database/sql"
- _ "github.com/mattn/go-sqlite3"
- )
- func add(text string, govno string) {
- db, err := sql.Open("sqlite3", "./base.db")
- if err != nil { panic(err) }
- defer db.Close()
- sqlStmt := `CREATE TABLE IF NOT EXISTS l2 (id INTEGER NOT NULL PRIMARY KEY, name TEXT, govno TEXT)`
- _, err = db.Exec(sqlStmt)
- if err != nil {panic(err)}
- _, err = db.Exec("INSERT INTO l2 (name, govno) VALUES(?, ?)", text, govno)
- if err != nil { panic(err) }
- }
- func view() {
- db, err := sql.Open("sqlite3", "./base.db")
- if err != nil {panic(err)}
- defer db.Close()
- rows, err := db.Query("SELECT id, name, govno FROM l2")
- if err != nil {panic(err)}
- defer rows.Close()
- for rows.Next() {
- var id int
- var name string
- var govno string
- rows.Scan(&id, &name, &govno)
- StringView := fmt.Sprintf("ID %d, Name %s, Thought %s\n", id, name, govno)
- fmt.Printf("%s", StringView)
- }
- }
- func DeleteByID(id string) {
- db, err := sql.Open("sqlite3", "./base.db")
- if err != nil {panic(err)}
- _, err = db.Exec("DELETE FROM l2 WHERE id = ?", id)
- if err != nil {panic(err)}
- fmt.Printf("delete by id %s\n", id)
- }
- func main() {
- scan := bufio.NewScanner(os.Stdin)
- for {
- fmt.Printf("1) Added in DB\n2) View all DB\n3) Delete by index\n4) Exit\n")
- fmt.Printf("Your choise(1/2/3/4) ")
- var choise int
- fmt.Scan(&choise)
- if choise == 1 {
- fmt.Printf("Your name ")
- scan.Scan()
- name := scan.Text()
- fmt.Printf("enter the thought ")
- scan.Scan()
- thought := strings.TrimSpace(scan.Text())
- add(name, thought)
- fmt.Printf("Added %s and %s\n", name, thought)
- } else if choise == 2 {
- fmt.Println("------------------------")
- view()
- fmt.Println("------------------------")
- } else if choise == 4 {
- return
- } else if choise == 3 {
- fmt.Printf("ID ")
- scan.Scan()
- id := scan.Text()
- DeleteByID(id)
- } else {
- fmt.Printf("Incorrect number\n ")
- }
- }
- }
|