创建数据库语句

-(void)creatData

{

sqlite3 *sqlite = nil;

NSString *filePath = [NSHomeDirectory() stringByAppendingPathComponent:@"Documents/data.file" ];

//打开数据库

int result  = sqlite3_open([filePath  UTF8String], &sqlite);

if (result !=SQLITE_OK) {

NSLog(@"创建失败!!!");

return ;

}

//创建表的SQL语句

NSString *sql = @"CREATE TABLE IF NOT EXISTS UserTable(userName text PRIMARY KEY ,password text,email text)";

//执行SQL语句

char *error;

result = sqlite3_exec(sqlite, [sql  UTF8String], NULL, NULL, &error);

if (result != SQLITE_OK) {

NSLog(@"创建数据库失败:%s",error);

return ;

}

//插如入一条数据

//INSERT OR REPLACE INTO UserTable (userName,password,email) VALUES(?,?,?);

//更新一条数据

//UPDATE UserTable set password = '' where userName = '';

//查询数据

//SELECT userName ,password,eamil FROM UserTable where username = '';

//删除数据

// DELETE FROM UserTable WHERE username ='';

//关闭数据库

sqlite3_close(sqlite);

}

**************************

-(void)editData

{

sqlite3 *sqlite = nil;

//句柄语句

sqlite3_stmt *stmt =nil;

//数据库

NSString *filePath = [NSHomeDirectory() stringByAppendingPathComponent:@"Documents/data.file"];

int result  = sqlite3_open([filePath  UTF8String], &sqlite);

if (result !=SQLITE_OK) {

NSLog(@"打开数据库失败!!!");

return ;

}

//创建SQL 语句

NSString *sql = @" INSERT INTO UserTable (userName,password,email) VALUES (? ,?, ?)";

//编译SQL语句

sqlite3_prepare_v2(sqlite, [sql UTF8String], -1, &stmt, NULL);

NSString *userName = @"张三";

NSString *password = @"123456";

NSString *email    = @"mxyd.qq";

//绑定填充SQL语句

sqlite3_bind_text(stmt, 1, [userName UTF8String], -1, NULL);

sqlite3_bind_text(stmt, 2, [password UTF8String], -1, NULL);

sqlite3_bind_text(stmt, 3, [email UTF8String], -1, NULL);

SQL编辑语句

//执行SQL语句

result = sqlite3_step(stmt);

if (result == SQLITE_ERROR || result  == SQLITE_MISUSE) {

NSLog(@"编译数据库出错!!!");

return;

}

//关闭句柄语句

sqlite3_finalize(stmt);

//关闭数据库

sqlite3_close(sqlite);

NSLog(@"数据插入成功!!!");

}

