golang基礎-go對資料庫的增刪改查操作
增加
首先看資料庫的結構:
mysql> desc person;
+----------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+----------+--------------+------+-----+---------+----------------+
| user_id | int(255) | NO | PRI | NULL | auto_ increment |
| username | varchar(255) | NO | | NULL | |
| sex | varchar(255) | YES | | NULL | |
| email | varchar(255) | YES | | NULL | |
+----------+--------------+------+-----+---------+----------------+
4 rows in set (0.05 sec)
package main
import (
"fmt"
_"github.com/go-sql-driver/mysql"
"github.com/jmoiron/sqlx"
)
type Person struct {
UserId int `db:"user_id"`
Username string `db:"username"`
Sex string `db:"sex"`
Email string `db:"email"`
}
type Place struct {
Country string `db:"country"`
City string `db:"city"`
TelCode int `db:"telcode"`
}
var Db *sqlx.DB
func init() {
database, err := sqlx.Open("mysql", "root:[email protected](127.0.0.1:3306)/safly")
if err != nil {
fmt.Println("open mysql failed,", err)
return
}
Db = database
}
func main() {
r, err := Db.Exec("insert into person(username, sex, email)values(?, ?, ?)", "stu001", "man", "[email protected]")
if err != nil {
fmt.Println("exec failed, ", err)
return
}
id, err := r.LastInsertId()
if err != nil {
fmt.Println("exec failed, ", err)
return
}
fmt.Println("insert succ:", id)
}
mysql> select * from person;
+---------+----------+------+--------------+
| user_id | username | sex | email |
+---------+----------+------+--------------+
| 1 | stu001 | man | [email protected] |
+---------+----------+------+--------------+
1 row in set (0.00 sec)
查詢
package main
import (
"fmt"
_ "github.com/go-sql-driver/mysql"
"github.com/jmoiron/sqlx"
)
type Person struct {
UserId int `db:"user_id"`
Username string `db:"username"`
Sex string `db:"sex"`
Email string `db:"email"`
}
type Place struct {
Country string `db:"country"`
City string `db:"city"`
TelCode int `db:"telcode"`
}
var Db *sqlx.DB
func init() {
database, err := sqlx.Open("mysql", "root:[email protected](127.0.0.1:3306)/safly")
if err != nil {
fmt.Println("open mysql failed,", err)
return
}
Db = database
}
func main() {
var person []Person
err := Db.Select(&person, "select user_id, username, sex, email from person where user_id=?", 1)
if err != nil {
fmt.Println("exec failed, ", err)
return
}
fmt.Println("select succ:", person)
}
輸出如下:
PS E:\golang\go_pro\src\safly> go run demo.go
select succ: [{1 stu001 man [email protected]}]
PS E:\golang\go_pro\src\safly>
修改
package main
import (
"fmt"
_ "github.com/go-sql-driver/mysql"
"github.com/jmoiron/sqlx"
)
type Person struct {
UserId int `db:"user_id"`
Username string `db:"username"`
Sex string `db:"sex"`
Email string `db:"email"`
}
type Place struct {
Country string `db:"country"`
City string `db:"city"`
TelCode int `db:"telcode"`
}
var Db *sqlx.DB
func init() {
database, err := sqlx.Open("mysql", "root:[email protected](127.0.0.1:3306)/safly")
if err != nil {
fmt.Println("open mysql failed,", err)
return
}
Db = database
}
func main() {
_, err := Db.Exec("update person set username=? where user_id=?", "stu0001", 1)
if err != nil {
fmt.Println("exec failed, ", err)
return
}
}
mysql> select * from person;
+---------+----------+------+--------------+
| user_id | username | sex | email |
+---------+----------+------+--------------+
| 1 | stu0001 | man | [email protected] |
+---------+----------+------+--------------+
1 row in set (0.00 sec)
刪除
package main
import (
"fmt"
_ "github.com/go-sql-driver/mysql"
"github.com/jmoiron/sqlx"
)
type Person struct {
UserId int `db:"user_id"`
Username string `db:"username"`
Sex string `db:"sex"`
Email string `db:"email"`
}
type Place struct {
Country string `db:"country"`
City string `db:"city"`
TelCode int `db:"telcode"`
}
var Db *sqlx.DB
func init() {
database, err := sqlx.Open("mysql", "root:[email protected](127.0.0.1:3306)/safly")
if err != nil {
fmt.Println("open mysql failed,", err)
return
}
Db = database
}
func main() {
_, err := Db.Exec("delete from person where user_id=?", 1)
if err != nil {
fmt.Println("exec failed, ", err)
return
}
fmt.Println("delete succ")
}
輸出如下:
mysql> select * from person;
Empty set (0.00 sec)
相關推薦
Java對資料庫增刪改查操作
基於前面練習所出現的問題對其進行修改,可以成功的對資料庫資訊進行增刪改查四項基本操作。 以下是部分修改的程式碼,整體的程式碼詳見前天的練習2。初始介面就不說了。 首先來到初始介面,點選瀏覽,會出現資料庫的資訊。 前面所出現的問題是,點選瀏覽之後,不斷的重複出現資訊新
golang基礎-go對資料庫的增刪改查操作
增加 查詢 修改 刪除 增加 首先看資料庫的結構: mysql> desc person; +----------+--------------+------+-----+---------+-------------
JavaWeb程序利用Servlet的對SQLserver增刪改查操作
tag struct 連接失敗 -1 rop quest map rom stream 聲明:學了幾天終於將增刪改查的操作掌握了,也發現了一些問題,所以總結一下. 重點:操作數據庫主要用的是SQL語句跟其他無關. 一:前提知識:PreparedStatement
1112_Springboot+Mybaits+Mysql資料庫增刪改查操作——上路
Springboot+Mybaits+Mysql資料庫增刪改查操作 瘋人願的瘋言瘋語 2017.11.03 16:37* 字數 754 閱讀 414評論 0喜歡 4 最近在老師的建議下,參加了一個學習小組,主要了解Spring Cloud微服務架構的應用開發,在初次搭建好環境後,這
Python之MySQL資料庫增刪改查操作
Python之MySQL資料庫操作 Python之連線資料庫 import pymysql # 獲取連線物件conn,建立資料庫的連線 def get_conn(): conn =
HTML5本地儲存indexDB新建資料庫、資料庫增刪改查操作
var content = null; // 本演示使用的資料庫名稱 var dbName = 'project'; // 版本 var version = 1; // 資料庫資料結果 var db; // 開啟資料庫 var DBO
MyBatis框架基於Annotation註解的資料庫增刪改查操作
程式碼: User.java package com.bean; import java.io.Serializable; public class User implements Serial
mongo資料庫增刪改查操作
/*** 新建資料庫,。表 。,資料*/Mongo mo=new Mongo("ip地址");db=mo.getDB("temp");//新建一個庫 如果有則在此資料庫中操作,如果沒有新建此資料庫DBCollection dbc=db.getCollection("His_
014-Go Web 對pg增刪改查測試
sca AC %d ons password tab exe pack git 1:data/data.go package data import( "fmt" "database/sql" _"github.com/lib/pq" ) co
python 連線oracle資料庫對錶進行增刪改查操作
Python 建立連線oracle資料庫的三種方式: 方式一:使用者名稱、密碼和監聽分開寫 import cx_Oracle db=cx_Oracle.connect('username/[email protected]/orcl') db.close()
ASP.NET 使用類對資料庫進行增刪改查操作
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Dat
MYSQL資料庫 增刪改查基礎語句
語法:create table tablename(column_name_1 column_type_1 constraints,column_name_2 column_type_2 constraints,column_name_3 column_type_3 constraints)
使用sql標籤來實現對資料庫當中記錄增刪改查操作
1:實現向資料庫當中進行資料的插入操作 <%@ page language="java" contentType="text/html; charset=utf-8" pageEncod
MyBatis對資料庫的增刪改查操作,簡單示例
之前一直實用Hibernate進行開發,最近公司在使用Mybatis,根據網上的示例,做了一個簡單的Demo,以便日後複習 使用XMl方式對映sql語句 總體結構如下圖 首先是建立一個工程,然後匯入兩個jar包,然後編寫mybatis的jdbc配置檔案Configu
Mybatis(一)—實現對資料庫的增刪改查操作
1.Mybatis簡介 MyBatis 本是apache的一個開源專案iBatis, 2010年這個專案由apache software foundation 遷移到了google code,並且改名為MyBatis 。2013年11月遷移到Github。
用python3對資料庫mysql進行建立庫、表、增刪改查操作
import pymysql import sys # python mysql 建立庫、表增刪改查標準語句 print('----------------------------') print('載入mysql模組完成') con = pymysql.connect(ho
基於ajax的三層,實現資料庫增刪改查基礎(一DAL)
三層的組成就是DAL,BLL,UI層和Model層。其中的DAL層是與資料庫連結,需要引用Model層,進行對資料的操作,但我們一般在此層不進行資料的處理。BLL層負責引用DAL和MODEL層,在
使用Spring框架下的JdbcTemplate 完成對資料庫的增刪改查操作
還記得以前做的畢業設計是用的C3P0包,而當時並沒有使用到三大框架。現在畢業工作了,但是感覺要學的比工作深一層,一是提高自己的能力,二是以防萬一要換工作了,起碼掌握的東西能支撐自己以後的工作。不過這時候感覺自己就像java萌新(不,其實就是。) 現在第一篇技術相關的文章就寫
第六章:Django對mySQL資料庫的增刪改查操作
上一章中介紹了用Django連線MySQL資料庫,本章介紹最基本的增刪改查操作,繼續利用上一章建立的表 一、新增資料 1、引入資料模組 from models import Blog
利用反射實現對sqlite3資料庫的crud(增刪改查)操作的一個baseAndroidDao封裝,安卓開發中
1.說明 博主主要是做java web後臺這一塊,但是偶爾做點安卓,發現安卓上沒有像Hibernate這種orm框架(....其實也沒有去找), 又覺得每次增刪改查都自己寫程式碼的話肯定是非常麻煩的,所以就寫了一個簡單的baseAndroidDao來封裝一些簡單的增刪改查操