Skip to content

Instantly share code, notes, and snippets.

View razeencheng's full-sized avatar
🎯
Focusing

Razeen razeencheng

🎯
Focusing
View GitHub Profile
@razeencheng
razeencheng / chatpdf-zh.ipynb
Created March 27, 2023 15:21 — forked from ninehills/chatpdf-zh.ipynb
ChatPDF-zh.ipynb
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@razeencheng
razeencheng / dial-pq-via-ssh.go
Created August 5, 2022 11:28 — forked from vinzenz/dial-pq-via-ssh.go
Use postgres via SSH in Golang
package main
import (
"database/sql"
"database/sql/driver"
"fmt"
"net"
"os"
"time"
var ids := pq.Int64Array{}
err := db.QueryRow(`SELECT array_agg(id) FROM users WHERE "age" > $1`,18).Scan(&ids)
ids := []int64{12,16,33,55}
rows,err := db.Query(`SELECT name FROM users WHERE id=ANY($1),pq.Int64Array(ids))
var count int
err := db.QueryRow(`SELECT count(*) FROM users`).Scan(&count)
if err != nil {
 if err == sql.ErrNoRaw {
 count = 0
 …
 }
 …
}
err := db.Exec(`INSERT INTO users(name,favorite_fruit,age)
 VALUES($1, $2, $3) 
 ON CONFLICT (name) DO UPDATE 
 SET favorite_fruit=$2,
 age=$3`)
err := db.Exec(`INSERT INTO users(name,favorite_fruit,age)
 VALUES($1, $2, $3) 
 ON CONFLICT (name) DO UPDATE 
 SET favorite_fruit=$2 
var userid int
err := db.QueryRow(`INSERT INTO users(name, favorite_fruit, age)
 VALUES('beatrice', 'starfruit', 93) RETURNING id`).Scan(&userid)
// $2 使用了两次 都标记的值是64
rows, err := db.Query(`SELECT name FROM users WHERE favorite_fruit = $1
OR age BETWEEN $2 AND $2 + 3`, "orange", 64)
@razeencheng
razeencheng / test-sqlite.go
Created September 10, 2018 23:31
golang sqlite3 demo 1
package main
import (
"database/sql"
"net/http"
"time"
_ "github.com/mattn/go-sqlite3"
)