如何设置限制或查询Go Language Mysql? [关闭]

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