diff options
author | dan <Dan Kennedy> | 2023-09-15 18:36:51 +0000 |
---|---|---|
committer | dan <Dan Kennedy> | 2023-09-15 18:36:51 +0000 |
commit | 81b70d97eb3ccf25d8fec5544009e6ebe9225b4a (patch) | |
tree | fce9a903cbc8d9ac0d341dd697e20af9f7931da3 /src/sqliteInt.h | |
parent | 581b22936297aa4cc19f2ee1920804ce96d5459d (diff) | |
download | sqlite-81b70d97eb3ccf25d8fec5544009e6ebe9225b4a.tar.gz sqlite-81b70d97eb3ccf25d8fec5544009e6ebe9225b4a.zip |
Allow expressions like "<tbl>.rowid" to refer to implicit rowid columns of tables in nested FROM clauses.
FossilOrigin-Name: 59a1bbc69f5dbb33418fa4b383393fb13a46bc1e531577da8ad54ae2fad5a10e
Diffstat (limited to 'src/sqliteInt.h')
-rw-r--r-- | src/sqliteInt.h | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/sqliteInt.h b/src/sqliteInt.h index 31eac3749..b8473b2d1 100644 --- a/src/sqliteInt.h +++ b/src/sqliteInt.h @@ -3181,6 +3181,7 @@ struct ExprList { #define ENAME_NAME 0 /* The AS clause of a result set */ #define ENAME_SPAN 1 /* Complete text of the result set expression */ #define ENAME_TAB 2 /* "DB.TABLE.NAME" for the result set */ +#define ENAME_ROWID 3 /* "DB.TABLE._rowid_" for * expansion of rowid */ /* ** An instance of this structure can hold a simple list of identifiers, @@ -5010,6 +5011,7 @@ int sqlite3ExprIsInteger(const Expr*, int*); int sqlite3ExprCanBeNull(const Expr*); int sqlite3ExprNeedsNoAffinityChange(const Expr*, char); int sqlite3IsRowid(const char*); +const char *sqlite3RowidAlias(Table *pTab); void sqlite3GenerateRowDelete( Parse*,Table*,Trigger*,int,int,int,i16,u8,u8,u8,int); void sqlite3GenerateRowIndexDelete(Parse*, Table*, int, int, int*, int); @@ -5281,7 +5283,8 @@ int sqlite3MatchEName( const struct ExprList_item*, const char*, const char*, - const char* + const char*, + int ); Bitmask sqlite3ExprColUsed(Expr*); u8 sqlite3StrIHash(const char*); |