簡體   English   中英

如何連接Oracle數據庫?

[英]How can I connect to Oracle database?

我正在使用Fedora 23並安裝了Oracle 12.1Go 1.7.1

當我跑:

go get github.com/mattn/go-oci8

我收到一個錯誤:

/ usr / bin / ld:在搜索-lclntsh時跳過不兼容的/usr/lib/oracle/12.1/client64/lib/libclntsh.so

/ usr / bin / ld:找不到-lclntsh

collect2:錯誤:用返回碼1完成ld的執行

你在oci8.pc文件中放了什么?

我剛剛開始使用以下內容。 請記住,我只在前綴路徑下安裝了oracle 11.2即時客戶端。 我假設您必須將版本號更改為適當的數字。

prefix=/home/sbr/wk/apps/oracle/product/11.2.0/client_1
exec_prefix=${prefix}
libdir=${prefix}
includedir=${prefix}/sdk/include

glib_genmarshal=glib-genmarshal
gobject_query=gobject-query
glib_mkenums=glib-mkenums

Name: oci8
Description: oci8 library
Libs: -L${libdir} -lclntsh
Cflags: -I${includedir}
Version: 11.2

1,安裝goracle

2,安裝TMD GCC

3,使用sql.open連接Oracle.here是一個小例子。

package main

import (
    "fmt"
    "database/sql"
    _ "gopkg.in/goracle.v2"
)

func main(){

    db, err := sql.Open("goracle", "scott/tiger@10.0.1.127:1521/orclpdb1")
    if err != nil {
        fmt.Println(err)
        return
    }
    defer db.Close()


    rows,err := db.Query("select sysdate from dual")
    if err != nil {
        fmt.Println("Error running query")
        fmt.Println(err)
        return
    }
    defer rows.Close()

    var thedate string
    for rows.Next() {

        rows.Scan(&thedate)
    }
    fmt.Printf("The date is: %s\n", thedate)
}

來自oracle博客

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM