当前位置: 首页 > news >正文

成都企业网站的建立app创意设计方案

成都企业网站的建立,app创意设计方案,装修网站合作平台有哪些,wordpress 优化方案通过前几篇想必你已经知道该如何使用Go语言写一些简单的程序了#xff0c;那么从这一篇开始#xff0c;我们开始探究如何用go语言能够写真正的企业级应用。第一步我们实现先能让程序对数据库进行增删改查#xff0c;这里以MySQL为例。 1. 导入必要的包 首先需要导入databa…通过前几篇想必你已经知道该如何使用Go语言写一些简单的程序了那么从这一篇开始我们开始探究如何用go语言能够写真正的企业级应用。第一步我们实现先能让程序对数据库进行增删改查这里以MySQL为例。 1. 导入必要的包 首先需要导入database/sql包用于数据库操作的通用接口以及特定数据库MySQL的驱动包github.com/go-sql-driver/mysql。 import (database/sqlfmt_ github.com/go-sql-driver/mysql )2. 连接数据库 使用sql.Open()函数来建立与MySQL数据库的连接。 func main() {db, err : sql.Open(mysql, user:passwordtcp(127.0.0.1:3306)/your_database?charsetutf8mb4parseTimeTruelocLocal)if err! nil {fmt.Println(数据库连接失败:, err)return}defer db.Close()// 测试连接是否成功err db.Ping()if err! nil {fmt.Println(数据库连接不可用:, err)return}fmt.Println(数据库连接成功) }3. 数据查询SELECT 基本查询 使用db.Query()或db.QueryRow()函数执行查询语句。Query用于返回多行结果集QueryRow用于返回单行结果。问号代表的是预编译参数如果你用过Java的JDBC对此一定不会陌生。var id int var name string row : db.QueryRow(SELECT id, name FROM users WHERE id ?, 1) err row.Scan(id, name) if err! nil {fmt.Println(查询失败:, err)return } fmt.Printf(查询结果: id %d, name %s\n, id, name)查询多行数据 使用db.Query()结合rows.Next()、rows.Scan()来遍历结果集。rows, err : db.Query(SELECT id, name FROM users) if err! nil {fmt.Println(查询失败:, err)return } defer rows.Close() for rows.Next() {var id intvar name stringerr rows.Scan(id, name)if err! nil {fmt.Println(扫描结果失败:, err)return}fmt.Printf(查询结果: id %d, name %s\n, id, name) } err rows.Err() if err! nil {fmt.Println(遍历结果集时出错:, err)return }4. 数据插入INSERT 使用db.Exec()函数执行插入语句。 result, err : db.Exec(INSERT INTO users (name, age) VALUES (?,?), 张三, 30) if err! nil {fmt.Println(插入数据失败:, err)return } lastInsertId, err : result.LastInsertId() if err! nil {fmt.Println(获取插入ID失败:, err)return } fmt.Printf(插入成功最后插入的ID为: %d\n, lastInsertId)5. 数据更新UPDATE 同样使用db.Exec()函数执行更新语句。 result, err : db.Exec(UPDATE users SET age ? WHERE name ?, 31, 张三) if err! nil {fmt.Println(更新数据失败:, err)return } rowsAffected, err : result.RowsAffected() if err! nil {fmt.Println(获取更新行数失败:, err)return } fmt.Printf(更新成功影响的行数为: %d\n, rowsAffected)6. 数据删除DELETE 使用db.Exec()函数执行删除语句。 result, err : db.Exec(DELETE FROM users WHERE name ?, 张三) if err! nil {fmt.Println(删除数据失败:, err)return } rowsAffected, err : result.RowsAffected() if err! nil {fmt.Println(获取删除行数失败:, err)return } fmt.Printf(删除成功影响的行数为: %d\n, rowsAffected)7. 事务控制 在Go语言中事务控制可以通过Tx对象来实现。事务可以确保一组数据库操作要么全部成功要么全部失败。 tx, err :db.Begin() if err ! nil {fmt.Println(启动事务失败:, err)return }_, err tx.Exec(UPDATE users SET age age 1 WHERE id 1) if err ! nil {fmt.Println(更新数据1失败:, err)return } fmt.Println(已更新数据1) _, err tx.Exec(UPDATE users SET age age - 1 WHERE id 2) if err ! nil {fmt.Println(更新数据2失败:, err)return } fmt.Println(已更新数据2) tx.Rollback() fmt.Println(已完成回滚) _, err tx.Exec(UPDATE users SET age 30 WHERE id 3) if err ! nil {fmt.Println(更新数据3失败:, err)return } fmt.Println(已更新数据3) tx.Commit() fmt.Println(已提交)8. 数据库连接池设置 Go语言的database/sql包提供了连接池的默认实现但你可以通过设置连接池的参数来优化性能。 db, err : sql.Open(mysql, user:passwordtcp(127.0.0.1:3306)/your_database?charsetutf8mb4parseTimeTruelocLocal) if err! nil {fmt.Println(数据库连接失败:, err)return } defer db.Close() // 设置连接池参数 db.SetMaxOpenConns(25) // 最大打开连接数 db.SetMaxIdleConns(25) // 最大空闲连接数 db.SetConnMaxLifetime(5 * time.Minute) // 连接最大生命周期5. 总结 增删改查使用Exec和Query方法进行数据库操作。事务控制使用Begin、Commit和Rollback方法来管理事务。并发控制通过连接池管理和事务隔离级别来控制并发访问。数据库连接池设置通过SetMaxOpenConns、SetMaxIdleConns和SetConnMaxLifetime方法来配置连接池参数。
http://www.hkea.cn/news/14269860/

相关文章:

  • 网站开发系统设计建设银行官网站查询
  • 亚马逊网站托管怎么做免费网站建设哪个好?
  • 无锡做食品网站的公司北京网站页设计制作
  • 长春站建筑.net 网站关键字
  • 北流网站建设wordpress ssl
  • 成都建站优化公司建立平台网站需要花多少钱
  • 自己怎么建网站书籍扉页页面设计模板
  • 网站开发运营服务合同广州户外拓展训练基地
  • 怎么做网站访问被拒绝上海公司注册核名官网
  • 网站搜索框lnmp新手 wordpress
  • 网站建设的四个步骤wordpress微信授权访问
  • 我要看一集片做网站广东东莞房价2022最新价格
  • 高新区免费网站建设什么是网络工程师
  • 西安北郊做网站做app需要多少钱
  • 网站建设价格女淄博网络宣传
  • 网站建设怎么改栏目名称wordpress站内计费搜索
  • 西安网站建设 翼驰小网站下载渠道有哪些
  • 中国采购与招标网官方网站WordPress恶意扫描
  • 13572074638网站建设程序员都需要学什么
  • seo优化网站二维码制作网站有哪些
  • 上海网站建设方案服务百度信息流开户多少钱
  • 做h5的网站页面学技术网站
  • 抓取网站访客数据原理张家港百度网站制作
  • 做网站怎么优化网站推广任务 ip点击
  • 网站错误列表刷seo排名
  • 外贸建站推广哪家好网站首页分类怎么做的
  • 开源网站有哪些网站建设对接流程图
  • 3d云打印网站开发深圳住房建设局官方网站
  • 网站网站制作400多少钱城乡建设部注册建筑师网站
  • 男孩子怎么做网站推广wordpress上传图片x