Julien Schmidt | b8ae1f2 | 2012-05-04 02:19:16 | [diff] [blame] | 1 | // Go MySQL Driver - A MySQL-Driver for Go's database/sql package |
| 2 | // |
Julien Schmidt | ff97004 | 2013-09-13 18:36:04 | [diff] [blame] | 3 | // Copyright 2012 The Go-MySQL-Driver Authors. All rights reserved. |
Julien Schmidt | 9454eee | 2013-02-28 03:34:16 | [diff] [blame] | 4 | // |
Julien Schmidt | b8ae1f2 | 2012-05-04 02:19:16 | [diff] [blame] | 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/. |
Julien Schmidt | 04d9043 | 2012-10-29 14:25:28 | [diff] [blame] | 8 | |
Julien Schmidt | b8ae1f2 | 2012-05-04 02:19:16 | [diff] [blame] | 9 | package mysql |
| 10 | |
Julien Schmidt | b8ae1f2 | 2012-05-04 02:19:16 | [diff] [blame] | 11 | const ( |
Julien Schmidt | d1deaee | 2013-03-06 02:06:50 | [diff] [blame] | 12 | minProtocolVersion byte = 10 |
Julien Schmidt | e9a3f83 | 2013-03-19 06:30:59 | [diff] [blame] | 13 | maxPacketSize = 1<<24 - 1 |
| 14 | timeFormat = "2006-01-02 15:04:05" |
Julien Schmidt | b8ae1f2 | 2012-05-04 02:19:16 | [diff] [blame] | 15 | ) |
| 16 | |
Julien Schmidt | 9454eee | 2013-02-28 03:34:16 | [diff] [blame] | 17 | // MySQL constants documentation: |
| 18 | // http://dev.mysql.com/doc/internals/en/client-server-protocol.html |
| 19 | |
Julien Schmidt | 6a6eac9 | 2013-03-16 03:41:22 | [diff] [blame] | 20 | const ( |
Julien Schmidt | 5b516b3 | 2013-03-20 00:07:23 | [diff] [blame] | 21 | iOK byte = 0x00 |
| 22 | iLocalInFile byte = 0xfb |
| 23 | iEOF byte = 0xfe |
| 24 | iERR byte = 0xff |
Julien Schmidt | 6a6eac9 | 2013-03-16 03:41:22 | [diff] [blame] | 25 | ) |
| 26 | |
Julien Schmidt | d1deaee | 2013-03-06 02:06:50 | [diff] [blame] | 27 | type clientFlag uint32 |
Julien Schmidt | b8ae1f2 | 2012-05-04 02:19:16 | [diff] [blame] | 28 | |
| 29 | const ( |
Julien Schmidt | d1deaee | 2013-03-06 02:06:50 | [diff] [blame] | 30 | clientLongPassword clientFlag = 1 << iota |
| 31 | clientFoundRows |
| 32 | clientLongFlag |
| 33 | clientConnectWithDB |
| 34 | clientNoSchema |
| 35 | clientCompress |
| 36 | clientODBC |
| 37 | clientLocalFiles |
| 38 | clientIgnoreSpace |
| 39 | clientProtocol41 |
| 40 | clientInteractive |
| 41 | clientSSL |
| 42 | clientIgnoreSIGPIPE |
| 43 | clientTransactions |
| 44 | clientReserved |
| 45 | clientSecureConn |
| 46 | clientMultiStatements |
| 47 | clientMultiResults |
Julien Schmidt | b8ae1f2 | 2012-05-04 02:19:16 | [diff] [blame] | 48 | ) |
| 49 | |
Julien Schmidt | b8ae1f2 | 2012-05-04 02:19:16 | [diff] [blame] | 50 | const ( |
Julien Schmidt | e9a3f83 | 2013-03-19 06:30:59 | [diff] [blame] | 51 | comQuit byte = iota + 1 |
Julien Schmidt | d1deaee | 2013-03-06 02:06:50 | [diff] [blame] | 52 | comInitDB |
| 53 | comQuery |
| 54 | comFieldList |
| 55 | comCreateDB |
| 56 | comDropDB |
| 57 | comRefresh |
| 58 | comShutdown |
| 59 | comStatistics |
| 60 | comProcessInfo |
| 61 | comConnect |
| 62 | comProcessKill |
| 63 | comDebug |
| 64 | comPing |
| 65 | comTime |
| 66 | comDelayedInsert |
| 67 | comChangeUser |
| 68 | comBinlogDump |
| 69 | comTableDump |
| 70 | comConnectOut |
| 71 | comRegiserSlave |
| 72 | comStmtPrepare |
| 73 | comStmtExecute |
| 74 | comStmtSendLongData |
| 75 | comStmtClose |
| 76 | comStmtReset |
| 77 | comSetOption |
| 78 | comStmtFetch |
Julien Schmidt | b8ae1f2 | 2012-05-04 02:19:16 | [diff] [blame] | 79 | ) |
| 80 | |
Julien Schmidt | b8ae1f2 | 2012-05-04 02:19:16 | [diff] [blame] | 81 | const ( |
Julien Schmidt | d1deaee | 2013-03-06 02:06:50 | [diff] [blame] | 82 | fieldTypeDecimal byte = iota |
| 83 | fieldTypeTiny |
| 84 | fieldTypeShort |
| 85 | fieldTypeLong |
| 86 | fieldTypeFloat |
| 87 | fieldTypeDouble |
| 88 | fieldTypeNULL |
| 89 | fieldTypeTimestamp |
| 90 | fieldTypeLongLong |
| 91 | fieldTypeInt24 |
| 92 | fieldTypeDate |
| 93 | fieldTypeTime |
| 94 | fieldTypeDateTime |
| 95 | fieldTypeYear |
| 96 | fieldTypeNewDate |
| 97 | fieldTypeVarChar |
| 98 | fieldTypeBit |
Julien Schmidt | b8ae1f2 | 2012-05-04 02:19:16 | [diff] [blame] | 99 | ) |
| 100 | const ( |
Julien Schmidt | d1deaee | 2013-03-06 02:06:50 | [diff] [blame] | 101 | fieldTypeNewDecimal byte = iota + 0xf6 |
| 102 | fieldTypeEnum |
| 103 | fieldTypeSet |
| 104 | fieldTypeTinyBLOB |
| 105 | fieldTypeMediumBLOB |
| 106 | fieldTypeLongBLOB |
| 107 | fieldTypeBLOB |
| 108 | fieldTypeVarString |
| 109 | fieldTypeString |
| 110 | fieldTypeGeometry |
Julien Schmidt | b8ae1f2 | 2012-05-04 02:19:16 | [diff] [blame] | 111 | ) |
| 112 | |
Julien Schmidt | d1deaee | 2013-03-06 02:06:50 | [diff] [blame] | 113 | type fieldFlag uint16 |
Julien Schmidt | b8ae1f2 | 2012-05-04 02:19:16 | [diff] [blame] | 114 | |
| 115 | const ( |
Julien Schmidt | d1deaee | 2013-03-06 02:06:50 | [diff] [blame] | 116 | flagNotNULL fieldFlag = 1 << iota |
| 117 | flagPriKey |
| 118 | flagUniqueKey |
| 119 | flagMultipleKey |
| 120 | flagBLOB |
| 121 | flagUnsigned |
| 122 | flagZeroFill |
| 123 | flagBinary |
| 124 | flagEnum |
| 125 | flagAutoIncrement |
| 126 | flagTimestamp |
| 127 | flagSet |
| 128 | flagUnknown1 |
| 129 | flagUnknown2 |
| 130 | flagUnknown3 |
| 131 | flagUnknown4 |
Julien Schmidt | b8ae1f2 | 2012-05-04 02:19:16 | [diff] [blame] | 132 | ) |