123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107 |
- // Package mysql is a MySQL Client API written entirely in Go without any external dependences.
- package mysql
- import (
- "net"
- "time"
- )
- // ConnCommon is a common interface for the connection.
- // See mymysql/native for method documentation.
- type ConnCommon interface {
- Start(sql string, params ...interface{}) (Result, error)
- Prepare(sql string) (Stmt, error)
- Ping() error
- ThreadId() uint32
- Escape(txt string) string
- Query(sql string, params ...interface{}) ([]Row, Result, error)
- QueryFirst(sql string, params ...interface{}) (Row, Result, error)
- QueryLast(sql string, params ...interface{}) (Row, Result, error)
- }
- // Dialer can be used to dial connections to MySQL. If Dialer returns (nil, nil)
- // the hook is skipped and normal dialing proceeds.
- type Dialer func(proto, laddr, raddr string, timeout time.Duration) (net.Conn, error)
- // Conn represents connection to the MySQL server.
- // See mymysql/native for method documentation.
- type Conn interface {
- ConnCommon
- Clone() Conn
- SetTimeout(time.Duration)
- Connect() error
- NetConn() net.Conn
- SetDialer(Dialer)
- Close() error
- IsConnected() bool
- Reconnect() error
- Use(dbname string) error
- Register(sql string)
- SetMaxPktSize(new_size int) int
- NarrowTypeSet(narrow bool)
- FullFieldInfo(full bool)
- Status() ConnStatus
- Credentials() (user, passwd string)
- Begin() (Transaction, error)
- }
- // Transaction represents MySQL transaction.
- // See mymysql/native for method documentation.
- type Transaction interface {
- ConnCommon
- Commit() error
- Rollback() error
- Do(st Stmt) Stmt
- IsValid() bool
- }
- // Stmt represents MySQL prepared statement.
- // See mymysql/native for method documentation.
- type Stmt interface {
- Bind(params ...interface{})
- Run(params ...interface{}) (Result, error)
- Delete() error
- Reset() error
- SendLongData(pnum int, data interface{}, pkt_size int) error
- Fields() []*Field
- NumParam() int
- WarnCount() int
- Exec(params ...interface{}) ([]Row, Result, error)
- ExecFirst(params ...interface{}) (Row, Result, error)
- ExecLast(params ...interface{}) (Row, Result, error)
- }
- // Result represents one MySQL result set.
- // See mymysql/native for method documentation.
- type Result interface {
- StatusOnly() bool
- ScanRow(Row) error
- GetRow() (Row, error)
- MoreResults() bool
- NextResult() (Result, error)
- Fields() []*Field
- Map(string) int
- Message() string
- AffectedRows() uint64
- InsertId() uint64
- WarnCount() int
- MakeRow() Row
- GetRows() ([]Row, error)
- End() error
- GetFirstRow() (Row, error)
- GetLastRow() (Row, error)
- }
- // New can be used to establish a connection. It is set by imported engine
- // (see mymysql/native, mymysql/thrsafe).
- var New func(proto, laddr, raddr, user, passwd string, db ...string) Conn
|