2 // System.Data.Odbc.OdbcType
7 // Copyright (C) Brian Ritchie, 2002
11 // Copyright (C) 2004 Novell, Inc (http://www.novell.com)
13 // Permission is hereby granted, free of charge, to any person obtaining
14 // a copy of this software and associated documentation files (the
15 // "Software"), to deal in the Software without restriction, including
16 // without limitation the rights to use, copy, modify, merge, publish,
17 // distribute, sublicense, and/or sell copies of the Software, and to
18 // permit persons to whom the Software is furnished to do so, subject to
19 // the following conditions:
21 // The above copyright notice and this permission notice shall be
22 // included in all copies or substantial portions of the Software.
24 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
25 // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
26 // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
27 // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
28 // LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
29 // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
30 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
34 using System
.Data
.Common
;
36 namespace System
.Data
.Odbc
39 // From the ODBC documentation:
41 // In ODBC 3.x, the identifiers for date, time, and timestamp SQL data types
42 // have changed from SQL_DATE, SQL_TIME, and SQL_TIMESTAMP (with instances of
43 // #define in the header file of 9, 10, and 11) to SQL_TYPE_DATE, SQL_TYPE_TIME,
44 // and SQL_TYPE_TIMESTAMP (with instances of #define in the header file of 91, 92, and 93),
50 // could map to SQL_DOUBLE?
51 //#define SQL_INTERVAL 10
52 // could map to SmallDateTime?
56 BigInt
=-5, // SQL_BIGINT
57 Binary
=-2, // SQL_BINARY
60 Date
=91, // SQL_TYPE_DATE
61 DateTime
=9, // SQL_DATETIME
62 Decimal
=3, // SQL_DECIMAL
63 Double
=8, // SQL_DOUBLE
64 Image
=-4, // SQL_LONGVARBINARY
66 NChar
=-95, // SQL_UNICODE_CHAR
67 NText
=-97, // SQL_UNICODE_LONGVARCHAR
68 Numeric
=2, // SQL_NUMERIC
69 NVarChar
=-96, // SQL_UNICODE_VARCHAR
71 SmallDateTime
=0,// ??????????????????????????
72 SmallInt
=5, // SQL_SMALLINT
73 Time
=92, // SQL_TYPE_TIME
74 Text
=-1, // SQL_LONGVARCHAR
75 Timestamp
=93, // SQL_TYPE_TIMESTAMP
76 TinyInt
=-6, // SQL_TINYINT
77 UniqueIdentifier
=-11, // SQL_GUID
78 VarBinary
=-3, // SQL_VARBINARY
79 VarChar
=12 // SQL_VARCHAR