aboutsummaryrefslogtreecommitdiff
path: root/src/sqliteInt.h
diff options
context:
space:
mode:
authordrh <drh@noemail.net>2006-06-14 19:00:20 +0000
committerdrh <drh@noemail.net>2006-06-14 19:00:20 +0000
commit4cbdda9e273d030228bc58128d59e84009baefeb (patch)
tree8da8bb9cb7812dbe99a7e58929aab1b73c630095 /src/sqliteInt.h
parentbadf7a7a2fa7af2e78341999a3de812d04d1eaeb (diff)
downloadsqlite-4cbdda9e273d030228bc58128d59e84009baefeb.tar.gz
sqlite-4cbdda9e273d030228bc58128d59e84009baefeb.zip
Added code to INSERT, DELETE and UPDATE virtual tables. The new code is
mostly untested. (CVS 3248) FossilOrigin-Name: 32c97b884b104d120db3c0a87f5eab28f36851f8
Diffstat (limited to 'src/sqliteInt.h')
-rw-r--r--src/sqliteInt.h15
1 files changed, 13 insertions, 2 deletions
diff --git a/src/sqliteInt.h b/src/sqliteInt.h
index 28ea1f73f..fcc147adf 100644
--- a/src/sqliteInt.h
+++ b/src/sqliteInt.h
@@ -11,7 +11,7 @@
*************************************************************************
** Internal interface definitions for SQLite.
**
-** @(#) $Id: sqliteInt.h,v 1.504 2006/06/13 15:36:07 drh Exp $
+** @(#) $Id: sqliteInt.h,v 1.505 2006/06/14 19:00:21 drh Exp $
*/
#ifndef _SQLITEINT_H_
#define _SQLITEINT_H_
@@ -694,7 +694,6 @@ struct Table {
u8 hasPrimKey; /* True if there exists a primary key */
u8 keyConf; /* What to do in case of uniqueness conflict on iPKey */
u8 autoInc; /* True if the integer primary key is autoincrement */
- u8 isVirtual; /* True if this is a virtual table */
int nRef; /* Number of pointers to this Table */
Trigger *pTrigger; /* List of SQL triggers on this table */
FKey *pFKey; /* Linked list of all foreign keys in this table */
@@ -708,6 +707,7 @@ struct Table {
#ifndef SQLITE_OMIT_VIRTUALTABLE
sqlite3_module *pModule; /* Pointer to the implementation of the module */
sqlite3_vtab *pVtab; /* Pointer to the module instance */
+ u8 isVirtual; /* True if this is a virtual table */
int nModuleArg; /* Number of arguments to the module */
char **azModuleArg; /* Text of all module args. [0] is module name */
#endif
@@ -715,6 +715,17 @@ struct Table {
};
/*
+** Test to see whether or not a table is a virtual table. This is
+** done as a macro so that it will be optimized out when virtual
+** table support is omitted from the build.
+*/
+#ifndef SQLITE_OMIT_VIRTUALTABLE
+# define IsVirtual(X) ((X)->isVirtual)
+#else
+# define IsVirtual(X) 0
+#endif
+
+/*
** Each foreign key constraint is an instance of the following structure.
**
** A foreign key is associated with two tables. The "from" table is