How to Set mysql limit in Go Language? I try it to php it is working but in the Go language, it show <nil>
value didn't know how to fixed
php:--- $sql = "SELECT My_Data FROM page_data"; or $sql = "SELECT My_Data FROM page_data limit 0,10";
Go :- SHOW <nil> >>>
myquery, err := db.Prepare("SELECT pages_old FROM app_library")
fmt.Println("Data---", myquery)
When I hit the below command :- q := "SELECT data
FROM page_data
"
rows, err := db.Query(q)
if err != nil {
fmt.Println(err)
}
defer rows.Close()
for rows.Next() {
var data string // same database type
if err := rows.Scan(&data); err != nil {
log.Fatal(err)
}
fmt.Println(data)
}
Then Got the below error:
Error: error :-- commands out of sync. Did you run multiple statements at once? panic: runtime error: invalid memory address or nil pointer dereference panic: runtime error: invalid memory address or nil pointer dereference [signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0x10bee7a]
Prepare used to creates a prepared statement for later queries or executions.
if you want to executes a query that returns rows use Query
Full Example:
package main
import (
"database/sql"
"fmt"
"log"
_ "github.com/go-sql-driver/mysql"
)
const (
dbUser = ""
dbPassword = ""
dbName = ""
)
func main() {
db, err := sql.Open("mysql", dbUser+":"+dbPassword+"@/"+dbName+"?charset=utf8")
if err != nil {
log.Fatal(err)
}
q := "SELECT `data` FROM `page_data`"
rows, err := db.Query(q)
if err != nil {
fmt.Println(err)
}
defer rows.Close()
for rows.Next() {
var data string // same database type
if err := rows.Scan(&data); err != nil {
log.Fatal(err)
}
fmt.Println(data)
}
}
example it has been edited