golang连接mysql的第一个程序(最新)

不想多说话,先把golang和mysql连接好,环境配置好,然后直接上代码就行了,代码可直接运行。

package main

import (
	"database/sql"
	"fmt"

	_ "github.com/go-sql-driver/mysql"
)

func main() {
	// MySQL 连接字符串
	dbConnectionString := "root:nmnmnm67890890@tcp(localhost:3306)/test1"

	// 打开数据库连接
	db, err := sql.Open("mysql", dbConnectionString)
	if err != nil {
		panic(err.Error())
	}
	defer db.Close()

	// 尝试连接数据库
	err = db.Ping()
	if err != nil {
		panic(err.Error())
	}

	fmt.Println("Successfully connected to the database!")

	// 创建表
	_, err = db.Exec(`
		CREATE TABLE IF NOT EXISTS users (
			id INT NOT NULL AUTO_INCREMENT,
			name VARCHAR(50) NOT NULL,
			age INT NOT NULL,
			PRIMARY KEY (id)
		)
	`)
	if err != nil {
		panic(err.Error())
	}

	fmt.Println("Table 'users' created successfully!")

	// 插入一条数据
	_, err = db.Exec("INSERT INTO users (name, age) VALUES (?, ?)", "John Doe", 30)
	if err != nil {
		panic(err.Error())
	}

	fmt.Println("Data inserted successfully!")

	// 查询数据
	rows, err := db.Query("SELECT * FROM users")
	if err != nil {
		panic(err.Error())
	}
	defer rows.Close()

	// 遍历查询结果
	for rows.Next() {
		var id int
		var name string
		var age int

		err := rows.Scan(&id, &name, &age)
		if err != nil {
			panic(err.Error())
		}

		fmt.Printf("ID: %d, Name: %s, Age: %d\n", id, name, age)
	}

	// 检查可能的错误
	if err := rows.Err(); err != nil {
		panic(err.Error())
	}
}

看运行结果

相关推荐

  1. 写你第一Vue程序

    2023-12-27 12:42:03       43 阅读
  2. 创建你第一Windows程序

    2023-12-27 12:42:03       7 阅读
  3. 第一Rust程序

    2023-12-27 12:42:03       13 阅读

最近更新

  1. TCP协议是安全的吗?

    2023-12-27 12:42:03       19 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2023-12-27 12:42:03       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2023-12-27 12:42:03       20 阅读
  4. 通过文章id递归查询所有评论(xml)

    2023-12-27 12:42:03       20 阅读

热门阅读

  1. leetcode | go | 第600题 | 不含连续1的非负整数

    2023-12-27 12:42:03       41 阅读
  2. vue中的动态组件和混入

    2023-12-27 12:42:03       36 阅读
  3. 2023年腾讯云活动:2核2G4M轻量服务器3年540元

    2023-12-27 12:42:03       44 阅读
  4. 分布式信号量(Redis)

    2023-12-27 12:42:03       41 阅读
  5. Spring缓存注解@Cacheable、@CachePut、@CacheEvict

    2023-12-27 12:42:03       39 阅读
  6. 大语言模型激活函数绘图

    2023-12-27 12:42:03       44 阅读