>  기사  >  백엔드 개발  >  Go 언어로 데이터베이스 기능을 배우고 Oracle 데이터의 추가, 삭제, 수정 및 쿼리 작업을 구현합니다.

Go 언어로 데이터베이스 기능을 배우고 Oracle 데이터의 추가, 삭제, 수정 및 쿼리 작업을 구현합니다.

王林
王林원래의
2023-08-01 10:41:111160검색

Go 언어로 데이터베이스 기능을 배우고 Oracle 데이터의 추가, 삭제, 수정 및 쿼리 작업을 구현합니다.

Go 언어는 오픈 소스 프로그래밍 언어이며 서버 측 개발에 널리 사용됩니다. 간단하고 효율적이며 배우기 쉽기 때문에 프로그래머들 사이에서 매우 인기가 있습니다. 실제 프로젝트 개발에 있어서 데이터베이스 운영은 빼놓을 수 없는 부분입니다. 이 기사에서는 Go 언어의 데이터베이스 기능을 소개하고 Go 언어를 사용하여 Oracle 데이터베이스에서 추가, 삭제, 수정 및 쿼리 작업을 구현하는 방법을 샘플 코드를 통해 보여줍니다.

먼저 데이터베이스를 연결하고 운영하려면 Go 언어로 된 데이터베이스/sql 패키지를 사용해야 합니다. 이 패키지는 다양한 유형의 데이터베이스와 쉽게 상호 작용할 수 있는 통합 인터페이스 세트를 제공합니다. 이 패키지를 사용하기 전에 해당 데이터베이스 드라이버를 설치해야 합니다. 이 예에서는 "github.com/godror/godror"를 사용하여 Oracle 데이터베이스에 연결합니다.

다음은 Oracle 데이터베이스에 연결하고 추가, 삭제, 수정 및 쿼리 작업을 수행하는 방법을 보여주는 샘플 프로그램입니다.

package main

import (
    "database/sql"
    "fmt"
    "log"

    _ "github.com/godror/godror"
)

func main() {
    // 连接数据库
    db, err := sql.Open("godror", "username/password@hostname:port/service_name")
    if err != nil {
        log.Fatal(err)
    }
    defer db.Close()

    // 测试连接是否成功
    err = db.Ping()
    if err != nil {
        log.Fatal(err)
    }
    fmt.Println("数据库连接成功!")

    // 插入数据
    stmt, err := db.Prepare("INSERT INTO my_table(id, name) VALUES(?, ?)")
    if err != nil {
        log.Fatal(err)
    }
    defer stmt.Close()

    _, err = stmt.Exec(1, "张三")
    if err != nil {
        log.Fatal(err)
    }
    fmt.Println("数据插入成功!")

    // 更新数据
    stmt, err = db.Prepare("UPDATE my_table SET name=? WHERE id=?")
    if err != nil {
        log.Fatal(err)
    }
    defer stmt.Close()

    _, err = stmt.Exec("李四", 1)
    if err != nil {
        log.Fatal(err)
    }
    fmt.Println("数据更新成功!")

    // 查询数据
    rows, err := db.Query("SELECT id, name FROM my_table")
    if err != nil {
        log.Fatal(err)
    }
    defer rows.Close()

    for rows.Next() {
        var id int
        var name string
        err = rows.Scan(&id, &name)
        if err != nil {
            log.Fatal(err)
        }
        fmt.Printf("ID: %d, 姓名: %s
", id, name)
    }

    // 删除数据
    stmt, err = db.Prepare("DELETE FROM my_table WHERE id=?")
    if err != nil {
        log.Fatal(err)
    }
    defer stmt.Close()

    _, err = stmt.Exec(1)
    if err != nil {
        log.Fatal(err)
    }
    fmt.Println("数据删除成功!")
}

위 샘플 코드에서는 먼저 sql.Open() 함수를 사용하여 연결합니다. 여기서 첫 번째 매개변수는 데이터베이스 드라이버 이름이고, 두 번째 매개변수는 데이터베이스 연결 문자열입니다. 그런 다음 db.Prepare() 함수를 사용하여 SQL 문을 준비한 다음 stmt.Exec()을 사용하여 SQL 문을 실행합니다. 쿼리 작업에서는 db.Query()를 사용하여 쿼리 문을 실행하고rows.Scan()을 사용하여 쿼리 결과를 얻습니다.

예제의 데이터베이스 연결 문자열은 실제 사용자 이름, 비밀번호, 호스트 이름, 포트 번호 및 서비스 이름으로 대체되어야 합니다. 동시에 실제 상황에 따라 테이블 이름과 필드 이름을 수정해야 합니다.

요약:

이 글에서는 Go 언어의 데이터베이스 기능과 Oracle 데이터베이스 드라이버를 사용하여 추가, 삭제, 수정 및 쿼리 작업을 구현하는 방법을 소개합니다. 이러한 기본적인 데이터베이스 운영 방법을 익히면 실제 프로젝트에서 데이터베이스 개발에 Go 언어를 더 잘 활용할 수 있습니다. 물론 Oracle 데이터베이스 외에도 Go 언어는 MySQL, PostgreSQL 등과 같은 다른 유형의 데이터베이스도 지원합니다. 해당 데이터베이스 드라이버 패키지만 설치하면 됩니다. 이 글이 Go 언어를 배우고 데이터베이스 작업을 수행할 때 도움이 되기를 바랍니다.

위 내용은 Go 언어로 데이터베이스 기능을 배우고 Oracle 데이터의 추가, 삭제, 수정 및 쿼리 작업을 구현합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.