麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > Swift > 正文

swift3.0 創(chuàng)建sqlite數(shù)據(jù)庫步驟方法

2020-03-09 17:45:02
字體:
供稿:網(wǎng)友

一,導(dǎo)入描述文件

1.

swift,sqlite,數(shù)據(jù)庫,swift創(chuàng)建sqlite

2,

.swift,sqlite,數(shù)據(jù)庫,swift創(chuàng)建sqlite

3,

swift,sqlite,數(shù)據(jù)庫,swift創(chuàng)建sqlite

二,寫橋接文件sqliteManager

1.文件里寫入

#import <sqlite3.h>就可以了

2.把橋接文件添加到編譯環(huán)境

swift,sqlite,數(shù)據(jù)庫,swift創(chuàng)建sqlite

三, 寫數(shù)據(jù)庫管理類(單例)

import UIKit  class sqliteManager: NSObject {   private static let manager: sqliteManager = sqliteManager()   //單例   class func shareManager() -> sqliteManager{     return manager   }   //數(shù)據(jù)庫對象   private var db:OpaquePointer? = nil   func openDB(sqliteName:String){     //0.拿到數(shù)據(jù)庫的路徑     let path = sqliteName.docDir()     print(path)     let cPath = path.cString(using: String.Encoding.utf8)     //1.需要代開的數(shù)據(jù)庫的路徑 c語言的字符串     //2.打開之后的數(shù)據(jù)庫對象(指針),以后所有的數(shù)據(jù)庫操作,都必須拿到這個指針才能進行相關(guān)操作     if sqlite3_open(cPath, &db) != SQLITE_OK{       print("數(shù)據(jù)庫打開失敗")       return      }     if creatTable(){       print("創(chuàng)建表成功")     }else{       print("創(chuàng)建表失敗")     }   }   private func creatTable() -> Bool   {     // 1.編寫SQL語句     // 建議: 在開發(fā)中編寫SQL語句, 如果語句過長, 不要寫在一行     // 開發(fā)技巧: 在做數(shù)據(jù)庫開發(fā)時, 如果遇到錯誤, 可以先將SQL打印出來, 拷貝到PC工具中驗證之后再進行調(diào)試     let sql = "CREATE TABLE IF NOT EXISTS T_Person( /n" +       "id INTEGER PRIMARY KEY AUTOINCREMENT, /n" +       "name TEXT, /n" +       "age INTEGER /n" +     "); /n"     //    print(sql)     // 2.執(zhí)行SQL語句     return execSQL(sql: sql)   }   func execSQL(sql: String) -> Bool   {     // 0.將Swift字符串轉(zhuǎn)換為C語言字符串     let cSQL = sql.cString(using: String.Encoding.utf8)!          // 在SQLite3中, 除了查詢意外(創(chuàng)建/刪除/新增/更新)都使用同一個函數(shù)     /*      1. 已經(jīng)打開的數(shù)據(jù)庫對象      2. 需要執(zhí)行的SQL語句, C語言字符串      3. 執(zhí)行SQL語句之后的回調(diào), 一般傳nil      4. 是第三個參數(shù)的第一個參數(shù), 一般傳nil      5. 錯誤信息, 一般傳nil      */     if sqlite3_exec(db, cSQL, nil, nil, nil) != SQLITE_OK     {       return false     }     return true   }   } 

四,在AppDelegate里調(diào)用openDB函數(shù) 創(chuàng)建數(shù)據(jù)庫

mport UIKit  @UIApplicationMain class AppDelegate: UIResponder, UIApplicationDelegate {    var window: UIWindow?     func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {     // Override point for customization after application launch.     sqliteManager.shareManager().openDB(sqliteName: "tergun.sqlite")     return true   } } 

運行結(jié)果

swift,sqlite,數(shù)據(jù)庫,swift創(chuàng)建sqlite

附件

工具類

// // String+Category.swift // DSWeibo // // Created by xiaomage on 15/9/10. // Copyright © 2015年 小碼哥. All rights reserved. //  import UIKit  extension String{   /**   將當前字符串拼接到cache目錄后面   */   func cacheDir() -> String{     let path = NSSearchPathForDirectoriesInDomains(FileManager.SearchPathDirectory.cachesDirectory, FileManager.SearchPathDomainMask.userDomainMask, true).last! as NSString     return path.appendingPathComponent((self as NSString).lastPathComponent)   }   /**   將當前字符串拼接到doc目錄后面   */   func docDir() -> String   {     let path = NSSearchPathForDirectoriesInDomains(FileManager.SearchPathDirectory.documentDirectory, FileManager.SearchPathDomainMask.userDomainMask, true).last! as NSString     return path.appendingPathComponent((self as NSString).lastPathComponent)   }   /**   將當前字符串拼接到tmp目錄后面   */   func tmpDir() -> String   {     let path = NSTemporaryDirectory() as NSString     return path.appendingPathComponent((self as NSString).lastPathComponent)   } } 

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持VEVB武林網(wǎng)。


注:相關(guān)教程知識閱讀請移步到swift教程頻道。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 日韩视频在线观看免费视频 | 午夜视频在线免费播放 | 91福利免费观看 | 亚洲精品永久视频 | 羞羞视频免费入口网站 | 黄视频网站免费在线观看 | 久久久久国 | 亚洲第一视频在线 | 视频在线色 | 成年人福利视频 | 亚欧美一区二区 | 国产在线导航 | 激情综合在线观看 | 色中色激情影院 | 国产乱淫a∨片免费观看 | 国产精品免费一区二区 | 欧美成人精品一区二区男人小说 | 国产精品免费麻豆入口 | 免费a网 | 国产精品99久久久久久宅女 | 亚洲一区二区 | 国产亚洲精品久久久久5区 综合激情网 | 黄色片网站在线看 | 日韩a毛片免费观看 | 国产1区2区3区中文字幕 | 九色在线78m | 91毛片网站 | 国产精品视频一区二区三区综合 | 黄色av网站免费 | 国产精品视频在线观看免费 | 污版视频在线观看 | 草草视频免费 | 99亚洲伊人久久精品影院红桃 | 国产99久久精品一区二区300 | 国产伦久视频免费观看视频 | 日本在线一区二区 | 亚洲第一成人在线视频 | 亚洲一区二区免费 | 精品一区二区免费 | 香蕉久草在线 | 欧美一级无毛 |