Only support the magic "__hidden__" column name prefix interpretation when
compiled with SQLITE_ENABLE_HIDDEN_COLUMNS. FossilOrigin-Name: 5490646b2eb74ea8bd5ab2690f69b9c707a0165f
This commit is contained in:
+19
-1
@@ -1696,12 +1696,29 @@ struct Table {
|
||||
*/
|
||||
#ifndef SQLITE_OMIT_VIRTUALTABLE
|
||||
# define IsVirtual(X) (((X)->tabFlags & TF_Virtual)!=0)
|
||||
# define IsHiddenColumn(X) (((X)->colFlags & COLFLAG_HIDDEN)!=0)
|
||||
#else
|
||||
# define IsVirtual(X) 0
|
||||
# define IsHiddenColumn(X) 0
|
||||
#endif
|
||||
|
||||
/*
|
||||
** Macros to determine if a column is hidden. IsOrdinaryHiddenColumn()
|
||||
** only works for non-virtual tables (ordinary tables and views) and is
|
||||
** always false unless SQLITE_ENABLE_HIDDEN_COLUMNS is defined. The
|
||||
** IsHiddenColumn() macro is general purpose.
|
||||
*/
|
||||
#if defined(SQLITE_ENABLE_HIDDEN_COLUMNS)
|
||||
# define IsHiddenColumn(X) (((X)->colFlags & COLFLAG_HIDDEN)!=0)
|
||||
# define IsOrdinaryHiddenColumn(X) (((X)->colFlags & COLFLAG_HIDDEN)!=0)
|
||||
#elif !defined(SQLITE_OMIT_VIRTUAL)
|
||||
# define IsHiddenColumn(X) (((X)->colFlags & COLFLAG_HIDDEN)!=0)
|
||||
# define IsOrdinaryHiddenColumn(X) 0
|
||||
#else
|
||||
# define IsHiddenColumn(X) 0
|
||||
# define IsOrdinaryHiddenColumn(X) 0
|
||||
#endif
|
||||
|
||||
|
||||
/* Does the table have a rowid */
|
||||
#define HasRowid(X) (((X)->tabFlags & TF_WithoutRowid)==0)
|
||||
#define VisibleRowid(X) (((X)->tabFlags & TF_NoVisibleRowid)==0)
|
||||
@@ -3314,6 +3331,7 @@ void sqlite3OpenMasterTable(Parse *, int);
|
||||
Index *sqlite3PrimaryKeyIndex(Table*);
|
||||
i16 sqlite3ColumnOfIndex(Index*, i16);
|
||||
void sqlite3StartTable(Parse*,Token*,Token*,int,int,int,int);
|
||||
void sqlite3ColumnPropertiesFromName(Column*);
|
||||
void sqlite3AddColumn(Parse*,Token*);
|
||||
void sqlite3AddNotNull(Parse*, int);
|
||||
void sqlite3AddPrimaryKey(Parse*, ExprList*, int, int, int);
|
||||
|
||||
Reference in New Issue
Block a user