diff options
Diffstat (limited to 'TableStatus.m')
-rw-r--r-- | TableStatus.m | 126 |
1 files changed, 63 insertions, 63 deletions
diff --git a/TableStatus.m b/TableStatus.m index f2ad1244..5bfd5513 100644 --- a/TableStatus.m +++ b/TableStatus.m @@ -4,38 +4,38 @@ - (void)awakeFromNib { - // TODO: implement awake code. + // TODO: implement awake code. } - (void)setConnection:(CMMCPConnection *)theConnection { - mySQLConnection = theConnection; - [mySQLConnection retain]; + mySQLConnection = theConnection; + [mySQLConnection retain]; } - (NSString*)getSQLColumnValue:(NSString *)withName usingFields:(NSDictionary*)fields withLabel:(NSString*)label { - NSString* value = [fields objectForKey:withName]; - if([value isKindOfClass:[NSNull class]]) - { + NSString* value = [fields objectForKey:withName]; + if([value isKindOfClass:[NSNull class]]) + { value = @"--"; - } - - NSString* labelVal = [NSString stringWithFormat:@"%@: %@",label,value]; - - return labelVal; + } + + NSString* labelVal = [NSString stringWithFormat:@"%@: %@",label,value]; + + return labelVal; } - (void)loadTable:(NSString *)aTable { - // Store the table name away for future use... - selectedTable = aTable; - - // Notify any listeners that a query is about to begin... - [[NSNotificationCenter defaultCenter] postNotificationName:@"SMySQLQueryWillBePerformed" object:self]; - - // no table selected - if([aTable isEqualToString:@""] || !aTable) { + // Store the table name away for future use... + selectedTable = aTable; + + // Notify any listeners that a query is about to begin... + [[NSNotificationCenter defaultCenter] postNotificationName:@"SMySQLQueryWillBePerformed" object:self]; + + // no table selected + if([aTable isEqualToString:@""] || !aTable) { [tableName setStringValue:@"Name: --"]; [tableType setStringValue:@"Type: --"]; [tableCreatedAt setStringValue:@"Created At: --"]; @@ -43,13 +43,13 @@ // Assign the row values... [rowsNumber setStringValue:@"Number Of: --"]; - [rowsFormat setStringValue:@"Format: --"]; + [rowsFormat setStringValue:@"Format: --"]; [rowsAvgLength setStringValue:@"Avg. Length: --"]; [rowsAutoIncrement setStringValue:@"Auto Increment: --"]; // Assign the size values... [sizeData setStringValue:@"Data: --"]; - [sizeMaxData setStringValue:@"Max Data: --"]; + [sizeMaxData setStringValue:@"Max Data: --"]; [sizeIndex setStringValue:@"Index: --"]; [sizeFree setStringValue:@"Free: --"]; @@ -58,56 +58,56 @@ // Tell everyone we've finished with our query... [[NSNotificationCenter defaultCenter] postNotificationName:@"SMySQLQueryHasBeenPerformed" object:self]; - return; - } - - // Run the query to retrieve the status of the selected table. We'll then use this information to populate - // the associated view's controls. - tableStatusResult = [mySQLConnection queryString:[NSString stringWithFormat:@"SHOW TABLE STATUS LIKE '%@'", selectedTable]]; - - statusFields = [tableStatusResult fetchRowAsDictionary]; - - // Assign the table values... - [tableName setStringValue:[NSString stringWithFormat:@"Name: %@",selectedTable]]; - if ( [statusFields objectForKey:@"Type"] ) { - [tableType setStringValue:[self getSQLColumnValue:@"Type" usingFields:statusFields withLabel:@"Type"]]; - } else { - // mysql > 4.1 - [tableType setStringValue:[self getSQLColumnValue:@"Engine" usingFields:statusFields withLabel:@"Type"]]; - } - [tableCreatedAt setStringValue:[self getSQLColumnValue:@"Create_time" usingFields:statusFields withLabel:@"Created At"]]; - [tableUpdatedAt setStringValue:[self getSQLColumnValue:@"Update_time" usingFields:statusFields withLabel:@"Updated At"]]; - - // Assign the row values... - [rowsNumber setStringValue:[self getSQLColumnValue:@"Rows" usingFields:statusFields withLabel:@"Number Of"]]; - [rowsFormat setStringValue:[self getSQLColumnValue:@"Row_format" usingFields:statusFields withLabel:@"Format"]]; - [rowsAvgLength setStringValue:[self getSQLColumnValue:@"Avg_row_length" usingFields:statusFields withLabel:@"Avg. Length"]]; - [rowsAutoIncrement setStringValue:[self getSQLColumnValue:@"Auto_increment" usingFields:statusFields withLabel:@"Auto Increment"]]; + return; + } + + // Run the query to retrieve the status of the selected table. We'll then use this information to populate + // the associated view's controls. + tableStatusResult = [mySQLConnection queryString:[NSString stringWithFormat:@"SHOW TABLE STATUS LIKE '%@'", selectedTable]]; + + statusFields = [tableStatusResult fetchRowAsDictionary]; + + // Assign the table values... + [tableName setStringValue:[NSString stringWithFormat:@"Name: %@",selectedTable]]; + if ( [statusFields objectForKey:@"Type"] ) { + [tableType setStringValue:[self getSQLColumnValue:@"Type" usingFields:statusFields withLabel:@"Type"]]; + } else { + // mysql > 4.1 + [tableType setStringValue:[self getSQLColumnValue:@"Engine" usingFields:statusFields withLabel:@"Type"]]; + } + [tableCreatedAt setStringValue:[self getSQLColumnValue:@"Create_time" usingFields:statusFields withLabel:@"Created At"]]; + [tableUpdatedAt setStringValue:[self getSQLColumnValue:@"Update_time" usingFields:statusFields withLabel:@"Updated At"]]; + + // Assign the row values... + [rowsNumber setStringValue:[self getSQLColumnValue:@"Rows" usingFields:statusFields withLabel:@"Number Of"]]; + [rowsFormat setStringValue:[self getSQLColumnValue:@"Row_format" usingFields:statusFields withLabel:@"Format"]]; + [rowsAvgLength setStringValue:[self getSQLColumnValue:@"Avg_row_length" usingFields:statusFields withLabel:@"Avg. Length"]]; + [rowsAutoIncrement setStringValue:[self getSQLColumnValue:@"Auto_increment" usingFields:statusFields withLabel:@"Auto Increment"]]; - // Assign the size values... - [sizeData setStringValue:[self getSQLColumnValue:@"Data_length" usingFields:statusFields withLabel:@"Data"]]; - [sizeMaxData setStringValue:[self getSQLColumnValue:@"Max_data_length" usingFields:statusFields withLabel:@"Max Data"]]; - [sizeIndex setStringValue:[self getSQLColumnValue:@"Index_length" usingFields:statusFields withLabel:@"Index"]]; - [sizeFree setStringValue:[self getSQLColumnValue:@"Data_free" usingFields:statusFields withLabel:@"Free"]]; - - // Finally, assign the comments... - [commentsBox setStringValue:[statusFields objectForKey:@"Comment"]]; - - // Tell everyone we've finished with our query... - [[NSNotificationCenter defaultCenter] postNotificationName:@"SMySQLQueryHasBeenPerformed" object:self]; - - return; + // Assign the size values... + [sizeData setStringValue:[self getSQLColumnValue:@"Data_length" usingFields:statusFields withLabel:@"Data"]]; + [sizeMaxData setStringValue:[self getSQLColumnValue:@"Max_data_length" usingFields:statusFields withLabel:@"Max Data"]]; + [sizeIndex setStringValue:[self getSQLColumnValue:@"Index_length" usingFields:statusFields withLabel:@"Index"]]; + [sizeFree setStringValue:[self getSQLColumnValue:@"Data_free" usingFields:statusFields withLabel:@"Free"]]; + + // Finally, assign the comments... + [commentsBox setStringValue:[statusFields objectForKey:@"Comment"]]; + + // Tell everyone we've finished with our query... + [[NSNotificationCenter defaultCenter] postNotificationName:@"SMySQLQueryHasBeenPerformed" object:self]; + + return; } - (IBAction)reloadTable:(id)sender { - [self loadTable:selectedTable]; + [self loadTable:selectedTable]; } - (id)init { - self = [super init]; - - return self; + self = [super init]; + + return self; } @end |