Quiero copiar la tabla de aDB a otro bDB.Copiando la tabla en un db a otro db
Así que hice un método. Creo que la base de datos abierta 2 y el uso de la consulta de inserción funcionarán, pero no sé la forma detallada.
-(void)copyDatabaseTableSoruceFileName:(NSString *)source CopyFileName:(NSString *)copy
{
sqlite3 *sourceDatabase=NULL;
sqlite3 *copyDatabase=NULL;
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask,YES);
NSString* documentDir = [paths objectAtIndex:0];
//source
[self copyFileIfNeed:source path:documentDir];
NSString *SourceDBPath = [documentDir stringByAppendingPathComponent:source];
if(sqlite3_open([SourceDBPath UTF8String],&sourceDatabase)!= SQLITE_OK)
{
NSLog(@"DB File Open Error :%@", SourceDBPath);
sourceDatabase = NULL;
}
//copy
[self copyFileIfNeed:copy path:documentDir];
NSString *CopyDBPath = [documentDir stringByAppendingPathComponent:copy];
if(sqlite3_open([CopyDBPath UTF8String],©Database)!= SQLITE_OK)
{
NSLog(@"DB File Open Error :%@", CopyDBPath);
copyDatabase = NULL;
}
//source to copy
// How in this area?
}
¿Es correcto? y cómo hacer más? // fuente para copiar el área.
+1 para recordarme creación de la tabla rápida y copiar con "CREATE newTableInDB1 TABLA AS SELECT * FROM aDB.oldTableInMyOtherDB;" –
bien explicado. sería genial si puedes escribir en el código concreto de ios objc. – OMGPOP
Los comandos son de SQL puro, los ejecuta con una llamada a sqlite3_exec(). – Zuppa