iOS中sqlite3操作
- 'SELECT count(*) FROM sqlite_master WHERE type="table" AND name = "table_name"
//从sqlite_master这个系统表中查找名字为"table_name"的表的数量,没错,
是数量,所以,假设结果大于0,说明这个表存在 - 'SELECT
name, sql FROM sqlite_master WHERE type="table" AND name = "table_name" //这个语句据说能够返回创建"table_name"的语句,没错,是语句,当然包括了"table_name"的每一个字段名 - select
* from "table_name", [rs columnNameForIndex:i] //rs是返回的结果集,
该语句返回index == i的字段名, 没错, 是字段名 - CREATE
TABLE "table_name" (first_col integer) //创建数据表;
CREATE TABLE "table_name"
(first_col integer DEFAULT 0,
second_col varchar DEFAULT 'hello')//创建数据表,
first_col字段有缺省值; - 1)ATTACH
DATABASE 'd:/mydb.db' AS mydb
//当前链接为"d:/mydb.db"数据库,之后的操作都会在该数据库下是生效 2).exit //退出当前数据库; - CREATE
TABLE IF NOT EXISTS "table_name" (first_col integer) //假设创建的"table_name"已经存在, 会产生冲突, 导致语句运行失败,IF
NOT EXISTS能够避免这样的错误; - CREATE TABLE "table_name2" AS
SELECT * FROM "table_name1";
//该语句将依照table_name1的模式创建table_name2, 不包括主键约束和缺省值; 使用 .schema "table_name2"能够返回创建数据表的语句; - CREATE
TABLE "table_name" (first_col integer PRIMARY
KEY ASC); //创建数据表, 包括逐渐约束; - CREATE
TABLE "table_name"
(first_col integer UNIQUE);
//创建表, 包括字段值唯一性约束; - CREATE
TABLE "table_name" (first_col
integer NOT NULL);
//创建表, 包括字段值禁止为NULL的约束; - CREATE
TABLE "table_name"
(first_col integer CHECK (first_col
< 5)); //创建表, 包括字段值范围约束; - ALTER
TABLE "table_name1" RENAME
TO "table_name2"; //改动表"table_name1"的名字为"table_name2" - ALTER
TABLE "table_name" ADD
COLUMN second_col integer; //为数据表"table_name"添加字段second_col - DROP
TABLE "table_name"; //删除数据表"table_name" - DROP
TABLE IF EXISTS "table_name"; //删除不存在的数据表会产生错误, 所以用IF EXISTS来避免错误; - CREATE
VIEW "table_name" AS SELECT
* FROM "table_name" WHERE first_col > 100; //创建视图 - DROP
VIEW IF EXISTS "view_name"; //删除视图
iOS中sqlite3操作的更多相关文章
- iOS关于sqlite3操作
原文:http://hi.baidu.com/clickto/blog/item/0c6904f787c34125720eec87.html iPhone中支持通过sqlite3来访问iPhone本地 ...
- iOS中“返回”操作相关
在程序中,总会设置“返回”按钮,但不可能在每一个控制器中都去设置一次“返回”按钮,那如何设置全局的“返回”按钮呢? 首先自定义一个导航控制器,在tabBarController中添加子控制器时,使用这 ...
- iOS 中 延迟操作四种方式
本文列举了四种延时执行某函数的方法及其一些区别.假如延时1秒时间执行下面的方法. - (void)delayMethod { NSLog(@"execute"); } 1.perf ...
- IOS中字符串操作
1.比较大小 - (NSComparisonResult)compare:(NSString *)string; 返回值NSComparisonResult有3种情况: NSOrderedAscend ...
- 使用iOS原生sqlite3框架对sqlite数据库进行操作
摘要: iOS中sqlite3框架可以很好的对sqlite数据库进行支持,通过面向对象的封装,可以更易于开发者使用. 使用iOS原生sqlite3框架对sqlite数据库进行操作 一.引言 sqlit ...
- ios在SQLite3基本操作
iOS关于sqlite3操作 iPhone中支持通过sqlite3来訪问iPhone本地的数据库. 详细用法例如以下 1:加入开发包libsqlite3.0.dylib 首先是设置项目文件.在项目中加 ...
- IOS各种手势操作实例
先看下效果 手势相关的介绍 IOS中手势操作一般是 UIGestureRecognizer 类的几个手势子类去实现,一般我们用到的手势就这么5种: 1.点击 UITapGestureRecogniz ...
- iOS 中SQLite数据库操作
在iOS中实现SQLite数据库的操作:1.导入框架(libsqlite3.0.tbd) 2.导入头文件<sqlite3.h> 3.实现数据的增删改查 实现简单 SQLite数据库操作 的 ...
- 数据库sqlite3的使用-ios中引用方法
一.简单说明 在iOS中使用SQLite3,首先要添加库文件libsqlite3.dylib和导入主头文件. 导入头文件,可以使用库中的函数(是纯C语言的) 二.具体说明 新建一个项目,在项目的主界面 ...
随机推荐
- WF学习笔记(一)
-流程启动方式1: WorkflowInvoker.Invoke(new Workflow1()); -流程启动方式2: WorkflowApplication instance = new Work ...
- Invoke()/BeginInvoke()区别
查看MSDN如下: Control..::.Invoke ---> 在拥有此控件的基础窗口句柄的线程上执行委托. Control..::.BeginInvoke ---> ...
- asp.net MVC 从其它项目复制过来的Area里面的Controllers文件读取不到
从其实项目复制过来的Controllers,在访问时显示不存在文件 检查一下对应的area里面的AreaRegistration文件的命名空间是否一致
- ecshop 商店设置,新增或者修改字段
当想要新增选项到ecshop的商店设置时, 第一步:在ecs_shop_config这个表增加一条设置项记录 parent_id.code.type.value type 会有 group text ...
- BAE Flask UEditor 使用七牛云
1. 配置BAE支持七牛云的SDK BAE的python requirements当然不支持竞争对手了. 解决方法: 把qiniu这个文件包直接放置在你项目的目录中(与其他app同级) 运行会发现缺少 ...
- SQL Server 连接字符串和身份验证
SQL Server .NET Data Provider 连接字符串包含一个由一些属性名/值对组成的集合.每一个属性/值对都由分号隔开. PropertyName1=Value1;P ...
- TatukGIS - GisDefs - CanonicalSQLName 函数
函数名称 CanonicalSQLName 所在单元 GisDefs 函数原型 function CanonicalSQLName(const _name: String; const _tem ...
- C#实现对邮件的发送
首先是邮件帮助类 using System; using System.Collections.Generic; using System.Text; using System.Net.Mail; u ...
- WPF学习笔记-如何按ESC关闭窗口
如何按ESC关闭窗口? 在InitializeComponent();下面增加KeyDown事件,如: public ModifyPrice() { InitializeComponent(); th ...
- hdu 5144 NPY and shot
http://acm.hdu.edu.cn/showproblem.php?pid=5144 题意:给你初始的高度和速度,然后让你求出水平的最远距离. 思路:三分枚举角度,然后根据公式求出水平距离. ...