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

手机和pc端网站建设会议网站建设

手机和pc端网站建设,会议网站建设,mui做网站,品牌宣传推广方案1.导入必要的包 import("database/sql"_ "github.com/go-sql-driver/mysql" //使用此作为数据库驱动 ) 2.相关操作 连接数据库 使用sql.Open()函数进行数据库的连接 db, err : sql.Open("mysql", "user:passwordtcp(127.0.0.1:3306)/db…

1.导入必要的包

import("database/sql"_ "github.com/go-sql-driver/mysql" //使用此作为数据库驱动
)

2.相关操作

连接数据库

使用sql.Open()函数进行数据库的连接

 db, err := sql.Open("mysql", "user:password@tcp(127.0.0.1:3306)/dbname")
//用户名:密码@tcp(127.0.0.1:3306)/你要连接的数据库if err != nil {panic(err)}defer db.Close()
//使用完毕后不要忘了关闭
package mainimport("database/sql"_ "github.com/go-sql-driver/mysql""fmt"
)func main(){db,err :=sql.Open("mysql","root:123456@tcp(127.0.0.1:3306)/mydb")//db是 *sql.DB 使用Open函数打开目标的IP的指定数据库if err !=nil {fmt.Println("open error")return }fmt.Printf("type is %T\n",db)err = db.Ping()//Ping一下 看是否真的连接成功
if err != nil {panic(err)
}
fmt.Println("Connected to database!")defer db.Close()
}

运行可能出现如下错误:说明数据库拒绝访问,需要使用mysql_native_password插件。

 解决上面问题执行如下SQL语句:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY yourpass;
//上面输入你的密码
FLUSH PRIVILEGES;    

SQL查询

先执行如下SQL语句创建表和填入方法

create table user ( uid int primary key auto_increment,name varchar(20) default '', 
phone varchar(20) default '') engine=innodb;insert into user(name,phone) values('a','111'),('b','222'),('c','333');

1).使用QueryRow()方法进行单行查询

func (db* DB) QueryRow(query string,args ...interface{}) *Row
此方法执行一次 最多只能返回一行数据 并且直到返回值的Scan()方法被调用后才会返回
被延迟的错误,不推荐使用
package main
import("database/sql"_ "github.com/go-sql-driver/mysql""fmt"
)type User struct {Uid intName stringPhone string
}func main(){db,err :=sql.Open("mysql","root:123456@tcp(127.0.0.1:3306)/mydb")if err !=nil {fmt.Println("open error")return }fmt.Printf("type is %T\n",db)err = db.Ping()
if err != nil {panic(err)
}
fmt.Println("Connected to database!")defer db.Close()user1 :=User{}
err =db.QueryRow("select uid,name,phone from user where uid=2").Scan(&user1.Uid,&user1.Name,&user1.Phone)if err !=nil {fmt.Println("sql Query error")return}fmt.Println(user1.Uid," ",user1.Name," ",user1.Phone)
}

 2)Query()查询多行结果

user1 :=User{}
rows ,err :=db.Query("select uid,name,phone from user")//返回error和 *rowsif err !=nil {fmt.Println("sql Query error")return}defer rows.Close()//关闭ROWS 释放所有的数据库连接//循环读取结果集中的数据 储存在结构体中for rows.Next(){err =rows.Scan(&user1.Uid,&user1.Name,&user1.Phone)if err !=nil {fmt.Println("Scan error")return}fmt.Println(user1.Uid," ",user1.Name," ",user1.Phone)}

3). db.Exec(sql string) (Result,error)可以进行表数据的增删改 .

result,err :=db.Exec("insert into user(name,phone) values('d','444')")//SQL中的字符串类型用单引号  函数执行返回(result,error)类型
if err !=nil {fmt.Println("insert error")return
}lastInsertID, err := result.LastInsertId()//获得插入数据的主键部分if err !=nil {fmt.Println("get ID error")return}fmt.Println("insert success, the id is ",lastInsertID)//剩下的删和该是一样的

4)事务操作

begin()方法开启事务:func (db *DB) Begin() (*Tx,error)

Commint()提交事务: func (tx *Tx) commit () error 

Rollback()回滚事务: func (tx *Tx) Rollback() error

package main
import("database/sql"_ "github.com/go-sql-driver/mysql""fmt"
)type User struct {Uid intName stringPhone string
}func main(){db,err :=sql.Open("mysql","root:123456@tcp(127.0.0.1:3306)/mydb")if err !=nil {return }err = db.Ping()
if err != nil {panic(err)
}fmt.Println("Connected to database!")defer db.Close()tx, err :=db.Begin() //开启事务if err!=nil {if tx!=nil {tx.Rollback()}fmt.Println("begin trans failed")return }_,err1 :=tx.Exec("update user set name = 'ggg' where phone = '444'")if err1 !=nil {tx.Rollback()//执行失败 进行回滚事务fmt.Println("sal update failed")return}tx.Commit()//提交事务fmt.Println("exec transaction success!")
}

http://www.yayakq.cn/news/166531/

相关文章:

  • 胶州市网站建设网站程序文件
  • 新手想写小说怎么做网站公司做网站算什么费用
  • 银川市住房和城乡建设厅网站制作企业网站价格
  • 做网站一定要有公司吗软件开发模型着重研究的是
  • 一个网站开发团队的人员配置重庆最近的新闻大事
  • 网站页面设计论文fqapps网站建设
  • 网站建设收费标准市场室内装饰设计师国家职业标准
  • 中诺建设集团有限公司网站做网站15年
  • 营销型网站的设计框架产品经理兼职做网站报酬
  • 做淘宝券网站dw网页制做教程
  • 建设部网站221号文件做高仿包的能做网站吗
  • 专门做网站的公司虚拟空间下载
  • 怎么用dw建设网站青浦苏州网站建设
  • 天津做胎儿鉴定网站asp.net做网站的流程
  • 品牌策划公司一般有什么职位河北百度seo关键词排名
  • 南京网站制作公司南京乐识专心中国工程建设标准网站
  • 学做ps的软件的网站wordpress 页面重定向循环
  • php英文网站源码wordpress ucenter插件
  • 黄金网站大全免费2023群晖ds218+做网站
  • 宁波网站制作公司排名山东微道商网络技术有限公司
  • 网站到期如何续费山东泰安
  • 企业信息化建设方案 网站怎样建立个人网站
  • 阿凡达营销网站营销中台
  • 大冶市城乡建设局网站中国律师营销网
  • 安徽省网站肥建设网站建设旅游电子商务网站的目的
  • 网站成本费用深圳网站推广排名
  • 四平网站建设怎么选建站模板网站设计
  • 网站翻页代码网站开发周总结
  • 广东建设网 四川是什么网站微网站生成app
  • 四川建设厅网站首页凡科商城小程序登陆