tablestore

package module
v0.0.0-...-4d337cb Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 18, 2022 License: Apache-2.0 Imports: 12 Imported by: 2

README

Aliyun Tablestore Go SQL Driver

表格存储面向Go语言database/sql包的驱动。

安装

通过go get命令安装:

go get github.com/aliyun/aliyun-tablestore-go-sql-driver

使用

表格存储的Go语言驱动是database/sql/driver接口的实现,导入包之后即可使用database/sql访问表格存储.

使用 ots 作为驱动名称,使用有效的DSN作为dataSourceName:

import (
    "database/sql"
    "fmt"
    _ "github.com/aliyun/aliyun-tablestore-go-sql-driver"
)

// ...

db, err := sql.Open("ots", "https://access_key_id:access_key_secret@endpoint/instance_name")
if err != nil {
    panic(err)
}

rows, err := db.Query("SELECT trip_id, duration, bike_number, is_member FROM trips WHERE trip_id = ?", 1688)
if err != nil {
    panic(err)
}

for rows.Next() {
    var (
        tripId     int64
        duration   float64
        bikeNumber string
        isMember   bool
    )
    err = rows.Scan(&tripId, &duration, &bikeNumber, &isMember)
    if err != nil {
        panic(err)
    }
    fmt.Printf("trip_id: %v, duration: %v, bike_number = %v, is_member = %v\n", tripId, duration, bikeNumber, isMember)
}

DSN(数据源名称)

表格存储的DSN(数据源名称)格式定义如下,其中方括号之内为可选部分:

schema://access_key_id:access_key_secret@endpoint/instance_name[?param1=value1&...&paramN=valueN]
  • schema为访问表格存储服务的协议,通常为https
  • access_key_id为表格存储服务的AccessKey ID
  • access_key_secret为表格存储服务的AccessKey Secret
  • endpoint为表格存储服务的域名地址
  • instance_name为表格存储服务的实例名称

另外,DSN中支持传入以下配置项:

  • retryTimes为重试次数
  • connectionTimeout为连接超时时间
  • requestTimeout为请求超时时间
  • maxRetryTime为最大触发重试时间
  • maxIdleConnections为最大空闲连接数

贡献代码

  • 我们非常欢迎大家为TableStore Go SQL Driver以及其他阿里云SDK贡献代码

联系我们

Documentation

Index

Constants

View Source
const (
	RetryTimes         = "retryTimes"
	MaxRetryTime       = "maxRetryTime"
	ConnectionTimeout  = "connectionTimeout"
	RequestTimeout     = "requestTimeout"
	MaxIdleConnections = "maxIdleConnections"
)

Variables

View Source
var (
	ErrPlaceholderCount = errors.New("tablestore: wrong placeholder count")
	ErrNotSupported     = errors.New("tablestore: operation is not supported")
)

Functions

This section is empty.

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL