iOS mysql语句

1.创建数据库

//数据库存放的路径
NSString *tempPath = [NSTemporaryDirectory() stringByAppendingPathComponent:@"temp.db"];
NSLog(@"path: %@", tempPath);
FMDatabase *db = [FMDatabase databaseWithPath:tempPath];

2.创建表

//创建一张名为Demo的表,并设置id为主键,字段为name的表
//插入一条name为@"Hello World"的数据
NSString *sql = @"create table Demo (id integer primary key autoincrement, name text);"
                 "insert into Demo (name) values ('Hello World');";

执行SQL语句

BOOL success = [db executeStatements:sql];

3.对数据库操作

3.1增:

给已存在的表插入一列

sql =   @"alter table Demo add column age integer;"
3.2删:

给已存在的表删除一列

由于SQLlite不支持drop方法,所以无法使用下面语句

sql =   @"alter table Demo drop column age;";

所以我们只能曲线救国:
1.根据原表创建一张新表
2.删除原表
3.将新表重名为旧表的名称

    sql = @"create table teacher as select id, name from Demo";
    BOOL success = [db executeStatements:sql];

    if (success) {
        sql = @"drop table if exists Demo";
        success = [db executeStatements:sql];
        
        if (success) {
            sql = @"alter table teacher rename to Demo";
            success = [db executeStatements:sql];
        }
    }
3.3改:

不支持修改字段名;
不支持删除字段名;

3.3查:
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

友情链接更多精彩内容