fmdb复制表语句:
create table tab_new as select * from tab_old
判断表是否存在:
BOOL isTableExist(FMDatabase *db,NSString * tableName)
{
FMResultSet *rs = [dbexecuteQuery:@"select count(*) as 'count' from sqlite_master where type ='table' and name = ?", tableName];
while ([rsnext])
{
// just print out what we've got in a number of formats.
NSInteger count = [rsintForColumn:@"count"];
NSLog(@"isTableOK %d", count);
if (0 == count)
{
returnNO;
}
else
{
returnYES;
}
}
return NO;
}
例子:
if (isTableExist(db,@"FriendList") && !isTableExist(db,@"FriendFullList"))
{
[db executeUpdate:@"create table FriendFullList as select * from FriendList"];
NSLog(@"noexist");
}
elseif (!isTableExist(db,@"FriendFullList"))
{
[db executeUpdate:@"create table FriendFullList (Jid text primary key,Name text,Use_name text,Email text,Subscription text, Phone text,nickName text)"];
}
SQL里复制表
1、既复制表结构也复制表内容的SQL语句:CREATE TABLE tab_new AS SELECT * FROM tab_old; 2、只复制表结构不复制表内容的SQL语句:CREATE TABLE tab_new AS SELECT * FROM tab_old WHERE 1=2; 3、不复制表结构,只复制内容的sql语句:insert into tab_new select * from tab_old;或者SELECT vale1, value2 into Table2 from Table1