精华内容
下载资源
问答
  • 2022-03-25 09:55:11

    目录

    安装driver

     处理驱动

    连接mysql示例 


    安装driver

     go get github.com/go-sql-driver/mysql 

    执行命令会报错,因为地址被墙了。

    需要修改代理:

    go env -w GOPROXY=https://goproxy.cn

    执行成功!


     处理驱动

    需要在错误的引入处删掉手动让IDE提示加入,这样就不会报错了。

    连接mysql示例 

    示例来源:Go连接MYSQL - rickiyang - 博客园

    package main
    
    import (
    	"database/sql"
    	"encoding/json"
    	"fmt"
    	_ "github.com/go-sql-driver/mysql"
    	"github.com/pkg/errors"
    	"strings"
    )
    
    //数据库配置
    const (
    	userName = "root"
    	password = "123456"
    	ip       = "127.0.0.1"
    	port     = "3306"
    	dbName   = "test"
    )
    
    //Db数据库连接池
    var DB *sql.DB
    
    type User struct {
    	id    int64
    	name  string
    	age   int8
    	sex   int8
    	phone string
    }
    
    //注意方法名大写,就是public
    func InitDB() {
    	//构建连接:"用户名:密码@tcp(IP:端口)/数据库?charset=utf8"
    	path := strings.Join([]string{userName, ":", password, "@tcp(", ip, ":", port, ")/", dbName, "?charset=utf8"}, "")
    	//打开数据库,前者是驱动名,所以要导入: _ "github.com/go-sql-driver/mysql"
    	DB, _ = sql.Open("mysql", path)
    	//设置数据库最大连接数
    	DB.SetConnMaxLifetime(100)
    	//设置上数据库最大闲置连接数
    	DB.SetMaxIdleConns(10)
    	//验证连接
    	if err := DB.Ping(); err != nil {
    		fmt.Println("open database fail")
    		return
    	}
    	fmt.Println("connnect success")
    }
    
    //查询操作
    func Query() {
    	var user User
    	rows, e := DB.Query("select * from user where id in (1,2,3)")
    	if e == nil {
    		errors.New("query incur error")
    	}
    	for rows.Next() {
    		e := rows.Scan(user.sex, user.phone, user.name, user.id, user.age)
    		if e != nil {
    			fmt.Println(json.Marshal(user))
    		}
    	}
    	rows.Close()
    	DB.QueryRow("select * from user where id=1").Scan(user.age, user.id, user.name, user.phone, user.sex)
    
    	stmt, e := DB.Prepare("select * from user where id=?")
    	query, e := stmt.Query(1)
    	query.Scan()
    }
    
    func DeleteUser(user User) bool {
    	//开启事务
    	tx, err := DB.Begin()
    	if err != nil {
    		fmt.Println("tx fail")
    	}
    	//准备sql语句
    	stmt, err := tx.Prepare("DELETE FROM user WHERE id = ?")
    	if err != nil {
    		fmt.Println("Prepare fail")
    		return false
    	}
    	//设置参数以及执行sql语句
    	res, err := stmt.Exec(user.id)
    	if err != nil {
    		fmt.Println("Exec fail")
    		return false
    	}
    	//提交事务
    	tx.Commit()
    	//获得上一个insert的id
    	fmt.Println(res.LastInsertId())
    	return true
    }
    
    func InsertUser(user User) bool {
    	//开启事务
    	tx, err := DB.Begin()
    	if err != nil {
    		fmt.Println("tx fail")
    		return false
    	}
    	//准备sql语句
    	stmt, err := tx.Prepare("INSERT INTO user (`name`, `phone`) VALUES (?, ?)")
    	if err != nil {
    		fmt.Println("Prepare fail")
    		return false
    	}
    	//将参数传递到sql语句中并且执行
    	res, err := stmt.Exec(user.name, user.phone)
    	if err != nil {
    		fmt.Println("Exec fail")
    		return false
    	}
    	//将事务提交
    	tx.Commit()
    	//获得上一个插入自增的id
    	fmt.Println(res.LastInsertId())
    	return true
    }
    
    func main() {
    	InitDB()
    
    	user:= User{name: "boonya",phone: "18081829343"}
    	InsertUser(user)
    
    	Query()
    
    	defer DB.Close()
    }

    更多相关内容
  • 神通数据库驱动jar,Java 连接神通数据库驱动包(亲测有效)神通数据库驱动jar,Java 连接神通数据库驱动包(亲测有效)神通数据库驱动jar,Java 连接神通数据库驱动包(亲测有效)神通数据库驱动jar,Java 连接神通...
  • 包含 SqlServer Mysql Access 。。。。等驱动都有。
  • 人大金仓kingbase8R2数据库驱动
  • 数据库驱动

    2017-08-13 21:29:12
    数据库安装包
  • 本篇文章主要介绍了详解Java动态加载数据库驱动,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
  • 达梦数据库驱动

    2018-08-13 17:00:08
    达梦数据库驱动 dameng-jdbc-17.jar 适用于达梦7版本 直接使用
  • DM数据库驱动通用jar包.zip
  • 达梦数据库驱动jar包

    2022-04-24 15:47:24
    达梦数据库驱动jar包
  • kettle数据库驱动包.zip

    2021-04-01 19:46:56
    kette数据库驱动包,包含mysql,oracle,DB2
  • sqlserver 数据库驱动

    2019-03-27 09:21:35
    sqlserver数据库驱动包,很干净,直接导入到项目即可
  • sqlserver数据库驱动

    2018-03-05 14:16:57
    sqlserver数据库连接驱动,支持mybatis-generator工具
  • access数据库驱动

    2019-01-27 01:02:12
    access数据库驱动(64位+32位),用于SQL server数据库建立连接时使用
  • Mysql数据库驱动

    2018-08-23 14:07:40
    包含Mysql数据库的5.1.44/5.1.46/5.1.47/3.1.14/5.0.3/8.0.12版本
  • 人大进仓kingbase8R6数据库驱动 国产数据库jdbc驱动 idea/dbeaver使用直连数据库
  • postgresql数据库驱动jar,用于连接postgres数据库必备驱动jar,亲测可用,适用于postgres9.6等
  • 数据库驱动程序

    2019-03-24 01:36:24
    MySQL驱动包 博文链接:https://huangminwen.iteye.com/blog/1039422
  • 集合了常用的Oracle、MySQL、sqlserver驱动
  • sqlserver2008数据库驱动jar包 sqlserver2008数据库驱动jar包 sqlserver2008数据库驱动jar包 sqlserver2008数据库驱动jar包
  • hgdb-6.0.1-jdbc42-SNAPSHOT.jar
  • 达梦8数据库驱动-jdbc

    2022-03-17 18:30:42
    达梦8数据库驱动-jdbc
  • 神通数据库java连接驱动
  • 将上两个驱动放到pdi-ce-7.1.0.0-12\data-integration\lib下可以解决kettle无法连接问题
  • linux(centos)python编译安装达梦数据库驱动包需要的DPI文件,具体的使用请参考https://www.aiprose.com/blog/150
  • 达梦数据库驱动jar包(适用所有版本),
  • MySQL数据库驱动jar包

    2018-10-24 17:18:27
    Java连接MySQL数据库驱动程序,亲测可用,如果配置连接property文件,url=jdbc:mysql://localhost:3306/ICN?useSSL=false 添加usessl=false的原因 原因是MySQL在高版本需要指明是否进行SSL连接
  • 阿里云数据库专用jar包:polardb-jdbc18.jar
  • 神通数据库JDBC驱动

    2019-06-12 12:46:02
    国产神通数据库(神舟通用数据库,OSCar)的JDBC驱动jar包(oscarJDBC.jar)。
  • System.out.println("数据库连接池jar包,数据库连接驱动"); System.out.println("数据库连接池jar包,数据库连接驱动"); System.out.println("数据库连接池jar包,数据库连接驱动");

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 643,520
精华内容 257,408
关键字:

怎样安装数据库驱动