12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- package test
- import (
- "fmt"
- "io"
- "os"
- "testing"
- )
- func TestInsertLob(t *testing.T) {
- // 打开文件
- file, err := os.Open("A.jpg")
- if err != nil {
- fmt.Println("Error opening file:", err)
- return
- }
- // 确保在函数结束时关闭文件
- defer file.Close()
- // 读取文件内容
- fileContent, err := io.ReadAll(file)
- if err != nil {
- fmt.Println("Error reading file:", err)
- return
- }
- _, err = db.Exec("INSERT INTO gotab3 VALUES(?,NULL,?,NULL);", 3, fileContent)
- if err != nil {
- fmt.Printf("[ERROR] %s\n", err.Error())
- }
- }
- func TestSelecttLob(t *testing.T) {
- rows, err := db.Query("select * from gotab3;")
- if err != nil {
- fmt.Printf("[ERROR] %s\n", err.Error())
- return
- }
- column, err := rows.Columns()
- if err != nil {
- fmt.Printf("[ERROR] %s\n", err.Error())
- return
- }
- rows_value := make([]interface{}, len(column))
- for key, _ := range rows_value {
- dest := make([]byte, 1000000)
- rows_value[key] = &dest
- }
- for rows.Next() {
- rows.Scan(rows_value...)
- for _, v := range rows_value {
- fmt.Printf("结果: %s\t", string(*(v.(*[]byte))))
- }
- fmt.Printf("\n")
- }
- rows.Close()
- db.Close()
- }
|