Heim > Backend-Entwicklung > Golang > Einführung in den Golang-MySQL-Betrieb

Einführung in den Golang-MySQL-Betrieb

Freigeben: 2020-02-26 17:39:25
nach vorne
3044 Leute haben es durchsucht

Go (auch bekannt als Golang) ist eine von Google entwickelte statisch stark typisierte, kompilierte, gleichzeitige Programmiersprache mit Garbage-Collection-Funktionen. Im Folgenden werde ich einige Vorgänge zu MySQL aus der Spalte Go Getting Started Tutorial vorstellen.

Einführung in den Golang-MySQL-Betrieb

go betreibt die MySQL-Datenbank. Die verwendete Bibliothek ist go-sql-driver/mysql. Direkt installieren: go get

sql.DB

Die für den DB-Typ verfügbaren Funktionen sind:

1. Query(c string, args interface{}…) (*Zeilen, Fehler), häufig in SELECT-Anweisungen verwendet

2. Exec(c string, args interface{}…) (*Zeilen, Fehler), häufig verwendet mit UPDATE und INSERT

3. Prepare(c string) (*Stmt, error), andere Auch Anweisungen können verwendet werden, um die obige Anweisung auszuführen und den Stmt-Zeiger zurückzugeben

sql.Stmt

Stmt ist eine vorbereitete Anweisung, die Datenbankanweisungsoperationen ausführen kann Funktionen sind:

Exec(args interface{} …) (Ergebnis, Fehler), gibt Parameter an, führt die vorbereitete Anweisung aus und gibt dann das Gesamtergebnis der Anweisung zurück

go get -u github.com/go-sql-driver/mysql
Nach dem Login kopieren

Query(args interface{} …) ( *Rows, error), gibt Parameter an und führt die vorbereitete Anweisung aus, wobei die Zeilenergebnisse zurückgegeben werden. Beispielsweise muss die SELECT-Operation mit dieser Funktion aufgerufen werden.

sql.Rows

Rows ist die von der SQL-Anweisung zurückgegebene Tabelle. In Rows.Next() wird sie zurückgegeben wird automatisch freigegeben.

Schauen Sie sich den Quellcode an:

//...
	stmt, err := db.Perpare("INSERT INTO User(user,pwd) VALUES (?, ?)")
	if err != nil {
		panic(err)
	}
	defer stmt.Close()
	_, err := stmt.Exec("laoli", "123456")
	if err != nil {
		panic(err)
	}
//...
//...
	stmt, err := db.Perpare("DELETE FROM User")
	if err != nil {
		panic(err)
	}
	defer stmt.Close()
	_, err := stmt.Exec()
	if err != nil {
		panic(err)
	}
Nach dem Login kopieren

Beispiel:

// 源码
func (rs *Rows) Next() bool {
	var doClose, ok bool
	withLock(rs.closemu.RLocker(), func() {
		doClose, ok = rs.nextLocked()
	})
	if doClose {
		rs.Close() //在这里释放掉了
	}
	return ok
}
Nach dem Login kopieren

Für weitere Go-Sprachkenntnisse beachten Sie bitte die Spalte

Go-Sprach-Tutorial im PHP-Chinesisch Webseite.

Das obige ist der detaillierte Inhalt vonEinführung in den Golang-MySQL-Betrieb. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:csdn.net
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage