Swift 中使用 SQLite——修改和删除数据
来源:互联网 发布:战地mac版 编辑:程序博客网 时间:2024/04/30 05:10
本文主要介绍在SQLite中修改数据、删除数据:
- 更新记录
/// 将当前对象信息更新到数据库////// - returns: 是否成功func updatePerson() -> Bool { guard let name = name else { print("姓名不能为空") return false } if id <= 0 { print("id 不正确") return false } let sql = "UPDATE T_Person set name = '\(name)', age = \(age), height = \(height) \n" + "WHERE id = \(id);" return SQLiteManager.sharedManager.execSQL(sql)}
- 删除记录
/// 将当前对象从数据库中删除////// - returns: 是否成功func deletePerson() -> Bool { if id <= 0 { print("id 不正确") return false } let sql = "DELETE FROM T_Person WHERE id = \(id);" return SQLiteManager.sharedManager.execSQL(sql)}
- 测试代码
/// 测试更新数据private func demoUpdate() { let p = Person(dict: ["id": 3000, "name": "老王", "age": 108, "height": 1.7]) if p.updatePerson() { print("更新成功 \(p)") } else { print("更新失败") }}/// 测试删除数据private func demoDelete() { let p = Person(dict: ["id": 3000, "name": "老王", "age": 108, "height": 1.7]) if p.deletePerson() { print("删除成功 \(p)") } else { print("删除失败") }}
小结
- 创表 / 新增 / 修改 / 删除 本质上都是执行一条
SQL 指令
- 删除记录时,如果数据不存在,不会返回错误
- 更新记录时,如果指定的 id 不存在,不会返回错误
数据操作方法扩展
- 增加
execUpdate
函数
/// 执行 更新 / 删除 SQL////// - parameter sql: sql////// - returns: 返回 更新 / 删除 的数据行数func execUpdate(sql: String) -> Int { if !execSQL(sql) { return -1 } // 返回影响的数据行数 return Int(sqlite3_changes(db))}
- 修改更新和删除按钮,再次测试
/// 将当前对象从数据库中删除////// - returns: 是否成功func deletePerson() -> Bool { if id <= 0 { print("id 不正确") return false } let sql = "DELETE FROM T_Person WHERE id = \(id);" return SQLiteManager.sharedManager.execUpdate(sql) > 0}/// 将当前对象信息更新到数据库////// - returns: 是否成功func updatePerson() -> Bool { guard let name = name else { print("姓名不能为空") return false } if id <= 0 { print("id 不正确") return false } let sql = "UPDATE T_Person set name = '\(name)', age = \(age), height = \(height) \n" + "WHERE id = \(id);" return SQLiteManager.sharedManager.execUpdate(sql) > 0}
备注
- 新增记录可以使用
sqlite3_last_insert_rowid
获取最后插入的主键数值 - 更新 / 删除记录可以使用
sqlite3_changes
获取影响数据行数
0 0
- Swift 中使用 SQLite——修改和删除数据
- Swift 中使用 SQLite——修改和删除数据
- Swift 中使用 SQLite——新增数据
- Swift 中使用 SQLite——查询数据
- Swift 中使用 SQLite——查询数据
- Swift 中使用 SQLite——新增数据
- Swift 中使用 SQLite——打开数据库
- Swift 中使用 SQLite——创建数据表
- Swift 中使用 SQLite——批量更新(事务处理)
- Swift 中使用 SQLite——打开数据库
- Swift 中使用 SQLite——批量更新(事务处理)
- HiveQL 数据定义语言使用(一)—Hive中数据库的创建、显示、删除和修改操作介绍
- SQLite的使用—— Swift代码
- Qt操作SQLite数据库——创建、打开、关闭、增加、删除和修改操作
- Android数据库(SQLite)框架(5)——LitePal的修改和删除操作
- Qt操作SQLite数据库——创建、打开、关闭、增加、删除和修改操作
- SQLITE删除表中所有数据方法
- Adobe AIR中使用Flex连接Sqlite数据库(2)(添加,删除,修改以及语句参数)
- javascript变量赋值
- 拦截器
- Enumeration和Iterator的区别
- Log4Qt
- Orcale数据库SQL语言总结
- Swift 中使用 SQLite——修改和删除数据
- memcpy优化 实现高效
- Unity 3D:访问另一个C#类中的属性或方法
- PhotoShop基础——如何抠图
- Swift 中使用 SQLite——新增数据
- 基于STM32的红外遥控重点解析
- Qt/C++ 模仿 360安全卫士 10.2版本
- Linux - Ubuntu 安装MySQL
- 连接Linux服务器:Win免费SSH客户端工具