SQLite 的创建与编辑的更多相关文章

  1. 在ArcMap 10.3中创建和编辑数据

    在ArcMap 10.3中创建和编辑数据 .......待补充 新建 创建一个新文件((Points, Polylines, and Polygons/点.线.多边形)

  2. 关于SQLite的创建以及使用相关说明

    关于SQLite的创建以及使用相关说明 没有给出具体的程序,但看完这后可能对你有所帮助. 数据库操作基本知识: execSQL(String sql): 执行一个数据库语句 insert(table, ...

  3. openerp模块收藏 移除下拉选择列表中的“创建并编辑”链接(转载)

    移除下拉选择列表中的“创建并编辑”链接 原文:http://shine-it.net/index.php/topic,5990.0.html 有时希望下拉列表中列出的项是与主表某个字段关联的,用户只能 ...

  4. 创建和编辑 crontab 文件

    http://docs.oracle.com/cd/E24847_01/html/819-6951/sysrescron-24589.html 创建和编辑 crontab 文件 创建 crontab  ...

  5. Android开发 MMS支持 创建和编辑MMS

    Composing and editing MMS在Android Mms 应用里面的具体实现形式,或数据结构是SlideshowModel,它是一个每个节点为SlideModel的 ArrayLis ...

  6. Unity编辑器-创建单独编辑框,折叠框,提示框

    今天我们就来学习如何创建一个编辑框,上面绘制一个折叠框里面有四种消息框. 代码如下: using UnityEngine; using System.Collections; using UnityE ...

  7. crm创建和编辑全局选项集

    一个选项集就是可包含在一个实体中的某种类型的字段.它定义一组选项.当一个选项集显示在窗口中时,将使用下拉列表控件.当在 Advanced Find 中显示时,则使用选择列表控件.有时,开发者将选项集称 ...

  8. MVC 5显示、创建、编辑、删除等功能实练

    MVC 5显示.创建.编辑.删除等功能实练 在前天的学习小结中<15天学习MVC后的小结(分享经历与想法)>http://www.cnblogs.com/insus/p/3369870.h ...

  9. 使用Python Shapefile Library创建和编辑Shapefile文件

    介绍 shapefile是GIS中非常重要的一种数据类型,在ArcGIS中被称为要素类(Feature Classes),主要包括点(point).线(polyline)和多边形(polygon).P ...

随机推荐

  1. jQuery插件中的this指的是什么

    在jQuery插件的范围里, this关键字代表了这个插件将要执行的jQuery对象, 但是在其他包含callback的jQuery函数中,this关键字代表了原生的DOM元素.这常常会导致开发者误将 ...

  2. 8. vim编辑器高级应用

    1. vim主要模式介绍 命令模式.命令行模式.编辑模式 字符操作:i 当前插入, I行首插入, a当前字符之后插入,A行首插入, ESC退出当前模式 2. vim命令模式 3. vim插入模式 4. ...

  3. java IO输入输出流中的各种字节流,字符流类

    字节流字节流主要是操作byte类型数据,也byte数组为准,主要操作类就是·字节输出流:OutputStream·字节输入流:InputStream字符流在程序中一个字符等于2个字节,那么java提供 ...

  4. TI PDK3.0 qt 交叉编译环境设置

    上午剑锋给的方法,成功在qtcreator上面加入TI官方的qmake以及他的交叉编译器. 1. 步骤如下: 1. 我假设TI PDK3.0 安装目录为顶层目录. 2. 进入linux-devkit ...

  5. dell md3200i mdss (企业管理) 安装的那点事儿

    首先获取安装包,解压后如图: 我是在windows 机上安装,所以执行windows 文件夹下的可执行程序: 双击红箭头文件,进行安装,步骤截图如下: 出现最后这个界面,就说明安装成功,直接重启系统就 ...

  6. Django模板与Vue.js冲突问题

    参考: https://my.oschina.net/soarwilldo/blog/755984 方法1:修改vue.js的默认的绑定符号 Vue.config.delimiters = [&quo ...

  7. javaSE基础03

    javaSE基础03 生活中常见的进制:十进制(0-9).星期(七进制(0-6)).时间(十二进制(0-11)).二十四进制(0-23) 进制之间的转换: 十进制转为二进制: 将十进制除以2,直到商为 ...

  8. EXCEL 对比数据是否重复

    1.同一列 后一行对比前面所有行 查找是否重复 =IF(COUNTIF(B$2:B2,B2)>1,"重复","") 2.两行两列(多行多列) 两行两列 = ...

  9. MySQL延迟复制--percona-toolkit和MASTER TO MASTER_DELAY

    为了数据的安全,有的时候数据库需要延迟备份,这里说下两种延迟备份的方法. 一.借助工具. 实现环境: 192.168.189.143 (mysql主库) 192.168.189.144 (mysql备 ...

  10. 【Java EE 学习 72 下】【数据采集系统第四天】【移动/复制页分析】【使用串行化技术实现深度复制】

    一.移动.复制页的逻辑实现 移动.复制页的功能是在设计调查页面的时候需要实现的功能.规则是如果在同一个调查中的话就是移动,如果是在不同调查中的就是复制. 无论是移动还是复制,都需要注意一个问题,那就是 ...