swift 连接mysql数据库_Swift - 操作SQLite数据库(引用SQLite3库)
重要事项(2015-11-23日):SQLiteBD原作者又继续更新了,现在已经完美支持Swift2.0。所以大家可以直接使用,本文使用样例也已同步更新。
重要事项(2016-10-31日):SQLiteBD库已经升级至Swift3,本文使用样例也已同步更新。
下面通过一个样例展示SQlite数据库连接,创建表,查询数据,插入数据等操作。
1,当输入用户名和手机号,点击保存即可将数据存入数据库
2,下次启动,自动从数据库中载入初始化信息
操作步骤:
1,在 Build Phases-> Link Binary With Libraries中点击加号,添加libsqlite3.0.tbd 到项目中来
2,创建连接头文件Bridging-Header.h
#import "sqlite3.h"
#import
3,在项目编译属性里引用头文件
4,导入SQLiteDB的代码(SQLiteDB.swift、SQLTable.swift),代码结构如下:
5,ViewController.swift代码
import UIKit
class ViewController: UIViewController {
var db:SQLiteDB!
@IBOutlet var txtUname: UITextField!
@IBOutlet var txtMobile: UITextField!
override func viewDidLoad() {
super.viewDidLoad()
//获取数据库实例
db = SQLiteDB.shared
//打开数据库
_ = db.openDB()
//如果表还不存在则创建表(其中uid为自增主键)
let result = db.execute(sql: "create table if not exists t_user(uid integer primary key,uname varchar(20),mobile varchar(20))")
print(result)
//如果有数据则加载
initUser()
}
//点击保存
@IBAction func saveClicked(_ sender: AnyObject) {
saveUser()
}
//从SQLite加载数据
func initUser() {
let data = db.query(sql: "select * from t_user")
if data.count > 0 {
//获取最后一行数据显示
let user = data[data.count - 1]
txtUname.text = user["uname"] as? String
txtMobile.text = user["mobile"] as? String
}
}
//保存数据到SQLite
func saveUser() {
let uname = self.txtUname.text!
let mobile = self.txtMobile.text!
//插入数据库,这里用到了esc字符编码函数,其实是调用bridge.m实现的
let sql = "insert into t_user(uname,mobile) values('\(uname)','\(mobile)')"
print("sql: \(sql)")
//通过封装的方法执行sql
let result = db.execute(sql: sql)
print(result)
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
}
}
老代码下载(只支持Swift1.2):
MySQLite.zip
swift 连接mysql数据库_Swift - 操作SQLite数据库(引用SQLite3库)相关推荐
- au3 连接mysql_AutoIt3开发的操作SQlite数据库的源码
AutoIt3开发的操作SQlite数据库的源码 AutoIt3开发的操作SQlite数据库的源码下载 部分源码 _SQLite_Startup () ;加载 SQLite.dll If Not Fi ...
- python数据库sqlite3_Python 操作 SQLite 数据库
本文字数:3808 字 阅读本文大概需要:10 分钟 写在之前 SQLite 是一个小型的关系型数据库,它最大的特点在于不需要单独的服务.零配置.我们在之前讲过的两个数据库,不管是 MySQL 还是 ...
- python操作sqlite数据库_Python 操作SQLite数据库的示例
SQLite,是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中.在很多嵌入式产品中使用了它,它占用资源非常的低,python 中默认继承了操作此款数据库的引擎 sq ...
- python的sqlite数据库_Python操作SQLite数据库
### 连接数据库 从2.5版本开始,Python的标准库中就有了一个专门用于SQLite的sqlite3模块.连接SQLite数据库方式如下: ~~~ import sqlite3 as dbapi ...
- sqlite mysql php_PHP实现的简单操作SQLite数据库类与用法示例
本文实例讲述了PHP实现的简单操作SQLite数据库类与用法.分享给大家供大家参考,具体如下: SQLite是一款轻型的数据库,是遵守ACID的关联式数据库管理系统,它的设计目标是嵌入式的,而且目前已 ...
- python数据存储系列教程——python操作sqlite数据库:连接、增删查改、指令执行
全栈工程师开发手册 (作者:栾鹏) python教程全解 python操作sqlite数据库 sqlite数据库以.db格式的文件形式存在,所以不需要安装驱动和应用系统,在标准库中也集成了sqlite ...
- android查询mysql并显示_Android操作SQLite数据库(增、删、改、查、分页等)及ListView显示数据的方法详解...
本文实例讲述了Android操作SQLite数据库(增.删.改.查.分页等)及ListView显示数据的方法.分享给大家供大家参考,具体如下: 由于刚接触android开发,故此想把学到的基础知识记录 ...
- PC软件开发技术之三:C#操作SQLite数据库
我们在开发应用是经常会需要用到一些数据的存储,存储的方式有多种,使用数据库是一种比较受大家欢迎的方式.但是对于一些小型的应用,如一些移动APP,通常的数据库过于庞大,而轻便的SQLite则能解决这一问 ...
- C#操作SQLite数据库
我们在开发应用是经常会需要用到一些数据的存储,存储的方式有多种,使用数据库是一种比较受大家欢迎的方式.但是对于一些小型的应用,如一些移动APP,通常的数据库过于庞大,而轻便的SQLite则能解决这一问 ...
最新文章
- 短信验证码的登录流程
- 如何用最短时间搞定酷炫可视化大屏?这款工具值得一看
- 注定不平凡的2020年
- SilverLight学习笔记--WCF服务
- OSTimeTick()函数解析
- Go语言之标志符可见性
- 不同磁盘目录共享linux,linux下实现磁盘共享(mount)
- 基于SpringBoot 2.0正式版的SpringCloud的微服务实战项目搭建
- 每日优鲜上市首日股价报收于9.66美元 目前总市值约22.74亿美元
- ZBrush常用快捷键
- 通过键盘事件执行查询与回填数据
- echo输出不重复行到文件 shell_Shell脚本echo指令使用小技巧
- SpringMVC的Restful风格
- 【第四章】NB-IoT模组BC95 利用串口调试助手接入华为(电信)平台
- 项目报告制作-中型无盘网吧
- java放大镜怎么写,JavaScript简单实现放大镜效果代码
- 对Volterra级数公式的理解-1
- python--文件的导入与导出
- 2020 CM-BERT: Cross-Modal BERT for Text-Audio Sentiment Analysis
- 嵌入式实时操作系统的基本概念
热门文章
- 今天带你们走进缓存的雪崩、击穿、穿透基本概念
- GIT:如何管理本机的多个ssh密钥(多个远程仓库账号)
- android Camera照相机技术(一)
- python加密库_python基于pyDes库实现des加密的方法
- 以 27K 成功入职字节跳动,这份《 软件测试面试笔记》让我受益终身...
- 按计算机的地位划分计算机网络可分为,2010年全国自考计算机网络基本原理模拟试卷(三)及答案...
- table列最小宽度 vue_vue中获取滚动table的可视页面宽度调整表头与列对齐(每列宽度不都相同)...
- Linux+mysql重置_linux环境mysql重置密码
- 极视教育的课程怎么样_蒲公英教育加盟怎么样?
- C语言打印100-200之间的素数