iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >Swift版的SQLite帮助类怎么创建
  • 357
分享到

Swift版的SQLite帮助类怎么创建

2024-04-02 19:04:59 357人浏览 八月长安
摘要

这篇文章主要讲解了“Swift版的sqlite帮助类怎么创建”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Swift版的SQLite帮助类怎么创建”吧!SQ

这篇文章主要讲解了“Swift版的sqlite帮助类怎么创建”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Swift版的SQLite帮助类怎么创建”吧!

SQLiteHelper

创建SQLiteHelper类

///  SQLite数据库处理帮助类
///
///  此类中封装了关于SQLite数据库处理的业务函数
class SQLiteHelper
{
    // 业务代码...}

单例

private static let instance = SQLiteHelper()/// 单例  全局的数据访问接口class var sharedInstance: SQLiteHelper
{return instance
}

全局变量

var db: COpaquePointer = nil

打开数据库

///  打开数据库//////  :param: dbName 数据库名称//////  :returns: 返回 是否打开成功func openDatabase(dbName: String) -> Bool
{let path = dbName.documentPath()
    println(path)return sqlite3_open(path, &db) == SQLITE_OK
}

创建示例数据表

///  创建 T_Department 和 T_Employee 表//////  :returns: 返回 是否创建成功func createTable() -> Bool
{
    let sql = "CREATE TABLE \n" +"IF NOT EXISTS T_Department (\n" +"id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,\n" +"DepartmentNo CHAR(10) NOT NULL DEFAULT '',\n" +"Name CHAR(50) NOT NULL DEFAULT '' \n" +"); \n" +"CREATE TABLE IF NOT EXISTS T_Employee ( \n" +"'id' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT, \n" +
        "'name' TEXT NOT NULL, \n" +
        "'age' INTEGER NOT NULL, \n" +
        "'department_id' INTEGER, \n" +
        "CONSTRaiNT 'FK_DEP_ID' FOREIGN KEY ('department_id') REFERENCES 'T_Department' ('id') \n" +
    ");"
    // 返回结果
    return execSql(sql)
}

执行INSERT、UPDATE、DELETE 语句

///  执行INSERT、UPDATE、DELETE SQL语句//////  :param: sql SQL语句//////  :returns: 返回 是否执行成功func execSql(sql: String) -> Bool
{// 返回结果
   return sqlite3_exec(db, sql.cStringUsingEncoding(NSUTF8StringEncoding)!, nil, nil, nil) == ITE_OK
}

执行SQL语句 返回结果数量

///  执行SQL语句 返回结果数量//////  :param: sql SQL语句//////  :returns: 返回 结果func execCount(sql: String) -> Int
{let record = execRecordSet(sql)// 返回结果return (record[0] as! [AnyObject])[0] as! Int
}

执行返回单条记录

///  执行返回单条记录//////  :param: sql SQL语句//////  :returns: 返回 单条记录func execRow(sql: String) -> [AnyObject]?
{let record = execRecordSet(sql)if record.count > 0{return (record[0] as! [AnyObject])
    }else{return nil
    }
}

执行 SQL 返回结果集合

///  执行 SQL 返回结果集合//////  :param: sql SQL语句//////  :returns: 返回 查询的结果集func execRecordSet(sql: String) -> [AnyObject]
{var stmt: COpaquePointer = nilvar recordList = [AnyObject]()if sqlite3_prepare_v2(db, sql.cStringUsingEncoding(NSUTF8StringEncoding)!, -1, &stmt, nil) == TE_OK
    {while sqlite3_step(stmt) == SQLITE_ROW
        {
            recordList.append(singleData(stmt)!)
        }
    }// 释放语句sqlite3_finalize(stmt)// 返回结果return recordList
}

执行一行数据

///  执行一行数据//////  :param: stmt 执行的语句//////  :returns: 返回一行数据数组func singleData(stmt: COpaquePointer) -> [AnyObject]?
{var result = [AnyObject]()// 返回该表的列数let count = sqlite3_column_count(stmt)//        #define SQLITE_INTEGER  1//        #define SQLITE_FLOAT    2//        #define SQLITE_BLOB     4//        #define SQLITE_NULL     5//        #ifdef SQLITE_TEXT//        # undef SQLITE_TEXT//        #else//        # define SQLITE_TEXT     3//        #endif//        #define SQLITE3_TEXT     3for index in 0..<count
    {let type = sqlite3_column_type(stmt, index)// 根据字段的类型,提取对应列的值switch type {case SQLITE_INTEGER:
            result.append(Int(sqlite3_column_int64(stmt, index)))case SQLITE_FLOAT:
            result.append(sqlite3_column_double(stmt, index))case SQLITE_NULL:
            result.append(NSNull())case SQLITE_TEXT:let rrrrr: UnsafePointer<UInt8> = sqlite3_column_text(stmt, index)let chars = UnsafePointer<CChar>(sqlite3_column_text(stmt, index))let str = String(CString: chars, encoding: NSUTF8StringEncoding)!
            result.append(str)case let type:
            println("不支持的类型 \(type)")
        }
    }// 返回结果return result
}

感谢各位的阅读,以上就是“Swift版的SQLite帮助类怎么创建”的内容了,经过本文的学习后,相信大家对Swift版的SQLite帮助类怎么创建这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!

