1、建立数据库名为: go_test_db

2、建表名为:userinfo

字段:

uid int

username varchar

language varchar

created varchar

3、对数据库操作

package main

import (
"database/sql"
"fmt"
    
_ "github.com/Go-SQL-Driver/MySQL"
) func main() {
db, err := sql.Open("mysql", "go:golang@/go_test_db?charset=utf8")
    //在这里解析一下sql.Open传的参数解析 :
  //db,err := sql.Open("mysql","登录名:登录密码@/数据库名?charset=utf8")
checkErr(err) //插入数据
stmt, err := db.Prepare("INSERT userinfo SET username=?,language =?,created=?")
checkErr(err)
res, err := stmt.Exec("haojieli", "Java", "2016-07-12")
checkErr(err)
id, err := res.LastInsertId()
checkErr(err)
fmt.Println("获取添加成功的 value=", id)<br>
//更新数据
stmt, err = db.Prepare("update userinfo set username=? where uid=?")
checkErr(err)
res, err = stmt.Exec("update later", id)
checkErr(err)
affect, err := res.RowsAffected()
checkErr(err)
fmt.Println("更新当前添加的数据,为1就是更新成功. value =", affect) //查询数据
rows, err := db.Query("SELECT * FROM userinfo")//本例子是查询userinfo表所有的数据 ,分页改变Mysql语句就可以了 ,分页语句例子:select * from userinfo limit 0,5(limit解析查看另外一篇文章)
checkErr(err)
fmt.Println("查询所有的userinfo-------------------- start")
for rows.Next() {
var uid int
var username string
var department string
var created string
err = rows.Scan(&uid, &username, &language, &created)
checkErr(err)
fmt.Print(uid, "|")
fmt.Print(username, "|")
fmt.Print(language, "|")
fmt.Println(created) }
fmt.Println("查询所有的userinfo-------------------- end")<br>
//删除数据
stmt, err = db.Prepare("delete from userinfo where uid=?")
checkErr(err)
res, err = stmt.Exec(id - 1)
checkErr(err)
fmt.Println("删除添加id的上一条数据,为1就是成功删除. value =", affect)
db.Close()
}<br><br>//检查是否有错
func checkErr(err error) {
if err != nil {
panic(err)//panic是获取到真正意义上的错误
}
}

  

博文到此结束,感谢您的观看,希望对各位读者有所帮助,如果有什么意见以及建议请在评论留言......

======祝各位读者生活愉快======

Go丨语言对MySQL数据库的增、删、改、查操作的更多相关文章

  1. Mysql基本操作语句 增-删-改-查

    增 INSERT INTO 表名(属性名1,属性名2) VALUES(值1,值2) 删 DELETE FROM <表名> [WHERE 子句] [ORDER BY 子句] [LIMIT 子 ...

  2. 怎样从C#中打开数据库并进行 增 删 改 查 操作

    首先 在C#中引用数据库的操作! (因为我们用的是SQLserver数据库,所以是SqlClient) using System.Data.SqlClient; 1:要实现对数据库的操作,我们必须先登 ...

  3. iOS sqlite3 的基本使用(增 删 改 查)

    iOS sqlite3 的基本使用(增 删 改 查) 这篇博客不会讲述太多sql语言,目的重在实现sqlite3的一些基本操作. 例:增 删 改 查 如果想了解更多的sql语言可以利用强大的互联网. ...

  4. 好用的SQL TVP~~独家赠送[增-删-改-查]的例子

    以前总是追求新东西,发现基础才是最重要的,今年主要的目标是精通SQL查询和SQL性能优化.  本系列主要是针对T-SQL的总结. [T-SQL基础]01.单表查询-几道sql查询题 [T-SQL基础] ...

  5. iOS FMDB的使用(增,删,改,查,sqlite存取图片)

    iOS FMDB的使用(增,删,改,查,sqlite存取图片) 在上一篇博客我对sqlite的基本使用进行了详细介绍... 但是在实际开发中原生使用的频率是很少的... 这篇博客我将会较全面的介绍FM ...

  6. django ajax增 删 改 查

    具于django ajax实现增 删 改 查功能 代码示例: 代码: urls.py from django.conf.urls import url from django.contrib impo ...

  7. ADO.NET 增 删 改 查

    ADO.NET:(数据访问技术)就是将C#和MSSQL连接起来的一个纽带 可以通过ADO.NET将内存中的临时数据写入到数据库中 也可以将数据库中的数据提取到内存中供程序调用 ADO.NET所有数据访 ...

  8. MVC EF 增 删 改 查

    using System;using System.Collections.Generic;using System.Linq;using System.Web;//using System.Data ...

  9. MongoDB增 删 改 查

    增 增加单篇文档 > db.stu.insert({sn:'001', name:'lisi'}) WriteResult({ "nInserted" : 1 }) > ...

随机推荐

  1. Session对象失效的客户端解决方法

    ASP(Active Server Pages)技术的Session对象用于存储用户在对话期间的私有信息.当前用户的Session对象中定义的变量和对象能在页面之间共享,但是不能为应用中其他用户所访问 ...

  2. 安装 r 里的 igraph 报错

    转载来源:http://genek.tv/article/40 1186 0 0 安装 r 里的 igraph 报错: foreign-graphml.c: In function ‘igraph_w ...

  3. Java的Executor框架和线程池实现原理

    Java的Executor框架 1,Executor接口 public interface Executor { void execute(Runnable command); } Executor接 ...

  4. XJTU Summer Holiday Test 1(Divisibility by Eight-8的倍数)

    C - Divisibility by Eight Time Limit:2000MS     Memory Limit:262144KB     64bit IO Format:%I64d & ...

  5. 浅谈WPF本质中的数据和行为

    WPF缩写为Windows Presentation Foundation的缩写,本文所要谈的就是WPF本质中的数据和行为,希望通过本文能对大家了解WPF本质有所帮助. 如果自己来做一个UI框架,我们 ...

  6. jqPaginator-master | kkpager-master 这两个分页插件的使用方法

    首先:百度"分页插件" 就会 找到这条链接: url=X8P3UpOM-6ceSfjdngX0oh9cNmVwSDy94CxKqWIazhyZ7If4S8wgpPqyEGUhk2t ...

  7. 【BZOJ4976】宝石镶嵌 DP

    [BZOJ4976]宝石镶嵌 Description 魔法师小Q拥有n个宝石,每个宝石的魔力依次为w_1,w_2,...,w_n.他想把这些宝石镶嵌到自己的法杖上,来提升法杖的威力.不幸的是,小Q的法 ...

  8. 开发过程中,本地分支和远程跟踪分支发生了diverge

    1 git基本概念梳理 1.1 git的工作目录.暂存区和HEAD指向的版本库以及branch的概念 一个branch就是整个产品的一套代码,而工作目录中就是存放的本branch最新的代码,HEAD指 ...

  9. java常用的基础容器

    1 Vector and ArrayList 它们都是可以随机访问的.它们的区别是Vector是线程安全的,而ArrayList不是线程安全的. 2 HashMap的底层实现机制 2.1 底层数据结构 ...

  10. 关于gcc

    1 the architecture of gcc 2 自己编译gcc时的 --build --host --target选项的含义和用法 <1> --build 执行本次的gcc编译的主 ...