const.go 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130
  1. // Go MySQL Driver - A MySQL-Driver for Go's database/sql package
  2. //
  3. // Copyright 2012 Julien Schmidt. All rights reserved.
  4. // http://www.julienschmidt.com
  5. //
  6. // This Source Code Form is subject to the terms of the Mozilla Public
  7. // License, v. 2.0. If a copy of the MPL was not distributed with this file,
  8. // You can obtain one at http://mozilla.org/MPL/2.0/.
  9. package mysql
  10. // Constants documentation:
  11. // http://dev.mysql.com/doc/internals/en/client-server-protocol.html
  12. const (
  13. MIN_PROTOCOL_VERSION = 10
  14. MAX_PACKET_SIZE = 1<<24 - 1
  15. TIME_FORMAT = "2006-01-02 15:04:05"
  16. )
  17. type ClientFlag uint32
  18. const (
  19. CLIENT_LONG_PASSWORD ClientFlag = 1 << iota
  20. CLIENT_FOUND_ROWS
  21. CLIENT_LONG_FLAG
  22. CLIENT_CONNECT_WITH_DB
  23. CLIENT_NO_SCHEMA
  24. CLIENT_COMPRESS
  25. CLIENT_ODBC
  26. CLIENT_LOCAL_FILES
  27. CLIENT_IGNORE_SPACE
  28. CLIENT_PROTOCOL_41
  29. CLIENT_INTERACTIVE
  30. CLIENT_SSL
  31. CLIENT_IGNORE_SIGPIPE
  32. CLIENT_TRANSACTIONS
  33. CLIENT_RESERVED
  34. CLIENT_SECURE_CONN
  35. CLIENT_MULTI_STATEMENTS
  36. CLIENT_MULTI_RESULTS
  37. )
  38. type commandType byte
  39. const (
  40. COM_QUIT commandType = iota + 1
  41. COM_INIT_DB
  42. COM_QUERY
  43. COM_FIELD_LIST
  44. COM_CREATE_DB
  45. COM_DROP_DB
  46. COM_REFRESH
  47. COM_SHUTDOWN
  48. COM_STATISTICS
  49. COM_PROCESS_INFO
  50. COM_CONNECT
  51. COM_PROCESS_KILL
  52. COM_DEBUG
  53. COM_PING
  54. COM_TIME
  55. COM_DELAYED_INSERT
  56. COM_CHANGE_USER
  57. COM_BINLOG_DUMP
  58. COM_TABLE_DUMP
  59. COM_CONNECT_OUT
  60. COM_REGISTER_SLAVE
  61. COM_STMT_PREPARE
  62. COM_STMT_EXECUTE
  63. COM_STMT_SEND_LONG_DATA
  64. COM_STMT_CLOSE
  65. COM_STMT_RESET
  66. COM_SET_OPTION
  67. COM_STMT_FETCH
  68. )
  69. type FieldType byte
  70. const (
  71. FIELD_TYPE_DECIMAL FieldType = iota
  72. FIELD_TYPE_TINY
  73. FIELD_TYPE_SHORT
  74. FIELD_TYPE_LONG
  75. FIELD_TYPE_FLOAT
  76. FIELD_TYPE_DOUBLE
  77. FIELD_TYPE_NULL
  78. FIELD_TYPE_TIMESTAMP
  79. FIELD_TYPE_LONGLONG
  80. FIELD_TYPE_INT24
  81. FIELD_TYPE_DATE
  82. FIELD_TYPE_TIME
  83. FIELD_TYPE_DATETIME
  84. FIELD_TYPE_YEAR
  85. FIELD_TYPE_NEWDATE
  86. FIELD_TYPE_VARCHAR
  87. FIELD_TYPE_BIT
  88. )
  89. const (
  90. FIELD_TYPE_NEWDECIMAL FieldType = iota + 0xf6
  91. FIELD_TYPE_ENUM
  92. FIELD_TYPE_SET
  93. FIELD_TYPE_TINY_BLOB
  94. FIELD_TYPE_MEDIUM_BLOB
  95. FIELD_TYPE_LONG_BLOB
  96. FIELD_TYPE_BLOB
  97. FIELD_TYPE_VAR_STRING
  98. FIELD_TYPE_STRING
  99. FIELD_TYPE_GEOMETRY
  100. )
  101. type FieldFlag uint16
  102. const (
  103. FLAG_NOT_NULL FieldFlag = 1 << iota
  104. FLAG_PRI_KEY
  105. FLAG_UNIQUE_KEY
  106. FLAG_MULTIPLE_KEY
  107. FLAG_BLOB
  108. FLAG_UNSIGNED
  109. FLAG_ZEROFILL
  110. FLAG_BINARY
  111. FLAG_ENUM
  112. FLAG_AUTO_INCREMENT
  113. FLAG_TIMESTAMP
  114. FLAG_SET
  115. FLAG_UNKNOWN_1
  116. FLAG_UNKNOWN_2
  117. FLAG_UNKNOWN_3
  118. FLAG_UNKNOWN_4
  119. )