赞助

配置 VS Code 以用于 Go 语言开发

转载:https://learn.microsoft.com/zh-cn/azure/developer/go/configure-visual-studio-code

转载:https://learn.microsoft.com/zh-cn/training/modules/dotnet-debug/4-use-visual-studio-code-debugger

转载:https://jingzh.blog.csdn.net/article/details/144172800(Go环境搭建)

转载:https://cloud.tencent.com/developer/article/2654560(入门Go语言)

转载:https://blog.csdn.net/wiphf/article/details/163195630

转载:https://zhuanlan.zhihu.com/p/693284465(Go语言生成exe带图标和版本信息)

转载:https://blog.csdn.net/weixin_43151418/article/details/162328066

 工作中没有小事:点石成金,滴水成河,只有认真对待自己所做的一切事情,才能克服万难,取得成功

1. 下载Go语言

官方网站:https://go.dev/

image

image

 

image

 下一步,下一步,安装成功。

打开cmd 输入

go version

image

说明Go环境安装成功

 2.VSCode中安装Go插件

image

 3.编写示例 Go 程序

在 Visual Studio Code 中,打开 Go 应用程序的根目录。 若要打开文件夹,请在活动栏中选择资源管理器图标,然后选择“ 打开文件夹”。

image

 在资源管理器面板中选择 “新建文件夹”,然后创建您的示例 Go 应用程序的根目录,命名为 sample-app

image

 在资源管理器面板中选择 “新建文件 ”,然后为该文件命名 main.go

image

打开终端 “终端 > 新终端”,然后运行以下命令 go mod init sample-app 以初始化示例 Go 应用。 

image

 

将以下代码复制到 main.go 文件中。

package main

import "fmt"

func main() {
    name := "Go Developers"
    fmt.Println("Azure for", name)
}

image

 选择 “运行和调试”,或选择 F5 运行调试器,发现报错

image

 解决方法

image

 

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

go install -v github.com/go-delve/delve/cmd/dlv@latest

 

image

 成功后再按F5运行

image

 

image

第一行 package main:声明这个文件属于 main 包。Go语言中,每个源文件都必须属于一个包。main 包是一个特殊的包,它告诉Go编译器这是一个可执行程序的入口包。

第三行 import "fmt":导入 fmt 包。fmt 是Go标准库中的格式化输入输出包,提供了打印、扫描等基础IO功能。import 关键字用于导入其他包。

第五行 func main():定义 main 函数。这是Go程序的入口函数,程序从这里开始执行。注意,main 函数必须定义在 main 包中,且没有参数和返回值。

第七行 fmt.Println("Azure for",name):调用 fmt 包的 Println 函数,输出一行字符串。注意 Go 原生支持 Unicode,所以中文字符可以直接使用,不会出现乱码问题。

 

 4.Go语言生成exe带图标和版本信息

  go-winres下载:

go install github.com/tc-hib/go-winres@latest

image

 打包exe:

image

 命令执行完之后会生成一个winres 文件夹

 

image

 

go-winres make

image

 命令执行完会生成两个syso文件

打包:

go build    //带有cmd黑框
go build -ldflags "-s -w -H=windowsgui"     //没有cmd黑框,适合有gui的
                                           //可以显著减小生成的二进制文件体积,适合生产环境部署

 

参数说明:

  • -o:指定输出文件名(自动添加.exe后缀)
  • -ldflags:优化编译参数(示例)

image

 5.安装 MySQL 驱动

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

下载MySQL

image

image

 

image

 my.ini

[mysqld]
# 安装目录
basedir=D:\mysql-9.7.1-winx64
# 数据目录(当前实例实际使用的数据目录)
datadir=D:\mysql-9.7.1-winx64\data
# 端口改用 3307
port=3307
# 只监听本机回环
bind-address=127.0.0.1
# 字符集
character-set-server=utf8mb4
collation-server=utf8mb4_general_ci
# 存储引擎与连接数
default-storage-engine=INNODB
max_connections=200

[client]
default-character-set=utf8mb4
port=3307

[mysql]
default-character-set=utf8mb4

image

 

image

 

// 错误:mydb 还不存在,连接就会失败
//dsn := "root:@tcp(127.0.0.1:3307)/test_db?charset=utf8mb4&parseTime=True&loc=Local"

dsn := "root:@tcp(127.0.0.1:3307)/?charset=utf8mb4&parseTime=True&loc=Local"
    db, err := sql.Open("mysql", dsn)
    if err != nil {
        log.Fatal(err)
    }
    //防止 db 为nil ,因此需要先判断err 之后才能调用Close 方法去释放db
    //延迟执行
    defer db.Close()//验证连接
    err = db.Ping()
    if err != nil {
        log.Fatalf("打开数据库连接失败:%v", err)
    }
    fmt.Println("数据库连接成功")

    //创建数据库
    _, err = db.Exec(`
    CREATE DATABASE IF NOT EXISTS mydb 
    DEFAULT CHARACTER SET utf8mb4
    DEFAULT COLLATE utf8mb4_general_ci
    `)

    if err != nil {
        log.Fatalf("数据库创建失败:%v", err)
    }

    //选择数据库
    _, err = db.Exec(`
    use mydb
    `)
    if err != nil {
        log.Fatalf("数据库选择失败:%v", err)
    }

 

MySQL 指令:
显示数据库: show databases;
创建数据库:  create database 数据库名;
使用数据库: use 数据库名;
查看当前使用数据库:\s
查看数据库中的表:show tables;
删除数据库:DROP DATABASE IF EXISTS 数据库名;
查看所有用户:SELECT User, Host FROM mysql.user; (只有root能查看)
查看当前登录的用户:SELECT CURRENT_USER();
删除 MySQL 用户:DROP USER IF EXISTS 'goapp'@'127.0.0.1';
删除多个用户:DROP USER IF EXISTS 
                'goapp'@'127.0.0.1',
                'report'@'%';                    

 

posted @ 2026-09-29 16:09  车臣  阅读(7)  评论(0)    收藏  举报