github.com/hellobchain/third_party@v0.0.0-20230331131523-deb0478a2e52/go-sql-driver/mysql/const.go (about)

     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  )