diff --git a/go/go.mod b/go/go.mod index 4f09327..86b2005 100644 --- a/go/go.mod +++ b/go/go.mod @@ -7,7 +7,7 @@ require ( github.com/go-telegram-bot-api/telegram-bot-api/v5 v5.5.1 // indirect github.com/gorilla/websocket v1.5.3 // indirect github.com/joho/godotenv v1.5.1 // indirect - github.com/mattn/go-sqlite3 v1.14.46 // indirect + github.com/mattn/go-sqlite3 v1.14.47 // indirect golang.org/x/net v0.44.0 // indirect golang.org/x/sync v0.17.0 // indirect ) diff --git a/go/go.sum b/go/go.sum index 001640d..4b0ed20 100644 --- a/go/go.sum +++ b/go/go.sum @@ -8,6 +8,8 @@ github.com/joho/godotenv v1.5.1 h1:7eLL/+HRGLY0ldzfGMeQkb7vMd0as4CfYvUVzLqw0N0= github.com/joho/godotenv v1.5.1/go.mod h1:f4LDr5Voq0i2e/R5DDNOoa2zzDfwtkZa6DnEwAbqwq4= github.com/mattn/go-sqlite3 v1.14.46 h1:ZfaNcYO/CGNMRxkN1vvG9qf+Y+uvXfgT9a6MlEw+HmU= github.com/mattn/go-sqlite3 v1.14.46/go.mod h1:6JTjA44L93a0QCyJef5YvlPoKXntQPjzWv5gtm9sB6w= +github.com/mattn/go-sqlite3 v1.14.47 h1:jOBI62gS7nKeZv+as1oGEy0+1qISgXwH/QBlR6KbfIo= +github.com/mattn/go-sqlite3 v1.14.47/go.mod h1:6JTjA44L93a0QCyJef5YvlPoKXntQPjzWv5gtm9sB6w= golang.org/x/net v0.44.0 h1:evd8IRDyfNBMBTTY5XRF1vaZlD+EmWx6x8PkhR04H/I= golang.org/x/net v0.44.0/go.mod h1:ECOoLqd5U3Lhyeyo/QDCEVQ4sNgYsqvCZ722XogGieY= golang.org/x/sync v0.17.0 h1:l60nONMj9l5drqw6jlhIELNv9I0A4OFgRsG9k2oT9Ug= diff --git a/go/sql/.gitignore b/go/sql/.gitignore new file mode 100644 index 0000000..98e6ef6 --- /dev/null +++ b/go/sql/.gitignore @@ -0,0 +1 @@ +*.db diff --git a/go/sql/l1.go b/go/sql/l1.go new file mode 100644 index 0000000..819220f --- /dev/null +++ b/go/sql/l1.go @@ -0,0 +1,40 @@ +package main + +import ( + "fmt" + //"net/http" + //"io" + "database/sql" + _ "github.com/mattn/go-sqlite3" +) + +func main() { + fmt.Printf("Your name? ") + var username string + fmt.Scan(&username) + db, err := sql.Open("sqlite3", "./base.db") + if err != nil { + panic(err) + } + defer db.Close() + + sqlStmt := `CREATE TABLE IF NOT EXISTS users (id INTEGER NOT NULL PRIMARY KEY, name TEXT);` + _, err = db.Exec(sqlStmt) + if err != nil { + panic(err) + } + _, err = db.Exec("INSERT INTO users(name) VALUES(?)", username) + if err != nil { + panic(err) + } + rows, err := db.Query("SELECT id, name FROM users") + if err != nil { + panic(err) + } + for rows.Next() { + var id int + var name string + rows.Scan(&id, &name) + fmt.Printf("Name %s, ID %d\n", name, id) + } +} diff --git a/go/sql/output/l1 b/go/sql/output/l1 new file mode 100755 index 0000000..1bf2f72 Binary files /dev/null and b/go/sql/output/l1 differ