diff options
author | unknown <monty@mashka.mysql.fi> | 2003-05-26 19:01:20 +0300 |
---|---|---|
committer | unknown <monty@mashka.mysql.fi> | 2003-05-26 19:01:20 +0300 |
commit | 5d3eec14dd3e8b2e4656e5559114650bee54a5e6 (patch) | |
tree | 8384ed6e6835d6903702a8f44da157d99f0ff97c /Docs | |
parent | 3565727359aaea5f2fab3740d71d36fb9015f77a (diff) | |
download | mariadb-git-5d3eec14dd3e8b2e4656e5559114650bee54a5e6.tar.gz |
New 4.1 protocol; SQLSTATE, CLIENT_MULTI_RESULTS, client character set
Docs/internals.texi:
Updated protocol information
include/mysql.h:
Added catalog to MYSQL_FIELD
Added sqlstate handling to protocol
include/mysql_com.h:
New 4.1 protocol
libmysql/libmysql.c:
Added sqlstate handling
Added CLIENT_MULTI_RESULTS
sql/field.cc:
Indentation cleanup
sql/field.h:
Indentation cleanup
sql/mysql_priv.h:
Changed arguments to close_connection()
sql/mysqld.cc:
Changed arguments to close_connection()
Added checking of extra arguments to mysqld
sql/protocol.cc:
Fixed bug in TIME handling
Added SQLSTATE on errors
Removed net_send_error()
sql/protocol.h:
Removed net_send_error()
sql/repl_failsafe.cc:
Fixed arguments to close_connection()
sql/sql_parse.cc:
New 4.1 protocol
Diffstat (limited to 'Docs')
-rw-r--r-- | Docs/internals.texi | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/Docs/internals.texi b/Docs/internals.texi index ddaedbe5b9b..ac79724dbe5 100644 --- a/Docs/internals.texi +++ b/Docs/internals.texi @@ -1766,7 +1766,10 @@ following connection establishment sequence is followed: +--------------------------------------------------------------------+ | Header | CLIENT_xxx options supported | max_allowed_packet | | | by client | for client | -| | 2 Bytes | 3 bytes | +| | 4 Bytes | 4 bytes | +|--------------------------------------------------------------------| +| Character set | Reserved for the future | +| 1 Bytes | 23 bytes | |--------------------------------------------------------------------| | User Name | 0x00 | Crypted Password | 0x00 | Database Name | | n Bytes | 1 Byte | 8 Bytes | 1 Byte | n Bytes | @@ -2326,7 +2329,7 @@ Warnings @item Prepared statements @item -Binary protocol (will be faster than the current protocol that +Binary protocol (is be faster than the current protocol that converts everything to strings) @end itemize @@ -2335,7 +2338,7 @@ What has changed in 4.1 are: @itemize @bullet @item -A lot of new field information (database, real table name etc) +A lot of new field information (catalog, database, real table name etc) @item The 'ok' packet has more status fields @item @@ -2374,15 +2377,16 @@ The field description result set contains the meta info for a result set. @multitable @columnfractions .20 .80 @item Type @tab Comment +@item string @tab Catalog name (for 5.x) @item string @tab Database name @item string @tab Table name alias (or table name if no alias) @item string @tab Real table name @item string @tab Alias for column name (or column name if not used) -@item 11 byte @tab Fixed length fields in one field part: +@item 12 byte @tab Fixed length fields in one field part: @itemize @item 2 byte int @tab Character set number -@item 3 byte int @tab Length of column definition +@item 4 byte int @tab Length of column definition @item 1 byte int @tab Enum value for field type @item 3 byte int @tab 2 byte column flags (NOT_NULL_FLAG etc..) + 1 byte number of decimals. @item 2 byte int @tab zero (reserved for future use) @@ -2457,7 +2461,9 @@ The error packet has the following structure: @item Size @tab Comment @item 1 @tab 255 Error packet marker @item 2 @tab Error code -@item 1-255 @tab Null terminated error message +@item 1 @tab '#' marker that SQLSTATE follows +@item 6 @tab SQLSTATE code (000000 for many messages) +@item 1-512 @tab Null terminated error message @end multitable The client/server protocol is designed in such a way that a packet |