1 // ByteFX.Data data access components for .Net
\r
2 // Copyright (C) 2002-2003 ByteFX, Inc.
\r
4 // This library is free software; you can redistribute it and/or
\r
5 // modify it under the terms of the GNU Lesser General Public
\r
6 // License as published by the Free Software Foundation; either
\r
7 // version 2.1 of the License, or (at your option) any later version.
\r
9 // This library is distributed in the hope that it will be useful,
\r
10 // but WITHOUT ANY WARRANTY; without even the implied warranty of
\r
11 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
\r
12 // Lesser General Public License for more details.
\r
14 // You should have received a copy of the GNU Lesser General Public
\r
15 // License along with this library; if not, write to the Free Software
\r
16 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
\r
19 namespace ByteFX.Data.MySqlClient
\r
22 /// Summary description for ClientParam.
\r
25 internal enum ClientParam
\r
27 CLIENT_LONG_PASSWORD = 1, // new more secure passwords
\r
28 CLIENT_FOUND_ROWS = 2, // found instead of affected rows
\r
29 CLIENT_LONG_FLAG = 4, // Get all column flags
\r
30 CLIENT_CONNECT_WITH_DB = 8, // One can specify db on connect
\r
31 CLIENT_NO_SCHEMA = 16, // Don't allow db.table.column
\r
32 CLIENT_COMPRESS = 32, // Client can use compression protocol
\r
33 CLIENT_ODBC = 64, // ODBC client
\r
34 CLIENT_LOCAL_FILES = 128, // Can use LOAD DATA LOCAL
\r
35 CLIENT_IGNORE_SPACE = 256, // Ignore spaces before '('
\r
36 CLIENT_CHANGE_USER = 512, // Support the mysql_change_user()
\r
37 CLIENT_INTERACTIVE = 1024, // This is an interactive client
\r
38 CLIENT_SSL = 2048, // Switch to SSL after handshake
\r
39 CLIENT_IGNORE_SIGPIPE = 4096, // IGNORE sigpipes
\r
40 CLIENT_TRANSACTIONS = 8192, // Client knows about transactions
\r
41 CLIENT_PROTOCOL_41 = 16384,
\r
42 CLIENT_SECURE_CONNECTION = 32768
\r
48 /// DB Operations Code
\r
50 internal enum DBCmd : byte
\r
68 DELAYED_INSERT = 16,
\r
73 /// Specifies MySQL specific data type of a field, property, for use in a <see cref="MySqlParameter"/>.
\r
75 public enum MySqlDbType
\r
77 /// <summary> <see cref="Decimal"/><para>A fixed precision and scale numeric value between -1038 -1 and 10 38 -1.</para></summary>
\r
79 /// <summary> <see cref="Byte"/><para>The signed range is -128 to 127. The unsigned range is 0 to 255.</para></summary>
\r
81 /// <summary><see cref="Int16"/><para>A 16-bit signed or unsigned integer. The signed range is -32768 to 32767. The unsigned range is 0 to 65535</para></summary>
\r
83 /// <summary><see cref="Int32"/><para>A 32-bit signed or unsigned integer</para></summary>
\r
85 /// <summary><b>Obsolete</b> Please use Int for 32 bit values</summary>
\r
86 [Obsolete("Long is no longer the correct way of specifying a 32 bit value. Use Int")]
\r
88 /// <summary><see cref="Single"/><para>A small (single-precision) floating-point number. Allowable values are -3.402823466E+38 to -1.175494351E-38, 0, and 1.175494351E-38 to 3.402823466E+38.</para></summary>
\r
90 /// <summary><see cref="Double"/><para>A normal-size (double-precision) floating-point number. Allowable values are -1.7976931348623157E+308 to -2.2250738585072014E-308, 0, and 2.2250738585072014E-308 to 1.7976931348623157E+308.</para></summary>
\r
92 /// <summary>Specifies a null value</summary>
\r
94 /// <summary>A timestamp. The range is '1970-01-01 00:00:00' to sometime in the year 2037</summary>
\r
96 /// <summary><see cref="Int64"/><para>A 64-bit signed or unsigned integer.</para></summary>
\r
98 /// <summary><b>Obsolete</b> Please use BigInt for 64 bit values</summary>
\r
99 [Obsolete("LongLong is no longer the correct way of specifying a 64 bit value. Use BigInt")]
\r
101 /// <summary>Specifies a 24 (3 byte) signed or unsigned value.</summary>
\r
103 ///<summary>Date The supported range is '1000-01-01' to '9999-12-31'.</summary>
\r
105 /// <summary> Time <para>The range is '-838:59:59' to '838:59:59'.</para></summary>
\r
107 ///<summary>DateTime The supported range is '1000-01-01 00:00:00' to '9999-12-31 23:59:59'.</summary>
\r
109 /// <summary>A year in 2- or 4-digit format (default is 4-digit). The allowable values are 1901 to 2155, 0000 in the 4-digit year format, and 1970-2069 if you use the 2-digit format (70-69)</summary>
\r
111 /// <summary><b>Obsolete</b> Use Datetime or Date type</summary>
\r
113 /// <summary>An enumeration. A string object that can have only one value, chosen from the list of values 'value1', 'value2', ..., NULL or the special "" error value. An ENUM can have a maximum of 65535 distinct values</summary>
\r
115 /// <summary>A set. A string object that can have zero or more values, each of which must be chosen from the list of values 'value1', 'value2', ... A SET can have a maximum of 64 members.</summary>
\r
117 /// <summary>A BLOB or TEXT column with a maximum length of 255 (2^8 - 1) characters</summary>
\r
119 /// <summary>A BLOB or TEXT column with a maximum length of 16777215 (2^24 - 1) characters</summary>
\r
121 /// <summary>A BLOB or TEXT column with a maximum length of 4294967295 or 4G (2^32 - 1) characters</summary>
\r
123 /// <summary>A BLOB or TEXT column with a maximum length of 65535 (2^16 - 1) characters</summary>
\r
125 /// <summary>A variable-length string containing 0 to 255 characters</summary>
\r
127 /// <summary><b>Obsolete</b> Use VarChar type</summary>
\r
132 enum Field_Type : byte
\r