[Swift]Sqlite的相关整理

我擦,2015就这么过了3天了。明天又是不要不要的去上班…

此贴是Swift版本的,自己闲着蛋疼整理着玩。demo_>sqlite
1)导入libsqlite3.0.dylib :点击项目_>Build Phases_>Link Binary With Libraries_>输入libsqlite

2)新增ProjectName-Bridging-Header.h :
_>新建一个.h文件,改名ProjectName-Bridging-Header.h 如:项目叫sqlite就改为sqlite-Bridging-Header.h
_>完事后,点击项目_>Build Settings_>搜索 objective-c Bridging Header_>输入sqlite-Bridging-Header.h的路径【注意是路径】

3)引入sqlite3.h : 打开sqlite-Bridging-Header.h ,加入一句
[objc]
#import "sqlite3.h"
[/objc]

4)可以开始写了。
要是象以前OC都是sqlite3 *db; 现在写进去会提示“ use of undeclared type ‘sqlite3’ ”
所以要改成酱紫,关于COpaquePointer这个可以看_>http://www.cocoachina.com/swift/20141014/9900.html
[objc]
var db : COpaquePointer = nil
[/objc]

5)打开数据库:
[objc]
var paths : NSArray = NSSearchPathForDirectoriesInDomains(.DocumentDirectory, .UserDomainMask, true)
var documents : NSString = paths.objectAtIndex(0) as NSString
var database_path : NSString = documents.stringByAppendingPathComponent(kDBName)

NSLog("数据库路径 : %@", database_path)

if (sqlite3_open(database_path.UTF8String, &db) != SQLITE_OK) {
sqlite3_close(db)
NSLog("数据库打开失败")
}
[/objc]

6)关闭数据库:
[objc]
if sqlite3_close(db) != SQLITE_OK {
NSLog("数据库关闭失败")//貌似Demo里面这里顺手复制上面,给写成打开
}
[/objc]

7)执行语句:
[objc]
func execSql(sql : NSString){
if (sqlite3_exec(db, sql.UTF8String, nil, nil, nil) != SQLITE_OK) {
sqlite3_close(db)
NSLog("数据库操作数据失败!")
}

}
[/objc]

8)查询语句:
[objc]
func querySql(sql : NSString) -> COpaquePointer {

var statement : COpaquePointer = nil

if (sqlite3_prepare_v2(db, sql.UTF8String, -1, &statement, nil) == SQLITE_OK) {

return statement

}
sqlite3_close(db)
return nil
}
[/objc]

9)然后就没了,详细怎么用可以直接下Demo看。忘了补个宏
[objc]
let kDBName = "studentInfo.sqlite"
[/objc]

85 thoughts on “[Swift]Sqlite的相关整理

  1. film promotion

    Hey There. I found your blog using msn. This is a really well
    written article. I will make sure to bookmark it and return to read more of your useful info.
    Thanks for the post. I’ll definitely return.

  2. réparation toit plat

    Hey are using WordPress for your site platform?

    I’m new to the blog world but I’m trying to get started and set up my own. Do you need any coding
    knowledge to make your own blog? Any help would be greatly
    appreciated!

  3. studio

    Hi, i think that i saw you visited my blog so i came to
    “return the favor”.I’m trying to find things to enhance my site!I suppose its ok to use some of your ideas!!

  4. business development

    A fascinating discussion is worth comment. There’s no doubt
    that that you ought to write more about this subject, it might not be a taboo matter
    but usually people do not speak about such subjects.
    To the next! Cheers!!

  5. купить корость

    Вред от наркотиков — этто сложная хоботня, обхватывающая физическое, психическое (а) также общественное здоровье человека.
    Употребление эких наркотиков, как кокаин, мефедрон, ямба, «шишки» чи «бошки», может обусловить для необратимым следствиям яко
    чтобы организма, яко и для мира в течение целом.
    Но даже у выковывании связи эвентуально восстановление — ядро, чтоб зависимый человек обратился согласен помощью.

    Эпохально помнить, что наркомания врачуется, равным образом реабилитация бацнет шансище на новую жизнь.

  6. free gems android

    We’re a bunch of volunteers and starting a brand new scheme in our community.
    Your web site offered us with helpful information to work
    on. You’ve performed an impressive task and our entire neighborhood will likely be thankful to you.

  7. купить корость

    Вред от наркотиков — этто групповая хоботня, обхватывающая физическое,
    психическое равным образом социальное здоровье
    человека. Употребление эких наркотиков, как снежок, мефедрон,
    ямба, «наркотик» чи «бошки», что
    ль привести ко неконвертируемым последствиям яко чтобы
    организма, яко и для общества на целом.

    Хотя даже у развитии связи возможно электровосстановление —
    главное, чтобы энергозависимый человек обратился
    за помощью. Важно помнить,
    что наркомания лечится, равным образом реабилитация дает шанс сверху
    новую жизнь.

Suikkw进行回复 取消回复

电子邮件地址不会被公开。