OSDN Git Service

versoin1.1.9 (#594)
[bytom/vapor.git] / vendor / github.com / go-sql-driver / mysql / const.go
1 // Go MySQL Driver - A MySQL-Driver for Go's database/sql package
2 //
3 // Copyright 2012 The Go-MySQL-Driver Authors. All rights reserved.
4 //
5 // This Source Code Form is subject to the terms of the Mozilla Public
6 // License, v. 2.0. If a copy of the MPL was not distributed with this file,
7 // You can obtain one at http://mozilla.org/MPL/2.0/.
8
9 package mysql
10
11 const (
12         defaultAuthPlugin       = "mysql_native_password"
13         defaultMaxAllowedPacket = 4 << 20 // 4 MiB
14         minProtocolVersion      = 10
15         maxPacketSize           = 1<<24 - 1
16         timeFormat              = "2006-01-02 15:04:05.999999"
17 )
18
19 // MySQL constants documentation:
20 // http://dev.mysql.com/doc/internals/en/client-server-protocol.html
21
22 const (
23         iOK           byte = 0x00
24         iAuthMoreData byte = 0x01
25         iLocalInFile  byte = 0xfb
26         iEOF          byte = 0xfe
27         iERR          byte = 0xff
28 )
29
30 // https://dev.mysql.com/doc/internals/en/capability-flags.html#packet-Protocol::CapabilityFlags
31 type clientFlag uint32
32
33 const (
34         clientLongPassword clientFlag = 1 << iota
35         clientFoundRows
36         clientLongFlag
37         clientConnectWithDB
38         clientNoSchema
39         clientCompress
40         clientODBC
41         clientLocalFiles
42         clientIgnoreSpace
43         clientProtocol41
44         clientInteractive
45         clientSSL
46         clientIgnoreSIGPIPE
47         clientTransactions
48         clientReserved
49         clientSecureConn
50         clientMultiStatements
51         clientMultiResults
52         clientPSMultiResults
53         clientPluginAuth
54         clientConnectAttrs
55         clientPluginAuthLenEncClientData
56         clientCanHandleExpiredPasswords
57         clientSessionTrack
58         clientDeprecateEOF
59 )
60
61 const (
62         comQuit byte = iota + 1
63         comInitDB
64         comQuery
65         comFieldList
66         comCreateDB
67         comDropDB
68         comRefresh
69         comShutdown
70         comStatistics
71         comProcessInfo
72         comConnect
73         comProcessKill
74         comDebug
75         comPing
76         comTime
77         comDelayedInsert
78         comChangeUser
79         comBinlogDump
80         comTableDump
81         comConnectOut
82         comRegisterSlave
83         comStmtPrepare
84         comStmtExecute
85         comStmtSendLongData
86         comStmtClose
87         comStmtReset
88         comSetOption
89         comStmtFetch
90 )
91
92 // https://dev.mysql.com/doc/internals/en/com-query-response.html#packet-Protocol::ColumnType
93 type fieldType byte
94
95 const (
96         fieldTypeDecimal fieldType = iota
97         fieldTypeTiny
98         fieldTypeShort
99         fieldTypeLong
100         fieldTypeFloat
101         fieldTypeDouble
102         fieldTypeNULL
103         fieldTypeTimestamp
104         fieldTypeLongLong
105         fieldTypeInt24
106         fieldTypeDate
107         fieldTypeTime
108         fieldTypeDateTime
109         fieldTypeYear
110         fieldTypeNewDate
111         fieldTypeVarChar
112         fieldTypeBit
113 )
114 const (
115         fieldTypeJSON fieldType = iota + 0xf5
116         fieldTypeNewDecimal
117         fieldTypeEnum
118         fieldTypeSet
119         fieldTypeTinyBLOB
120         fieldTypeMediumBLOB
121         fieldTypeLongBLOB
122         fieldTypeBLOB
123         fieldTypeVarString
124         fieldTypeString
125         fieldTypeGeometry
126 )
127
128 type fieldFlag uint16
129
130 const (
131         flagNotNULL fieldFlag = 1 << iota
132         flagPriKey
133         flagUniqueKey
134         flagMultipleKey
135         flagBLOB
136         flagUnsigned
137         flagZeroFill
138         flagBinary
139         flagEnum
140         flagAutoIncrement
141         flagTimestamp
142         flagSet
143         flagUnknown1
144         flagUnknown2
145         flagUnknown3
146         flagUnknown4
147 )
148
149 // http://dev.mysql.com/doc/internals/en/status-flags.html
150 type statusFlag uint16
151
152 const (
153         statusInTrans statusFlag = 1 << iota
154         statusInAutocommit
155         statusReserved // Not in documentation
156         statusMoreResultsExists
157         statusNoGoodIndexUsed
158         statusNoIndexUsed
159         statusCursorExists
160         statusLastRowSent
161         statusDbDropped
162         statusNoBackslashEscapes
163         statusMetadataChanged
164         statusQueryWasSlow
165         statusPsOutParams
166         statusInTransReadonly
167         statusSessionStateChanged
168 )
169
170 const (
171         cachingSha2PasswordRequestPublicKey          = 2
172         cachingSha2PasswordFastAuthSuccess           = 3
173         cachingSha2PasswordPerformFullAuthentication = 4
174 )