iOS sqlite數(shù)據(jù)庫操作。步驟是:
創(chuàng)新互聯(lián)基于成都重慶香港及美國等地區(qū)分布式IDC機房數(shù)據(jù)中心構建的電信大帶寬,聯(lián)通大帶寬,移動大帶寬,多線BGP大帶寬租用,是為眾多客戶提供專業(yè)成都托管服務器報價,主機托管價格性價比高,為金融證券行業(yè)服務器托管,ai人工智能服務器托管提供bgp線路100M獨享,G口帶寬及機柜租用的專業(yè)成都idc公司。
先加入sqlite開發(fā)庫libsqlite3.dylib,
新建或打開數(shù)據(jù)庫,
創(chuàng)建數(shù)據(jù)表,
插入數(shù)據(jù),
查詢數(shù)據(jù)并打印
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,做網(wǎng)站完全可以,我們有很多成熟的客戶都是使用 node 來做自己的網(wǎng)站的。
另外,如果您有自己的 php 服務器,完全可以使用我們 php 的 sdk,如果您覺得 sdk 太重了,或者您只想使用 LeanCloud 一部分核心的功能,您完全可以調用 LeanCloud 開放的 REST API 進行構建您自己的業(yè)務邏輯。只要您會使用 php 發(fā)送 HTTP(GET,POST,PUT,DELETE) 請求就足矣笑傲 LeanCloud 了。
另外關于數(shù)據(jù)同步,因為我們所有的 SDK 都是調用 REST API 進行數(shù)據(jù)交互的,并且高性能群集服務器幫您 hold 住數(shù)據(jù)的增刪改查,查詢緩存等等,保證數(shù)據(jù)的一致性。所以不管您是開發(fā) iOS ,Android,Windows 都是調用統(tǒng)一的 API。
1. OrmLite
OrmLite 不是 Android 平臺專用的ORM框架,它是Java ORM。支持JDBC連接,Spring以及Android平臺。語法中廣泛使用了注解(Annotation)。
2. SugarORM
SugarORM 是 Android 平臺專用ORM。提供簡單易學的APIs??梢院苋菀椎奶幚?對1和1對多的關系型數(shù)據(jù),并通過3個函數(shù)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擴展需要保存的數(shù)據(jù)類:
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
當性能很重要時(數(shù)據(jù)訪問頻繁),GreenDao是一個很快的解決方案,它能夠支持數(shù)千條記錄的CRUD每秒,和OrmLite相比,GreenDAO要快幾乎4.5倍。(準確數(shù)據(jù)請自行benchmark)。
GreenDAO小于100KB,所以對于應用程序APK的大小影響很小。
這里有一個教程,演示如何使用Android Studio,在Android應用程序中使用GreenDAO框架。
4. Active Android
Active Record(活動目錄)是Yii、Rails等框架中對ORM實現(xiàn)的典型命名方式。Active Android 幫助你以面向對象的方式來操作SQLite。
5. Realm
Realm 是一個將可以使用的Android ORM,基于C++編寫,直接運行在你的設備硬件上(不需要被解釋),因此運行很快。它同時是開源跨平臺的,iOS的代碼可以在GitHub找到,你還可以找到Objective C以及Swift編寫的Realm使用實例。
第一,我不是高手,第二,我可以分享下我的心得。一般的數(shù)據(jù)量很小的項目,沒必要使用數(shù)據(jù)庫,如果只是保存寫用戶信息,大可以用其他的方法,用keychain或者nsuserdefault或者其他的都可以。任何一個項目都需要保存一個使用狀態(tài),不能每次打開項目的時候都和第一次運行一樣,完全新,要給人以使用過的感覺就要存儲一些歷史數(shù)據(jù)。如果怕影響用戶體驗的話,可以多開線程在后臺去對數(shù)據(jù)操作(數(shù)據(jù)量大的情況下),記得對線程要回收。如果你對保存數(shù)據(jù)比較迷茫的話,你可以google一下ios的四種數(shù)據(jù)持久化,對于sqlite和coredata,我個人認為只是兩種不同的存儲方法,一種是小型輕量級sqlite數(shù)據(jù)庫,所有移動設備經(jīng)常用到的,還有一種是蘋果針對ios操作系統(tǒng)開發(fā)的coredata數(shù)據(jù)存儲,具體孰勝孰略還有待你自己去了解,一般如果我的數(shù)據(jù)庫要非常多的表格互相關聯(lián)最后查詢一條結果那么我會采用sqlite,如果存儲一些有規(guī)律的數(shù)據(jù)那么我會采用coredata,沒有哪個更好的說法,只能說這兩種都各有千秋,而我聽前輩們說,coredata只是蘋果對sqlite的又一次封裝而已,方便操作但也局限操作
可以用啊,當然必須可以用啊,
keychain,NSUserdefault,plist,coredata,sqlite,文件的形式的存儲,這6個一般是最常用的,其他的我也沒有用過,也不知道性能咋樣,畢竟我也不是大神,
keychain,鑰匙串,那種無線的密碼保存一般都是用的是這個,
NSUserdefault 這個適合存儲小型的數(shù)據(jù),一般就存?zhèn)€用戶的id,用來判斷是否登錄
plist 這個你看又好多改變字體的大小,主題,一般用的是plist
coredata和這個sqlist,,這兩個看你用哪個方便用哪個,熟練用哪個就用哪個,一般存儲歷史記錄,緩存很多的數(shù)據(jù),大型的數(shù)據(jù),一般用這2個其中1個
文件,文章,特別長的文章,我一般用文件存儲,畢竟存的東西少,這是一篇文章的所有內容
理論上是可以直接讀取數(shù)據(jù)庫的,相當于遠程連接著數(shù)據(jù)。簡單說明一下,就是用客戶端組件,設置數(shù)據(jù)庫地址、端口、用戶、密碼,然后直接select
update,把命令提交到數(shù)據(jù)庫。
但問題在于數(shù)據(jù)庫的信息,用戶密碼存儲在客戶端,容易給反編譯出來(難度這個我不清楚,你做ios開發(fā)可能清楚點)。而當發(fā)生安全問題的時候,要改密碼或者數(shù)據(jù)庫地址,麻煩事就來了,總不能讓用戶再升級一次(ios的發(fā)布期你也知道)。
此外還要考慮數(shù)據(jù)在傳輸過程中是否加密,是否證書方式,現(xiàn)在的網(wǎng)絡,劫持植入廣告滿街都是。好像蘋果那邊有限制今后的新軟件要ssl才行。
當前文章:ios開發(fā)數(shù)據(jù)庫,iOS開發(fā)者網(wǎng)站
標題網(wǎng)址:http://www.rwnh.cn/article34/dssdepe.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供全網(wǎng)營銷推廣、搜索引擎優(yōu)化、小程序開發(fā)、面包屑導航、外貿建站、微信公眾號
聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)