大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
iOS sqlite数据库操作。步骤是:
创新互联基于成都重庆香港及美国等地区分布式IDC机房数据中心构建的电信大带宽,联通大带宽,移动大带宽,多线BGP大带宽租用,是为众多客户提供专业成都托管服务器报价,主机托管价格性价比高,为金融证券行业服务器托管,ai人工智能服务器托管提供bgp线路100M独享,G口带宽及机柜租用的专业成都idc公司。
先加入sqlite开发库libsqlite3.dylib,
新建或打开数据库,
创建数据表,
插入数据,
查询数据并打印
NSString *sqlQuery = @"SELECT * FROM PERSONINFO";
sqlite3_stmt * statement;
if (sqlite3_prepare_v2(db, [sqlQuery UTF8String], -1, statement, nil) == SQLITE_OK) {
while (sqlite3_step(statement) == SQLITE_ROW) {
char *name = (char*)sqlite3_column_text(statement, 1);
NSString *nsNameStr = [[NSString alloc]initWithUTF8String:name];
int age = sqlite3_column_int(statement, 2);
char *address = (char*)sqlite3_column_text(statement, 3);
NSString *nsAddressStr = [[NSString alloc]initWithUTF8String:address];
NSLog(@"name:%@ age:%d address:%@",nsNameStr,age, nsAddressStr);
}
}
sqlite3_close(db);
LeanCloud 本就支持 node 以及 python 构建 web hosting 的 web app,做网站完全可以,我们有很多成熟的客户都是使用 node 来做自己的网站的。
另外,如果您有自己的 php 服务器,完全可以使用我们 php 的 sdk,如果您觉得 sdk 太重了,或者您只想使用 LeanCloud 一部分核心的功能,您完全可以调用 LeanCloud 开放的 REST API 进行构建您自己的业务逻辑。只要您会使用 php 发送 HTTP(GET,POST,PUT,DELETE) 请求就足矣笑傲 LeanCloud 了。
另外关于数据同步,因为我们所有的 SDK 都是调用 REST API 进行数据交互的,并且高性能群集服务器帮您 hold 住数据的增删改查,查询缓存等等,保证数据的一致性。所以不管您是开发 iOS ,Android,Windows 都是调用统一的 API。
1. OrmLite
OrmLite 不是 Android 平台专用的ORM框架,它是Java ORM。支持JDBC连接,Spring以及Android平台。语法中广泛使用了注解(Annotation)。
2. SugarORM
SugarORM 是 Android 平台专用ORM。提供简单易学的APIs。可以很容易的处理1对1和1对多的关系型数据,并通过3个函数save(), delete() 和 find() (或者 findById()) 来简化CRUD基本操作。
要启用SugarORM,需要在你的应用程序 AndroidManifest.xml 配置中添加如下meta-data标签:
meta-data android:name="DATABASE" android:value="my_database.db" /
meta-data android:name="VERSION" android:value="1" /
meta-data android:name="QUERY_LOG" android:value="true" /
meta-data android:name="DOMAIN_PACKAGE_NAME" android:value="com.my-domain" /
然后就可以从SugarORM扩展需要保存的数据类:
public class User extends SugarRecordUser {
String username;
String password;
int age;
@Ignore
String bio; //this will be ignored by SugarORM
public User() { }
public User(String username, String password,int age){
this.username = username;
this.password = password;
this.age = age;
}
}
要添加一个User,代码如下:
User johndoe = new User(getContext(),"john.doe","secret",19);
johndoe.save(); //stores the new user into the database
3. GreenDAO
当性能很重要时(数据访问频繁),GreenDao是一个很快的解决方案,它能够支持数千条记录的CRUD每秒,和OrmLite相比,GreenDAO要快几乎4.5倍。(准确数据请自行benchmark)。
GreenDAO小于100KB,所以对于应用程序APK的大小影响很小。
这里有一个教程,演示如何使用Android Studio,在Android应用程序中使用GreenDAO框架。
4. Active Android
Active Record(活动目录)是Yii、Rails等框架中对ORM实现的典型命名方式。Active Android 帮助你以面向对象的方式来操作SQLite。
5. Realm
Realm 是一个将可以使用的Android ORM,基于C++编写,直接运行在你的设备硬件上(不需要被解释),因此运行很快。它同时是开源跨平台的,iOS的代码可以在GitHub找到,你还可以找到Objective C以及Swift编写的Realm使用实例。
第一,我不是高手,第二,我可以分享下我的心得。一般的数据量很小的项目,没必要使用数据库,如果只是保存写用户信息,大可以用其他的方法,用keychain或者nsuserdefault或者其他的都可以。任何一个项目都需要保存一个使用状态,不能每次打开项目的时候都和第一次运行一样,完全新,要给人以使用过的感觉就要存储一些历史数据。如果怕影响用户体验的话,可以多开线程在后台去对数据操作(数据量大的情况下),记得对线程要回收。如果你对保存数据比较迷茫的话,你可以google一下ios的四种数据持久化,对于sqlite和coredata,我个人认为只是两种不同的存储方法,一种是小型轻量级sqlite数据库,所有移动设备经常用到的,还有一种是苹果针对ios操作系统开发的coredata数据存储,具体孰胜孰略还有待你自己去了解,一般如果我的数据库要非常多的表格互相关联最后查询一条结果那么我会采用sqlite,如果存储一些有规律的数据那么我会采用coredata,没有哪个更好的说法,只能说这两种都各有千秋,而我听前辈们说,coredata只是苹果对sqlite的又一次封装而已,方便操作但也局限操作
可以用啊,当然必须可以用啊,
keychain,NSUserdefault,plist,coredata,sqlite,文件的形式的存储,这6个一般是最常用的,其他的我也没有用过,也不知道性能咋样,毕竟我也不是大神,
keychain,钥匙串,那种无线的密码保存一般都是用的是这个,
NSUserdefault 这个适合存储小型的数据,一般就存个用户的id,用来判断是否登录
plist 这个你看又好多改变字体的大小,主题,一般用的是plist
coredata和这个sqlist,,这两个看你用哪个方便用哪个,熟练用哪个就用哪个,一般存储历史记录,缓存很多的数据,大型的数据,一般用这2个其中1个
文件,文章,特别长的文章,我一般用文件存储,毕竟存的东西少,这是一篇文章的所有内容
理论上是可以直接读取数据库的,相当于远程连接着数据。简单说明一下,就是用客户端组件,设置数据库地址、端口、用户、密码,然后直接select
update,把命令提交到数据库。
但问题在于数据库的信息,用户密码存储在客户端,容易给反编译出来(难度这个我不清楚,你做ios开发可能清楚点)。而当发生安全问题的时候,要改密码或者数据库地址,麻烦事就来了,总不能让用户再升级一次(ios的发布期你也知道)。
此外还要考虑数据在传输过程中是否加密,是否证书方式,现在的网络,劫持植入广告满街都是。好像苹果那边有限制今后的新软件要ssl才行。