小弟刚开始研究ios,怎么连接以及建立sqlite数据库,谢谢! 小弟刚开始研究ios,学习了一些语法和常用控件,现在想连接以及建立sqlite数据库,不知道怎么下手了,希望高手不吝赐教!!小弟感谢不尽,只能以高分数以表谢意! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 iOS 上的sqlite数据库比较好添加,一般只需要以下两个步骤:1. 添加sqlite3.dylib,可以通过工程->添加framework和library的方式来添加,位置一般在/usr/lib/libsqlite.dylib2. 添加sqlite头文件,一般在/usr/include下。这样准备工作就做完了。创建sqlite db:sqlite3 *database sqlite3_open(DB_Path, &database);其他操作和数据类型,lz可以参考sqlite官方网站。 大哥有没有sqlite数据库的连接,以及增删查改的例子,可以发我邮箱[email protected],谢谢。 网上有代码资料《IOS软件开发揭秘》这本书里面也有完整代码。 我写了个很详细的例子,你看看http://blog.csdn.net/cubepeng/article/details/7336091 ,不太明白的,留个评论,我回解释的! API Titanium.Database.open() DB打开Titanium.Database.close() DB关闭Titanium.Database.ResultSet.field() 字段Titanium.Database.ResultSet.fieldByName() column名 Titanium.Database.DB.execute() SQL执行Titanium.Database.DB.install() SQLite文件读入Titanium.Database.ResultSet.isValidRow() 下一行有无判断Titanium.Database.ResultSet.next() 移动到下一行Titanium.Database.ResultSet.lastInsertRowId() 最后一行IDTitanium.Database.ResultSet.rowsAffected() 更新影响的行数//db打开,DB名称自己任意起一个var db = Titanium.Database.open('mydb');//DB表和数据没有的情况下创建db.execute('CREATE TABLE IF NOT EXISTS DATABASETEST (ID INTEGER, NAME TEXT)');db.execute('INSERT INTO DATABASETEST (ID, NAME ) VALUES(?,?)',1,'Name 1');db.execute('INSERT INTO DATABASETEST (ID, NAME ) VALUES(?,?)',2,'Name 2');Titanium.API.info('JUST INSERTED, lastInsertRowId = ' + db.lastInsertRowId);var rows = db.execute('SELECT * FROM DATABASETEST');Titanium.API.info('ROW COUNT = ' + rows.getRowCount());while(rows.isValidRow()){ Titanium.API.info('ID: ' + rows.field(0) + ' NAME: ' + rows.fieldByName('name')); rows.next();}rows.close(); //DB查询var db = Titanium.Database.open('mydb');db.execute('UPDATE DATABASETEST SET NAME = ? WHERE ID = ?', 'I was updated', 2);var rows = db.execute('SELECT * FROM DATABASETEST');Titanium.API.info('ROW COUNT = ' + rows.getRowCount());while(rows.isValidRow()){ Titanium.API.info('ID: ' + rows.field(0) + ' NAME: ' + rows.fieldByName('name')); rows.next();}rows.close(); 谢谢了 学习了 API Titanium.Database.open() DB打开Titanium.Database.close() DB关闭Titanium.Database.ResultSet.field() 字段Titanium.Database.ResultSet.fieldByName() column名 Titanium.Database.DB.execute() SQL执行Titanium.Database.DB.install() SQLite文件读入Titanium.Database.ResultSet.isValidRow() 下一行有无判断Titanium.Database.ResultSet.next() 移动到下一行Titanium.Database.ResultSet.lastInsertRowId() 最后一行IDTitanium.Database.ResultSet.rowsAffected() 更新影响的行数//db打开,DB名称自己任意起一个var db = Titanium.Database.open('mydb');//DB表和数据没有的情况下创建db.execute('CREATE TABLE IF NOT EXISTS DATABASETEST (ID INTEGER, NAME TEXT)');db.execute('INSERT INTO DATABASETEST (ID, NAME ) VALUES(?,?)',1,'Name 1');db.execute('INSERT INTO DATABASETEST (ID, NAME ) VALUES(?,?)',2,'Name 2');Titanium.API.info('JUST INSERTED, lastInsertRowId = ' + db.lastInsertRowId);var rows = db.execute('SELECT * FROM DATABASETEST');Titanium.API.info('ROW COUNT = ' + rows.getRowCount());while(rows.isValidRow()){ Titanium.API.info('ID: ' + rows.field(0) + ' NAME: ' + rows.fieldByName('name')); rows.next();}rows.close(); IOS 上如何播放RTSP协议的视频流 请问我可以在app内编程实现 开/关 Wifi 吗 第一个作品Cutball上线了。 Teemsoft, Inc发布iMart活动,iPhone软件分成大优惠,8:2 求几个XCODE的快捷键 UITableView问题 关于ios开发中webview加载网页的问题 tabelViewCell加载出来不显示图片,点哪行出哪张,要么在手动刷新一次就全出 在pickerView中选择省市区三级联动的时候如何防止数组越界? 讯飞语音听写 在开启ARC的情况下,抛出EXC_BAD_ACCESS,各位路过的请进来!!! 求解IOS新视图的弹出方式
1. 添加sqlite3.dylib,可以通过工程->添加framework和library的方式来添加,位置一般在/usr/lib/libsqlite.dylib
2. 添加sqlite头文件,一般在/usr/include下。这样准备工作就做完了。
创建sqlite db:
sqlite3 *database
sqlite3_open(DB_Path, &database);
其他操作和数据类型,lz可以参考sqlite官方网站。
《IOS软件开发揭秘》这本书里面也有完整代码。
Titanium.Database.open() DB打开
Titanium.Database.close() DB关闭
Titanium.Database.ResultSet.field() 字段
Titanium.Database.ResultSet.fieldByName() column名
Titanium.Database.DB.execute() SQL执行
Titanium.Database.DB.install() SQLite文件读入Titanium.Database.ResultSet.isValidRow() 下一行有无判断
Titanium.Database.ResultSet.next() 移动到下一行
Titanium.Database.ResultSet.lastInsertRowId() 最后一行ID
Titanium.Database.ResultSet.rowsAffected() 更新影响的行数
//db打开,DB名称自己任意起一个
var db = Titanium.Database.open('mydb');
//DB表和数据没有的情况下创建
db.execute('CREATE TABLE IF NOT EXISTS DATABASETEST (ID INTEGER, NAME TEXT)');db.execute('INSERT INTO DATABASETEST (ID, NAME ) VALUES(?,?)',1,'Name 1');
db.execute('INSERT INTO DATABASETEST (ID, NAME ) VALUES(?,?)',2,'Name 2');Titanium.API.info('JUST INSERTED, lastInsertRowId = ' + db.lastInsertRowId);var rows = db.execute('SELECT * FROM DATABASETEST');
Titanium.API.info('ROW COUNT = ' + rows.getRowCount());while(rows.isValidRow()){ Titanium.API.info('ID: ' + rows.field(0) + ' NAME: ' + rows.fieldByName('name'));
rows.next();
}rows.close();
var db = Titanium.Database.open('mydb');db.execute('UPDATE DATABASETEST SET NAME = ? WHERE ID = ?', 'I was updated', 2);var rows = db.execute('SELECT * FROM DATABASETEST');
Titanium.API.info('ROW COUNT = ' + rows.getRowCount());while(rows.isValidRow()){ Titanium.API.info('ID: ' + rows.field(0) + ' NAME: ' + rows.fieldByName('name'));
rows.next();
}rows.close();
API
Titanium.Database.open() DB打开
Titanium.Database.close() DB关闭
Titanium.Database.ResultSet.field() 字段
Titanium.Database.ResultSet.fieldByName() column名
Titanium.Database.DB.execute() SQL执行
Titanium.Database.DB.install() SQLite文件读入Titanium.Database.ResultSet.isValidRow() 下一行有无判断
Titanium.Database.ResultSet.next() 移动到下一行
Titanium.Database.ResultSet.lastInsertRowId() 最后一行ID
Titanium.Database.ResultSet.rowsAffected() 更新影响的行数
//db打开,DB名称自己任意起一个
var db = Titanium.Database.open('mydb');
//DB表和数据没有的情况下创建
db.execute('CREATE TABLE IF NOT EXISTS DATABASETEST (ID INTEGER, NAME TEXT)');db.execute('INSERT INTO DATABASETEST (ID, NAME ) VALUES(?,?)',1,'Name 1');
db.execute('INSERT INTO DATABASETEST (ID, NAME ) VALUES(?,?)',2,'Name 2');Titanium.API.info('JUST INSERTED, lastInsertRowId = ' + db.lastInsertRowId);var rows = db.execute('SELECT * FROM DATABASETEST');
Titanium.API.info('ROW COUNT = ' + rows.getRowCount());while(rows.isValidRow()){ Titanium.API.info('ID: ' + rows.field(0) + ' NAME: ' + rows.fieldByName('name'));
rows.next();
}rows.close();