一键导入
go
XuguDB Go 驱动开发完整指南:驱动安装与环境搭建、连接管理(database/sql)、 CRUD 操作(Exec/Query/Prepare)、事务控制、大对象处理、多结果集、接口参考。 适用于使用 Go 语言连接和操作虚谷数据库的开发场景。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
XuguDB Go 驱动开发完整指南:驱动安装与环境搭建、连接管理(database/sql)、 CRUD 操作(Exec/Query/Prepare)、事务控制、大对象处理、多结果集、接口参考。 适用于使用 Go 语言连接和操作虚谷数据库的开发场景。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Activiti 工作流引擎与虚谷数据库(XuguDB)集成适配指南。当用户需要在 Spring Boot 项目中使用 Activiti 工作流引擎连接 XuguDB 时使用此技能,包括流程引擎配置、数据源设置、BPMN 流程定义、任务管理、历史记录查询等。适用于企业级工作流应用、审批流程、业务流程自动化等场景。
AnyLine 动态数据源框架适配虚谷数据库(XuguDB)的完整指南。当用户需要将基于 AnyLine 的 Java 项目配置或适配到虚谷数据库时使用此技能,包括动态数据源注册、切换、元数据操作、DDL/DML 自动生成等。适用于数据中台、低代码平台、异构数据库迁移等场景。
Azkaban 工作流管理器适配虚谷数据库(XuguDB)的完整指南。当用户需要将基于 Azkaban 的工作流管理器配置或适配到虚谷数据库时使用此技能,包括安装部署、数据库配置、工作流定义、任务调度、监控管理等。适用于大数据作业调度和管理场景。
Camunda BPM 平台适配虚谷数据库(XuguDB)的完整指南。当用户需要将基于 Camunda 的工作流和决策自动化平台配置或适配到虚谷数据库时使用此技能,包括安装部署、数据库配置、BPMN 流程定义、任务管理、REST API、UI 管理界面等。适用于企业级工作流应用、审批流程、业务流程自动化、案例管理等场景。
CloudBeaver 云数据库管理器适配虚谷数据库(XuguDB)的完整指南。当用户需要使用 CloudBeaver 连接和管理虚谷数据库时使用此技能,包括部署安装、驱动配置、连接管理、用户权限等。适用于团队协作、远程数据库管理场景。
DataEase 开源 BI 工具适配虚谷数据库(XuguDB)的完整指南。当用户需要将 DataEase 连接到虚谷数据库进行数据可视化分析时使用此技能,包括驱动配置、数据源连接、数据集创建、仪表板设计等。适用于企业数据可视化、自助分析、报表分享等场景。
| name | 虚谷数据库 Go 驱动开发 |
| name_for_command | xugudb-go |
| description | XuguDB Go 驱动开发完整指南:驱动安装与环境搭建、连接管理(database/sql)、 CRUD 操作(Exec/Query/Prepare)、事务控制、大对象处理、多结果集、接口参考。 适用于使用 Go 语言连接和操作虚谷数据库的开发场景。 |
| tags | xugudb, go, golang, driver, database/sql, crud, transaction |
XuguDB Go 驱动(go-xugu-driver)是虚谷数据库的官方 Go 语言驱动程序,基于 Go 标准库 database/sql 接口实现,支持 Go 语言的所有标准数据库操作。
安装方式:
go get gitee.com/XuguDB/go-xugu-driver@latest
导入方式(匿名导入注册驱动):
import (
_ "gitee.com/XuguDB/go-xugu-driver"
"database/sql"
)
环境要求:
详细参考:安装与环境搭建
驱动名称:"xugu"
连接字符串格式(分号分隔的键值对):
IP=127.0.0.1;DB=SYSTEM;User=SYSDBA;PWD=SYSDBA;Port=5138;AUTO_COMMIT=on;CHAR_SET=UTF8
连接示例:
db, err := sql.Open("xugu", "IP=127.0.0.1;DB=SYSTEM;User=SYSDBA;PWD=SYSDBA;Port=5138;CHAR_SET=UTF8")
if err != nil {
log.Fatal(err)
}
defer db.Close()
关键连接参数:
| 参数 | 说明 |
|---|---|
| IP | 服务器 IP 地址 |
| IPS | 多 IP 负载均衡(逗号分隔) |
| PORT | 端口号(默认 5138) |
| DBNAME/DB | 数据库名 |
| USER/User | 用户名 |
| PASSWORD/PWD | 密码 |
| CHAR_SET | 字符集(建议 UTF8) |
| AUTO_COMMIT | 自动提交(on/off) |
连接池配置:
db.SetMaxOpenConns(10) // 最大打开连接数
db.SetMaxIdleConns(5) // 最大空闲连接数
db.SetConnMaxLifetime(30 * time.Minute) // 连接最大生存时间
详细参考:连接管理
// DDL
_, err := db.Exec("CREATE TABLE test(c1 INT, c2 VARCHAR)")
// DML
res, err := db.Exec("INSERT INTO test VALUES(1, 'hello')")
affected, _ := res.RowsAffected()
rows, err := db.Query("SELECT c1, c2 FROM test")
if err != nil {
log.Fatal(err)
}
defer rows.Close()
for rows.Next() {
var c1 int
var c2 string
err = rows.Scan(&c1, &c2)
// 处理数据
}
stmt, err := db.Prepare("INSERT INTO test VALUES(?, ?)")
if err != nil {
log.Fatal(err)
}
defer stmt.Close()
_, err = stmt.Exec(1, "xugusql")
tx, err := db.Begin()
if err != nil {
log.Fatal(err)
}
_, err = tx.Exec("INSERT INTO test VALUES(1, 'data')")
if err != nil {
tx.Rollback()
return
}
err = tx.Commit()
详细参考:CRUD 操作
[]byte 类型)rows.NextResultSet() 遍历多条 SQL 返回的多个结果集? 占位符防 SQL 注入IPS 参数配置多 IPdb.Ping() / db.PingContext() 检查连接可用性详细参考:CRUD 操作
| 特性 | XuguDB | MySQL (go-sql-driver) | PostgreSQL (pgx) |
|---|---|---|---|
| 驱动名称 | "xugu" | "mysql" | "pgx" |
| 连接串格式 | 分号键值对 | DSN 格式 | URL 格式 |
| 占位符 | ? | ? | $1, $2 |
| 多结果集 | 支持 | 支持 | 不支持 |
| 导入路径 | gitee.com/XuguDB/go-xugu-driver | github.com/go-sql-driver/mysql | github.com/jackc/pgx/v5/stdlib |
当用户咨询 Go 驱动开发相关问题时:
database/sql 标准接口的代码示例