请知道的高手解答一下,谢谢了
错误信息:
%!(EXTRA <nil>)
运行程序结果:
[root@localhost ocitest]# ~/tasks/go/fjgd/bin/ocitest
connected cool
%!(EXTRA <nil>)7369 SMITH
7876 ADAMS
7900 JAMES
代码:
package main
import (
"fmt"
"database/sql"
_ "github.com/mattn/go-oci8"
)
func main(){
db, err := sql.Open("oci8", "scott/11@localhost:1521/orcl")
if err != nil {
fmt.Println(err)
return
}
defer db.Close()
if err = db.Ping(); err != nil {
fmt.Printf("Error connecting to the database: %s\n", err)
return
}
fmt.Printf("connected cool \n", err)
rows,err := db.Query("select EMPNO, ENAME from emp10 where SAL < :1", 1200)
if err != nil {
fmt.Println("Error fetching employees")
fmt.Println(err)
return
}
defer rows.Close()
for rows.Next() {
var EMPNO int
var ENAME string
rows.Scan(&EMPNO, &ENAME)
println(EMPNO,ENAME)
}
}
表:
SQL> select * from emp10;
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
---------- ---------- --------- ---------- ------------ ---------- ---------- ----------
7369 SMITH CLERK 7902 17-DEC-80 800 20
7499 ALLEN SALESMAN 7698 20-FEB-81 1600 300 30
7521 WARD SALESMAN 7698 22-FEB-81 1250 500 30
7566 JONES MANAGER 7839 02-APR-81 2975 20
7654 MARTIN SALESMAN 7698 28-SEP-81 1250 1400 30
7698 BLAKE MANAGER 7839 01-MAY-81 2850 30
7782 CLARK MANAGER 7839 09-JUN-81 2450 10
7788 SCOTT ANALYST 7566 19-APR-87 3000 20
7839 KING PRESIDENT 17-NOV-81 5000 10
7844 TURNER SALESMAN 7698 08-SEP-81 1500 0 30
7876 ADAMS CLERK 7788 23-MAY-87 1100 20
7900 JAMES CLERK 7698 03-DEC-81 950 30
7902 FORD ANALYST 7566 03-DEC-81 3000 20
7934 MILLER CLERK 7782 23-JAN-82 1300 10
14 rows selected.
`fmt.Printf("connected cool \n", err)` 执行到这里,说明 err 是 nil,而你打印的时候,用了 Printf ,没有指定格式,试试 `fmt.Println("connected cool \n", err)`
#1
更多评论
低级错误, 谢谢polaris 热情回答,改了以后就没问题了
[root@localhost ocitest]# ~/tasks/go/fjgd/bin/ocitest
connected cool
7369 SMITH
7876 ADAMS
7900 JAMES
#2