aboutsummaryrefslogtreecommitdiffstats
path: root/Source/TableDump.h
diff options
context:
space:
mode:
authorrowanbeentje <rowan@beent.je>2009-09-14 00:14:25 +0000
committerrowanbeentje <rowan@beent.je>2009-09-14 00:14:25 +0000
commitf85e71af7997af33ca10ee581c20c7c2264c6287 (patch)
treeb0d1e2d4bf329c96c149ada7fd926a186f7cafe6 /Source/TableDump.h
parent1e2b95b113242895a988d0db02e7a7fe1708a63d (diff)
downloadsequelpro-f85e71af7997af33ca10ee581c20c7c2264c6287.tar.gz
sequelpro-f85e71af7997af33ca10ee581c20c7c2264c6287.tar.bz2
sequelpro-f85e71af7997af33ca10ee581c20c7c2264c6287.zip
Significantly improve export:
- Rework CSV export to stream data, significantly reducing memory consumption and so increasing speed and stability when exporting large tables. By default safe/fast streaming is used, but a checkbox is available to select "low memory mode" full streaming, allowing export of any size table in theory. This addresses Issue #224. - Rework XML export to stream data in the same way, also significantly reducing memory usage and providing the option of using low memory mode. - Make SQL, CSV and XML export progress bars update more smoothly - When exporting the current browse view or custom query result, show an indeterminate progress bar when copying large resultsets to avoid the app appearing to hang
Diffstat (limited to 'Source/TableDump.h')
-rw-r--r--Source/TableDump.h11
1 files changed, 7 insertions, 4 deletions
diff --git a/Source/TableDump.h b/Source/TableDump.h
index 1dba02e2..de659fa2 100644
--- a/Source/TableDump.h
+++ b/Source/TableDump.h
@@ -76,6 +76,9 @@
IBOutlet id addTableContentSwitch;
IBOutlet id addErrorsSwitch;
IBOutlet id sqlFullStreamingSwitch;
+ IBOutlet id csvFullStreamingSwitch;
+ IBOutlet id multiCSVFullStreamingSwitch;
+ IBOutlet id multiXMLFullStreamingSwitch;
IBOutlet id errorsSheet;
IBOutlet id errorsView;
IBOutlet id singleProgressSheet;
@@ -131,14 +134,14 @@
// Export methods
- (BOOL)dumpSelectedTablesAsSqlToFileHandle:(NSFileHandle *)fileHandle;
- (BOOL)dumpSchemaAsDotToFileHandle:(NSFileHandle *)fileHandle;
-- (BOOL)writeCsvForArray:(NSArray *)array orQueryResult:(MCPResult *)queryResult
+- (BOOL)writeCsvForArray:(NSArray *)array orStreamingResult:(MCPStreamingResult *)streamingResult
toFileHandle:(NSFileHandle *)fileHandle
outputFieldNames:(BOOL)firstLine terminatedBy:(NSString *)terminated
enclosedBy:(NSString *)enclosed escapedBy:(NSString *)escaped
- lineEnds:(NSString *)lineEnds withNumericColumns:(NSArray *)tableColumnNumericStatus silently:(BOOL)silently;
-- (BOOL)writeXmlForArray:(NSArray *)array orQueryResult:(MCPResult *)queryResult
+ lineEnds:(NSString *)lineEnds withNumericColumns:(NSArray *)tableColumnNumericStatus totalRows:(NSInteger)totalRows silently:(BOOL)silently;
+- (BOOL)writeXmlForArray:(NSArray *)array orStreamingResult:(MCPStreamingResult *)streamingResult
toFileHandle:(NSFileHandle *)fileHandle
- tableName:(NSString *)table withHeader:(BOOL)header silently:(BOOL)silently;
+ tableName:(NSString *)table withHeader:(BOOL)header totalRows:(NSInteger)totalRows silently:(BOOL)silently;
- (NSString *)htmlEscapeString:(NSString *)string;
- (NSString *)createViewPlaceholderSyntaxForView:(NSString *)viewName;