SQLite

Tag: FMDB

目次

関連ページ

参考情報

概要

  • SQLiteをObjective-CやSwiftから利用するためのライブラリ

Swiftから使う

nilの取り扱いに注意

  • 基本Objective-C用に作られたライブラリなのでnilの取り扱いに注意が必要。

INSERTする場合

  • nilをNULLとしてDBに保存したい場合NSNullに変換する。
    do {
        let identifier = 42
        let name = "Liam O'Flaherty (\"the famous Irish author\")"
        let date = NSDate()
        let comment: String? = nil
    
        try db.executeUpdate("INSERT INTO authors (identifier, name, date, comment) VALUES (?, ?, ?, ?)", values: [identifier, name, date, comment ?? NSNull()])
    } catch {
        print("error = \(error)")
    }
    

値を取得する場合

  • stringForColumnはNULLをnilとして返す。大してintForColumnはNULLを0として返す。Result Values From A QueryのConversionを参考のこと。
  • intForColumnだとNULLが保存されていても0が保存されていても区別できないことになる。区別したい場合columnIsNullを使用する。

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2016-06-06 (月) 16:43:13