aboutsummaryrefslogtreecommitdiff
path: root/src/select.c
diff options
context:
space:
mode:
authordrh <drh@noemail.net>2003-03-27 12:51:24 +0000
committerdrh <drh@noemail.net>2003-03-27 12:51:24 +0000
commitd24cc427b7f83ca65aefbb6cf1831d0461f16357 (patch)
treee8c0700ba474499cd46b5f6cc49c3bd1a4b607c0 /src/select.c
parent84e6335c0c244dfde752ee4e166b6770dd9d2e10 (diff)
downloadsqlite-d24cc427b7f83ca65aefbb6cf1831d0461f16357.tar.gz
sqlite-d24cc427b7f83ca65aefbb6cf1831d0461f16357.zip
Changes to the "sqlite" structure that allow simultaneous operations on
multiple database files. Many regession tests pass - but not all of them. Do not use this version except for debugging SQLite itself. (CVS 883) FossilOrigin-Name: d2fb2bb50cf1e13feb90995079f291384abd6ba9
Diffstat (limited to 'src/select.c')
-rw-r--r--src/select.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/select.c b/src/select.c
index eb2892f24..48283550f 100644
--- a/src/select.c
+++ b/src/select.c
@@ -12,7 +12,7 @@
** This file contains C code routines that are called by the parser
** to handle SELECT statements in SQLite.
**
-** $Id: select.c,v 1.127 2003/03/19 03:14:02 drh Exp $
+** $Id: select.c,v 1.128 2003/03/27 12:51:25 drh Exp $
*/
#include "sqliteInt.h"
@@ -912,7 +912,8 @@ static int fillInColumnList(Parse *pParse, Select *p){
}else{
/* An ordinary table or view name in the FROM clause */
pTabList->a[i].pTab = pTab =
- sqliteFindTable(pParse->db, pTabList->a[i].zName);
+ sqliteFindTable(pParse->db, pTabList->a[i].zName,
+ pTabList->a[i].zDatabase);
if( pTab==0 ){
sqliteSetString(&pParse->zErrMsg, "no such table: ",
pTabList->a[i].zName, 0);
@@ -1830,13 +1831,13 @@ static int simpleMinMaxQuery(Parse *pParse, Select *p, int eDest, int iParm){
sqliteCodeVerifySchema(pParse);
}
base = p->base;
- sqliteVdbeAddOp(v, OP_Integer, pTab->isTemp, 0);
+ sqliteVdbeAddOp(v, OP_Integer, pTab->iDb, 0);
sqliteVdbeAddOp(v, OP_OpenRead, base, pTab->tnum);
sqliteVdbeChangeP3(v, -1, pTab->zName, P3_STATIC);
if( pIdx==0 ){
sqliteVdbeAddOp(v, seekOp, base, 0);
}else{
- sqliteVdbeAddOp(v, OP_Integer, pTab->isTemp, 0);
+ sqliteVdbeAddOp(v, OP_Integer, pIdx->iDb, 0);
sqliteVdbeAddOp(v, OP_OpenRead, base+1, pIdx->tnum);
sqliteVdbeChangeP3(v, -1, pIdx->zName, P3_STATIC);
sqliteVdbeAddOp(v, seekOp, base+1, 0);