Home >Backend Development >Golang >Learn database functions in Go language and implement addition, deletion, modification and query operations of Oracle data

Learn database functions in Go language and implement addition, deletion, modification and query operations of Oracle data

王林
王林Original
2023-08-01 10:41:111197browse

Learn the database functions in Go language and implement the addition, deletion, modification and query operations of Oracle data

Go language is an open source programming language that is widely used in server-side development. It is simple, efficient and easy to learn, so it is very popular among programmers. In actual project development, database operations are an inevitable part. This article will introduce the database functions in the Go language, and demonstrate through sample code how to use the Go language to implement addition, deletion, modification, and query operations in the Oracle database.

First, we need to use the database/sql package in Go language to connect and operate the database. This package provides a unified set of interfaces that can easily interact with different types of databases. Before using this package, we need to install the corresponding database driver. In this example, we will use "github.com/godror/godror" to connect to the Oracle database.

The following is a sample program that demonstrates how to connect to the Oracle database and perform add, delete, modify and query operations:

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("数据删除成功!")
}

In the above sample code, first we use the sql.Open() function to connect to the database , where the first parameter is the database driver name, and the second parameter is the database connection string. Then use the db.Prepare() function to prepare the SQL statement, and then use stmt.Exec() to execute the SQL statement. Query operations use db.Query() to execute query statements and rows.Scan() to obtain query results.

It should be noted that the database connection string in the example needs to be replaced with the actual user name, password, host name, port number and service name. At the same time, the table name and field name need to be modified according to the actual situation.

Summary:

This article introduces how to use the database functions of the Go language and the Oracle database driver to implement add, delete, modify, and query operations. By learning these basic database operation methods, we can better utilize the Go language for database development in actual projects. Of course, in addition to Oracle database, Go language also supports other types of databases, such as MySQL, PostgreSQL, etc. You only need to install the corresponding database driver package. I hope this article will be helpful to you when learning the Go language and performing database operations.

The above is the detailed content of Learn database functions in Go language and implement addition, deletion, modification and query operations of Oracle data. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn