Ne'In mysql bağlanmak için önerilen yol?
Git bir MySQL veritabanına bağlanmak için güvenilir bir çözüm arıyorum. Bazı kütüphaneler görmüştüm ama zor bütünlüğü ve mevcut bakım farklı durumları belirlemek için. Karmaşık ihtiyaçları yok, ama insanlara güvenmek ne kadar olduğunu, veya en standart çözüm MySQL bağlanmak için ne olduğunu bilmek istiyorum.
CEVAP
Birkaç sürücü kullanılabilir ama sadece database/sql API uygulamak o kadar düşünmelisiniz
- temiz ve verimli bir sözdizimi sağlar
- daha sonra kodunuzu, ithalat ve Bağlantı ayrı değiştirmeden sürücüsü değiştirebilirsiniz sağlar.
Hızlı ve güvenilir iki sürücü MySQL için kullanılabilir :
Üretim ikisini de kullandım, programlar aydır çalışan hatasız bağlantı millions numaraları.
Diğer SQL veritabanı sürücüleri are listed on go-wiki.
MyMySQL kullanırken ithalat :
import (
"database/sql"
_ "github.com/ziutek/mymysql/godrv"
)
Kullanarak MySQL-Sürücü gittiğinde alma :
import (
"database/sql"
_ "github.com/go-sql-driver/mysql"
)
Ve kullanarak MyMySQL bağlayan kapanış :
con, err := sql.Open("mymysql", database "/" user "/" password)
defer con.Close()
// here you can use the connection, it will be closed when function returns
Ve kullanarak bağlanma kapanış-MySQL-Sürücü Gidin :
con, err := sql.Open("mysql", store.user ":" store.password "@/" store.database)
defer con.Close()
Seç bir satır :
row := con.QueryRow("select mdpr, x, y, z from sometable where id=?", id)
cb := new(SomeThing)
err := row.Scan(&cb.Mdpr, &cb.X, &cb.Y, &cb.Z)
Birden çok satır seçmek ve sonuçları şöyle: bir dizi inşa
rows, err := con.Query("select a, b from partage where p1=? and p2=?", p1, p2)
if err != nil { /* error handling */}
partages := make([]*Partage, 0, 10)
var ida, idb uint
for rows.Next() {
err = rows.Scan(&ida, &idb)
if err != nil { /* error handling */}
partages = append(partages, &Partage{ida, idb})
}
Ekle :
_, err = con.Exec("insert into tbl (id, mdpr, isok) values (?, ?, 1)", id, mdpr)
MySQL ile çalışmak keyifli bir deneyim olduğunu görürsünüz. benaslabir sorun vardı, benim sunucuları hata veya sızıntı olmadan ay sürüyor. Çok fonksiyonu sadece bağımsız değişken bir dizi alır aslında birçok dilde sıkıcı bir görev hafifletmek.
Not Eğer gelecekte ihtiyacınız için kullanmak başka bir MySQL sürücüsü, sadece değiştirmek iki satırı tek seferde dosya : çizgi yapmak ithalat ve hat açılış bağlantı.
Host 'xxx.xx.xxx.' bu MySQL ...
Nasıl Sanal Serseri içinde Mysql Sunuc...
Nasıl MySQL kullanıcı hesaplarının bir...
Hangi MySQL boolean değerleri saklamak...
Nasıl Python ile MySQL Veritabanına ba...