Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Fix harmless compiler warnings in the 'dbdump' tool. |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA3-256: |
2b9bb2664c56dd3280b4aad05b7f64dd |
User & Date: | mistachkin 2018-03-07 21:39:25.185 |
Context
2018-03-08
| ||
16:36 | Updates to documentation on sqlite3_serialize() and sqlite3_deserialize(). No changes to code. (check-in: e71ceb6089 user: drh tags: trunk) | |
2018-03-07
| ||
21:39 | Fix harmless compiler warnings in the 'dbdump' tool. (check-in: 2b9bb2664c user: mistachkin tags: trunk) | |
21:29 | Fix harmless compiler warning in the 'sessionfuzz' tool. (check-in: 706800ba37 user: mistachkin tags: trunk) | |
Changes
Changes to ext/misc/dbdump.c.
︙ | ︙ | |||
289 290 291 292 293 294 295 | if( sqlite3_stricmp(azRowid[j],azCol[i])==0 ) break; } if( i>nCol ){ /* At this point, we know that azRowid[j] is not the name of any ** ordinary column in the table. Verify that azRowid[j] is a valid ** name for the rowid before adding it to azCol[0]. WITHOUT ROWID ** tables will fail this last check */ | < | 289 290 291 292 293 294 295 296 297 298 299 300 301 302 | if( sqlite3_stricmp(azRowid[j],azCol[i])==0 ) break; } if( i>nCol ){ /* At this point, we know that azRowid[j] is not the name of any ** ordinary column in the table. Verify that azRowid[j] is a valid ** name for the rowid before adding it to azCol[0]. WITHOUT ROWID ** tables will fail this last check */ rc = sqlite3_table_column_metadata(p->db,0,zTab,azRowid[j],0,0,0,0,0); if( rc==SQLITE_OK ) azCol[0] = azRowid[j]; break; } } } return azCol; |
︙ | ︙ | |||
451 452 453 454 455 456 457 | } p->xCallback(";\n", p->pArg); } if( strcmp(zType, "table")==0 ){ DText sSelect; DText sTable; | | | | | | | | | | | | | | | | 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 | } p->xCallback(";\n", p->pArg); } if( strcmp(zType, "table")==0 ){ DText sSelect; DText sTable; char **azTCol; int i; int nCol; azTCol = tableColumnList(p, zTable); if( azTCol==0 ) return 0; initText(&sTable); appendText(&sTable, "INSERT INTO ", 0); /* Always quote the table name, even if it appears to be pure ascii, ** in case it is a keyword. Ex: INSERT INTO "table" ... */ appendText(&sTable, zTable, quoteChar(zTable)); /* If preserving the rowid, add a column list after the table name. ** In other words: "INSERT INTO tab(rowid,a,b,c,...) VALUES(...)" ** instead of the usual "INSERT INTO tab VALUES(...)". */ if( azTCol[0] ){ appendText(&sTable, "(", 0); appendText(&sTable, azTCol[0], 0); for(i=1; azTCol[i]; i++){ appendText(&sTable, ",", 0); appendText(&sTable, azTCol[i], quoteChar(azTCol[i])); } appendText(&sTable, ")", 0); } appendText(&sTable, " VALUES(", 0); /* Build an appropriate SELECT statement */ initText(&sSelect); appendText(&sSelect, "SELECT ", 0); if( azTCol[0] ){ appendText(&sSelect, azTCol[0], 0); appendText(&sSelect, ",", 0); } for(i=1; azTCol[i]; i++){ appendText(&sSelect, azTCol[i], quoteChar(azTCol[i])); if( azTCol[i+1] ){ appendText(&sSelect, ",", 0); } } nCol = i; if( azTCol[0]==0 ) nCol--; freeColumnList(azTCol); appendText(&sSelect, " FROM ", 0); appendText(&sSelect, zTable, quoteChar(zTable)); rc = sqlite3_prepare_v2(p->db, sSelect.z, -1, &pStmt, 0); if( rc!=SQLITE_OK ){ p->nErr++; if( p->rc==SQLITE_OK ) p->rc = rc; |
︙ | ︙ |