您可能感兴趣的文档:

--结束END--

本文标题: Swift版的SQLite帮助类怎么创建

本文链接: https://www.lsjlt.com/news/70534.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Swift版的SQLite帮助类怎么创建
    这篇文章主要讲解了“Swift版的SQLite帮助类怎么创建”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Swift版的SQLite帮助类怎么创建”吧!SQ...
    99+
    2024-04-02
  • 怎么创建sqlite数据库
    要创建SQLite数据库,可以按照以下步骤操作: 下载SQLite数据库管理工具,比如SQLiteStudio或SQLite Br...
    99+
    2024-04-10
    sqlite
  • Qt怎么创建SQlite数据库
    今天小编给大家分享一下Qt怎么创建SQlite数据库的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。Qt 创建 SQlite数...
    99+
    2023-06-30
  • SQLite 中怎么创建数据库
    SQLite 中怎么创建数据库,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。sqlite3命令的基本语法如下:  $sqlite3Data...
    99+
    2024-04-02
  • 如何在Laravel中创建自己的PHP帮助函数
    小编给大家分享一下如何在Laravel中创建自己的PHP帮助函数,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!php是什么语言php,一个嵌套的缩写名称,是英文超...
    99+
    2023-06-14
  • sqlite怎么创建一个数据库
    要在SQLite中创建一个数据库,需要执行以下步骤: 打开SQLite命令行终端或者SQLite数据库管理工具(如SQLiteSt...
    99+
    2024-04-09
    sqlite
  • python中怎么创建sqlite数据库
    在Python中可以使用sqlite3模块来创建SQLite数据库。以下是一个简单的示例代码: import sqlite3 # ...
    99+
    2024-04-09
    sqlite python
  • Python之SQLite数据库怎么创建
    这篇文章主要讲解了“Python之SQLite数据库怎么创建”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Python之SQLite数据库怎么创建”吧!1.创建SQLite数据库# ...
    99+
    2023-07-02
  • java中怎么创建sqlite数据库
    在Java中创建SQLite数据库需要使用SQLite JDBC驱动程序。下面是创建SQLite数据库的步骤: 1、下载并导入SQL...
    99+
    2024-04-10
    sqlite java
  • 怎么用建站助手创建mysql
    在宝塔建站助手中创建mysql的方法首先,登录宝塔,进入宝塔操作界面;在宝塔操作界面中,选择“数据库”选项卡进入;进入数据库页面中,点击“添加”按钮;最后,在添加数据库页面中,填写数据库名和密码,提交即可;...
    99+
    2024-04-02
  • 怎么给ABAP类自动生成帮助文档
    本篇内容主要讲解“怎么给ABAP类自动生成帮助文档”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么给ABAP类自动生成帮助文档”吧!Social media 在SP0开发的时候,建了CL_SO...
    99+
    2023-06-04
  • SQLite怎么创建与附加数据库
    本篇内容介绍了“SQLite怎么创建与附加数据库”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!SQLite是一种C语言库,它实现了一个 小型...
    99+
    2023-06-27
  • C#操作ini文件的帮助类是什么
    这篇文章主要介绍了C#操作ini文件的帮助类是什么的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇C#操作ini文件的帮助类是什么文章都会有所收获,下面我们一起来看看吧。一、定义Classusing S...
    99+
    2023-06-30
  • sqlite创建数据表报错怎么解决
    当在SQLite中创建数据表时遇到错误,通常是由于SQL语句中存在语法错误或数据类型不匹配等问题导致的。要解决这个问题,您可以尝试以...
    99+
    2024-04-10
    sqlite
  • JavaScript类怎么创建
    这篇文章主要介绍“JavaScript类怎么创建”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“JavaScript类怎么创建”文章能帮助大家解决问题。 JavaS...
    99+
    2024-04-02
  • sqlite创建数据表的方法是什么
    在SQLite中创建数据表的方法是使用CREATE TABLE语句,语法格式如下: CREATE TABLE table_name ...
    99+
    2024-04-10
    sqlite
  • idea怎么创建java类
    要创建Java类,您可以按照以下步骤进行操作: 打开Java集成开发环境(IDE),如Eclipse、IntelliJ IDEA等...
    99+
    2023-10-23
    idea java
  • C#文件非占用读取与帮助类FileHelper怎么用
    本篇内容主要讲解“C#文件非占用读取与帮助类FileHelper怎么用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“C#文件非占用读取与帮助类FileHelper怎么用”吧!非占用方式:File...
    99+
    2023-06-30
  • 建站助手怎么切换php版本
    使用phpstudy建站助手切换php版本的方法首先,打开phpstudy软件,进入phpstudy操作界面;在phpstudy操作界面中,点击“启动”按钮;继续在界面中,点击“切换版本”选项,弹出选项后,选择需要切换的PHP版本;最后,在...
    99+
    2024-04-02
  • SVN怎么创建版本库
    本篇内容主要讲解“SVN怎么创建版本库”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“SVN怎么创建版本库”吧!Apache Subversion 通常被缩写成 SVN,是一个开放源代码的版本控制...
    99+
    2023-06-04
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作