mysql

package
v0.0.0-...-54f2f68 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 28, 2018 License: BSD-3-Clause Imports: 6 Imported by: 0

Documentation

Index

Constants

View Source
const (
	COM_SLEEP byte = iota
	COM_QUIT
	COM_INIT_DB
	COM_QUERY
	COM_FIELD_LIST
	COM_CREATE_DB
	COM_DROP_DB
	COM_REFRESH
	COM_SHUTDOWN
	COM_STATISTICS
	COM_PROCESS_INFO // 10
	COM_CONNECT
	COM_PROCESS_KILL
	COM_DEBUG
	COM_PING
	COM_TIME
	COM_DELAYED_INSERT
	COM_CHANGE_USER
	COM_BINLOG_DUMP
	COM_TABLE_DUMP
	COM_CONNECT_OUT // 20
	COM_REGISTER_SLAVE
	COM_STMT_PREPARE
	COM_STMT_EXECUTE
	COM_STMT_SEND_LONG_DATA
	COM_STMT_CLOSE
	COM_STMT_RESET
	COM_SET_OPTION
	COM_STMT_FETCH
	COM_DAEMON
	COM_BINLOG_DUMP_GTID
	COM_RESET_CONNECTION
)

https://dev.mysql.com/doc/internals/en/command-phase.html

View Source
const (
	MYSQL_TYPE_DECIMAL byte = iota
	MYSQL_TYPE_TINY
	MYSQL_TYPE_SHORT
	MYSQL_TYPE_LONG
	MYSQL_TYPE_FLOAT
	MYSQL_TYPE_DOUBLE
	MYSQL_TYPE_NULL
	MYSQL_TYPE_TIMESTAMP
	MYSQL_TYPE_LONGLONG
	MYSQL_TYPE_INT24
	MYSQL_TYPE_DATE
	MYSQL_TYPE_TIME
	MYSQL_TYPE_DATETIME
	MYSQL_TYPE_YEAR
	MYSQL_TYPE_NEWDATE
	MYSQL_TYPE_VARCHAR
	MYSQL_TYPE_BIT
)
View Source
const (
	MYSQL_TYPE_JSON byte = iota + 0xf5
	MYSQL_TYPE_NEWDECIMAL
	MYSQL_TYPE_ENUM
	MYSQL_TYPE_SET
	MYSQL_TYPE_TINY_BLOB
	MYSQL_TYPE_MEDIUM_BLOB
	MYSQL_TYPE_LONG_BLOB
	MYSQL_TYPE_BLOB
	MYSQL_TYPE_VAR_STRING
	MYSQL_TYPE_STRING
	MYSQL_TYPE_GEOMETRY
)
View Source
const (
	MaxPayloadLen int = 1<<24 - 1
)

Variables

View Source
var (
	DONTESCAPE = byte(255)

	EncodeMap [256]byte
)
View Source
var ErrMalformPacket = errors.New("malform packet")

Functions

func Escape

func Escape(sql string) string

func LengthEncodedInt

func LengthEncodedInt(b []byte) (num uint64, isNull bool, n int)

func LengthEnodedString

func LengthEnodedString(b []byte) ([]byte, bool, int, error)

func ReadPacketTo

func ReadPacketTo(r io.Reader, w io.Writer) (uint8, error)

func SkipLengthEnodedString

func SkipLengthEnodedString(b []byte) (int, error)

Types

type Stmt

type Stmt struct {
	ID      uint32
	Query   string
	Params  uint16
	Columns uint16

	Args []interface{}
}

func (*Stmt) BindStmtArgs

func (s *Stmt) BindStmtArgs(nullBitmap, paramTypes, paramValues []byte) error

func (*Stmt) WriteToText

func (s *Stmt) WriteToText() []byte

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL