QtSparql  0.2.6
sparqlext_p.h
1 /*
2  * sparqlext.h
3  *
4  *
5  * Virtuoso ODBC RDF Extensions for SPASQL
6  *
7  *
8  * Copyright (C) 1996-2006 by OpenLink Software <iodbc@openlinksw.com>
9  * All Rights Reserved.
10  *
11  * This software is released under the terms of either of the following
12  * licenses:
13  *
14  * - GNU Library General Public License (see LICENSE.LGPL)
15  * - The BSD License (see LICENSE.BSD).
16  *
17  * Note that the only valid version of the LGPL license as far as this
18  * project is concerned is the original GNU Library General Public License
19  * Version 2, dated June 1991.
20  *
21  * While not mandated by the BSD license, any patches you make to the
22  * iODBC source code may be contributed back into the iODBC project
23  * at your discretion. Contributions will benefit the Open Source and
24  * Data Access community as a whole. Submissions may be made at:
25  *
26  * http://www.iodbc.org
27  *
28  *
29  * GNU Library Generic Public License Version 2
30  * ============================================
31  * This library is free software; you can redistribute it and/or
32  * modify it under the terms of the GNU Library General Public
33  * License as published by the Free Software Foundation; only
34  * Version 2 of the License dated June 1991.
35  *
36  * This library is distributed in the hope that it will be useful,
37  * but WITHOUT ANY WARRANTY; without even the implied warranty of
38  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
39  * Library General Public License for more details.
40  *
41  * You should have received a copy of the GNU Library General Public
42  * License along with this library; if not, write to the Free
43  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
44  *
45  *
46  * The BSD License
47  * ===============
48  * Redistribution and use in source and binary forms, with or without
49  * modification, are permitted provided that the following conditions
50  * are met:
51  *
52  * 1. Redistributions of source code must retain the above copyright
53  * notice, this list of conditions and the following disclaimer.
54  * 2. Redistributions in binary form must reproduce the above copyright
55  * notice, this list of conditions and the following disclaimer in
56  * the documentation and/or other materials provided with the
57  * distribution.
58  * 3. Neither the name of OpenLink Software Inc. nor the names of its
59  * contributors may be used to endorse or promote products derived
60  * from this software without specific prior written permission.
61  *
62  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
63  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
64  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
65  * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL OPENLINK OR
66  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
67  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
68  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
69  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
70  * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
71  * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
72  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
73  *
74  */
75 
76 #ifndef SPARQLEXT_H
77 #define SPARQLEXT_H
78 
79 #ifdef WIN32
80 # include <windows.h>
81 #endif
82 
83 #include <sql.h>
84 #include <sqlext.h>
85 
86 #if defined (HAVE_IODBC)
87 #include <iodbcext.h>
88 #endif
89 
90 /*
91  * ODBC extensions for SQLGetDescField
92  */
93 # define SQL_DESC_COL_DV_TYPE 1057L
94 # define SQL_DESC_COL_DT_DT_TYPE 1058L
95 # define SQL_DESC_COL_LITERAL_ATTR 1059L
96 # define SQL_DESC_COL_BOX_FLAGS 1060L
97 # define SQL_DESC_COL_LITERAL_LANG 1061L
98 # define SQL_DESC_COL_LITERAL_TYPE 1062L
99 
100 /*
101  * Virtuoso - ODBC SQL_DESC_COL_DV_TYPE
102  */
103 # define VIRTUOSO_DV_DATE 129
104 # define VIRTUOSO_DV_DATETIME 211
105 # define VIRTUOSO_DV_DOUBLE_FLOAT 191
106 # define VIRTUOSO_DV_IRI_ID 243
107 # define VIRTUOSO_DV_LONG_INT 189
108 # define VIRTUOSO_DV_NUMERIC 219
109 # define VIRTUOSO_DV_RDF 246
110 # define VIRTUOSO_DV_SINGLE_FLOAT 190
111 # define VIRTUOSO_DV_STRING 182
112 # define VIRTUOSO_DV_TIME 210
113 # define VIRTUOSO_DV_TIMESTAMP 128
114 # define VIRTUOSO_DV_TIMESTAMP_OBJ 208
115 
116 /*
117  * Virtuoso - ODBC SQL_DESC_COL_DT_DT_TYPE
118  */
119 # define VIRTUOSO_DT_TYPE_DATETIME 1
120 # define VIRTUOSO_DT_TYPE_DATE 2
121 # define VIRTUOSO_DT_TYPE_TIME 3
122 
123 /*
124  * Virtuoso - ODBC SQL_DESC_COL_BOX_FLAGS
125  */
126 #define VIRTUOSO_BF_IRI 0x1
127 #define VIRTUOSO_BF_UTF8 0x2
128 #define VIRTUOSO_BF_DEFAULT_ENC 0x4
129 
130 #endif