]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Add the --transaction option to the sqldiff tool.
authordrh <drh@noemail.net>
Fri, 13 Nov 2015 13:15:42 +0000 (13:15 +0000)
committerdrh <drh@noemail.net>
Fri, 13 Nov 2015 13:15:42 +0000 (13:15 +0000)
FossilOrigin-Name: 8882d1f3ef0fc53d7c19918c3af43c5bdd79e88f

manifest
manifest.uuid
tool/sqldiff.c

index 972db47b4f94af27150479dfa71c11bab3af35e0..ddb0e9ebc319be9f0fb1d5e20279ea654dac9751 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Fix\sthe\sreleasetest-out.txt\slog\soutput\sfrom\sreleasetest.tcl\sso\sthat\sit\sworks\nwhen\sthe\s--jobs\soption\sis\sused.
-D 2015-11-13T12:52:34.131
+C Add\sthe\s--transaction\soption\sto\sthe\ssqldiff\stool.
+D 2015-11-13T13:15:42.017
 F Makefile.in d828db6afa6c1fa060d01e33e4674408df1942a1
 F Makefile.linux-gcc 7bc79876b875010e8c8f9502eb935ca92aa3c434
 F Makefile.msc e928e68168df69b353300ac87c10105206653a03
@@ -1392,7 +1392,7 @@ F tool/speedtest2.tcl ee2149167303ba8e95af97873c575c3e0fab58ff
 F tool/speedtest8.c 2902c46588c40b55661e471d7a86e4dd71a18224
 F tool/speedtest8inst1.c 7ce07da76b5e745783e703a834417d725b7d45fd
 F tool/split-sqlite3c.tcl d9be87f1c340285a3e081eb19b4a247981ed290c
-F tool/sqldiff.c 40e3458f0015290be8ecb6e03f9dbf1bb1e264c0
+F tool/sqldiff.c db1232df457fdd4cbf2a919a497fc44bb18fb933
 F tool/stack_usage.tcl f8e71b92cdb099a147dad572375595eae55eca43
 F tool/symbols-mingw.sh 4dbcea7e74768305384c9fd2ed2b41bbf9f0414d
 F tool/symbols.sh fec58532668296d7c7dc48be9c87f75ccdb5814f
@@ -1403,7 +1403,7 @@ F tool/vdbe_profile.tcl 246d0da094856d72d2c12efec03250d71639d19f
 F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4
 F tool/warnings.sh 48bd54594752d5be3337f12c72f28d2080cb630b
 F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f
-P ebda77aad4d964593606ded2fdb19259ef9ebb8e
-R 0d2c22d081ef129ebfad482569c607ff
+P 6bb314a5022c8bae63f6cdb48652915e05c06a38
+R 935905eff9b6be5b31cdb25ab8246ccb
 U drh
-Z 0f5445a085b6cf791e190a6c97d0a451
+Z 6be4f9e3d294b71573d3af5237a10dc6
index d171197a9c60f63420d29c672d20230b0be6dd8c..e84e61c770868e0bf1836d522f247fcecf191bd2 100644 (file)
@@ -1 +1 @@
-6bb314a5022c8bae63f6cdb48652915e05c06a38
\ No newline at end of file
+8882d1f3ef0fc53d7c19918c3af43c5bdd79e88f
\ No newline at end of file
index 90a53fe16a7f428b957c7505949b389e62d849de..0f406d8a039b8c125f3f3a13bb2e574a0670585b 100644 (file)
@@ -1741,6 +1741,7 @@ static void showHelp(void){
 "  --schema              Show only differences in the schema\n"
 "  --summary             Show only a summary of the differences\n"
 "  --table TAB           Show only differences in table TAB\n"
+"  --transaction         Show SQL output inside a transaction\n"
   );
 }
 
@@ -1757,6 +1758,8 @@ int main(int argc, char **argv){
   void (*xDiff)(const char*,FILE*) = diff_one_table;
   int nExt = 0;
   char **azExt = 0;
+  int useTransaction = 0;
+  int neverUseTransaction = 0;
 
   g.zArgv0 = argv[0];
   sqlite3_config(SQLITE_CONFIG_SINGLETHREAD);
@@ -1770,6 +1773,7 @@ int main(int argc, char **argv){
         out = fopen(argv[++i], "wb");
         if( out==0 ) cmdlineError("cannot open: %s", argv[i]);
         xDiff = changeset_one_table;
+        neverUseTransaction = 1;
       }else
       if( strcmp(z,"debug")==0 ){
         if( i==argc-1 ) cmdlineError("missing argument to %s", argv[i]);
@@ -1803,6 +1807,9 @@ int main(int argc, char **argv){
         if( i==argc-1 ) cmdlineError("missing argument to %s", argv[i]);
         zTab = argv[++i];
       }else
+      if( strcmp(z,"transaction")==0 ){
+        useTransaction = 1;
+      }else
       {
         cmdlineError("unknown option: %s", argv[i]);
       }
@@ -1845,6 +1852,8 @@ int main(int argc, char **argv){
     cmdlineError("\"%s\" does not appear to be a valid SQLite database", zDb2);
   }
 
+  if( neverUseTransaction ) useTransaction = 0;
+  if( useTransaction ) printf("BEGIN TRANSACTION;\n");
   if( zTab ){
     xDiff(zTab, out);
   }else{
@@ -1862,6 +1871,7 @@ int main(int argc, char **argv){
     }
     sqlite3_finalize(pStmt);
   }
+  if( useTransaction ) printf("COMMIT;\n");
 
   /* TBD: Handle trigger differences */
   /* TBD: Handle view differences */