在 SQLite 语句中使用 NSString/参数 iOS

2023-12-25

我的代码如下。我的价值观_emailVaue _passwordValue and _nameValue取自UITextFields在我的应用程序中。我的印象是,将这些值传递到我的 SQLite 代码中的参数中将允许我在这些值中包含特殊字符,例如双引号 ("),但是,如果我将它们放入,SQLite 就会崩溃。有什么我可以做的吗?做错了吗?

我知道最好使用 FMDB 之类的东西,但我希望可能有一个更快的修复方法来帮助我完成即将进行的演示。

我将不胜感激任何帮助,谢谢!

if (sqlite3_open(dbpath, &_contactDB) == SQLITE_OK)
{

    NSString *insertSQL = [NSString stringWithFormat:
                           @"INSERT INTO CONTACTS (email, password, name) VALUES (\"%@\", \"%@\", \"%@\")",
                           _emailValue, _passwordValue, _nameValue];
    NSLog(insertSQL);
    const char *insert_stmt = [insertSQL UTF8String];
    sqlite3_prepare_v2(_contactDB, insert_stmt,
                       -1, &statement, NULL);
    if (sqlite3_step(statement) == SQLITE_DONE)
    {

    } else {

    }
    sqlite3_finalize(statement);
    sqlite3_close(_contactDB);
}

我希望如果它看起来有效的话,可以回答我自己的问题。希望有人会发现它有用。如果有任何关于我可能出错的地方的反馈,我将不胜感激。

sqlite3_stmt    *statement;
const char *dbpath = [_databasePath UTF8String];
const char *insertSQL;
if (sqlite3_open(dbpath, &_contactDB) == SQLITE_OK)
{
    insertSQL = "INSERT INTO CONTACTS (email, password, name) VALUES (?, ?, ?)";
    if(sqlite3_prepare_v2(_contactDB, insertSQL, -1, &statement, NULL) == SQLITE_OK)
    {
    sqlite3_bind_text(statement, 1, [_emailValue UTF8String], -1, SQLITE_TRANSIENT);
    sqlite3_bind_text(statement, 2, [_passwordValue UTF8String], -1, SQLITE_TRANSIENT);
    sqlite3_bind_text(statement, 3, [_nameValue UTF8String], -1, SQLITE_TRANSIENT);
    }
    if (sqlite3_step(statement) == SQLITE_DONE)
    {
//worked
    } else {


//didn't work
    }
    sqlite3_finalize(statement);
    sqlite3_close(_contactDB);
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 SQLite 语句中使用 NSString/参数 iOS 的相关文章

随机推荐

  • node_modules 中的 webpack 4 图像:找不到模块

    问题 我使用 webpack 4 将 scss 编译为 css 并使用 MiniCssExtractPlugin 将 css 保存到不同的文件中 问题是 我无法加载通过 url 包含在 scss 文件内的图像和字体 运行开发或生产之间也没有
  • 如何初始化一个大小由 argc 和 argv 确定的二维数组?

    我正在编写代码 该代码将跟踪每次访问数组中的特定元素时的情况 数组本身将根据用户的输入动态分配 因此我所看到的函数都不是我正在寻找的 更具体地说 如何动态分配数组的行和列 然后将每个元素初始化为 0 前任 SIM A B int array
  • curl_multi_exec 显示不同的运行

    我只使用curl multi exec 来处理5 个url 现在我有这个奇怪的问题 当我在 xampp 上运行我的代码时 它运行完美 我可以看到 running 值初始化为 5 然后不断减少 但是 当我在其他本地主机 在arm架构上 上尝试
  • 使用 WebGL 索引缓冲区绘制网格

    3 个索引缓冲区 https stackoverflow com questions 2696182 3 index buffers问了一个更困难的问题 但我觉得他们的主要问题归结为我的 有没有办法使用索引缓冲区在 WebGL 中多次访问同
  • pyinstaller编译的文件有ssl问题,错误:185090050

    我有一些 python 代码可以在我的 Windows 机器上的 python ide 和 cmd 提示符下成功运行 当我用 pyinstaller 编译 到一个文件中 后 我收到以下错误 Traceback
  • flot.js - 位置垂直刻度,但被切断并居中

    我使用 flot js 绘制 x 轴上带有时间戳的图表 由于我在这些图表上会有很多刻度 所以我垂直旋转它们 这样它们就不会重叠 这工作正常 但标签集中在刻度上 并且没有提供足够的空间 因此它们被切断 我没有使用ticrotor插件滴答声 h
  • UDP/TCP 打洞 vs UPnP vs STUN vs?

    我尝试制作一个 P2P 程序 需要帮助来穿越客户端的 NAT 我在 stackoverflow 上读过很多问题 但我从来不知道通过 NAT 的所有方法的缺点和优点是什么 有多少路由器支持哪些方法 大公司常用哪些方法 BitTorrent T
  • OSError:输入/输出错误 - Google Colab

    Using h5py File path r 或 喀拉斯 model load weights path on h5文件产生以下错误 我已经在 Colab 上训练模型几个月了 从来没有遇到过这个问题 从云端硬盘下载后 相同的文件在我的计算机
  • 使用 graphql 公开动态模式

    我的应用程序动态处理模式 用户可以上传新域或更改现有域的定义 例如 我发布的产品具有如下用户模式 user fn ln age Later user can change this definition to include new pro
  • 在 C++ 中修改后修复文件权限?

    我将数据保存在程序的可执行文件中 我将其复制到临时文件中 覆盖从 a 开始的部分 神奇的字符串 并将其重命名为原来的 我知道这是一个坏主意 但我这样做只是为了实验 到目前为止 一切正常 除了每次替换文件时我必须重新启用 允许作为可执行文件运
  • 远程检查交换凭据并检查登录的用户

    我曾尝试过这一点 但没有取得多大成功 基本上我需要使用 EWS 远程登录 Exchange 问题是我不知道用户是否已正常登录 或者凭据是否错误 因为我没有得到任何回报 如果我提供了错误的凭据 软件就会继续运行 我是否遗漏了一些东西 我已经检
  • 无法导入模块

    首先 这很可能不是路径问题 我在 eclipse 中有一个 pydev 项目 这是目录结构 Genetic Framework Genetic Framework Genetic init py GA py crossover py fit
  • 如何测量 x86 纳秒以下的运行时间?

    我搜索并使用了许多方法来测量经过的时间 为此目的有很多问题 例如 this https stackoverflow com questions 6749621 how to create a high resolution timer in
  • 访问函数内的函数(嵌套函数?)[重复]

    这个问题在这里已经有答案了 这里是Python菜鸟 如何获取 fib 函数中的 内部 函数 from time import sleep class Fibonacci object def init self a b limit 50 s
  • 这个Timer会从内存中释放吗?

    考虑 C 中的这对函数 void func1 DispatcherTimer tmr new DispatcherTimer tmr Interval TimeSpan FromSeconds 5 tmr Tick func2 tmr St
  • C# 是单调度语言还是多调度语言?

    我试图准确理解什么是单次调度和多次调度 我刚刚读过这个 http en wikipedia org wiki Multiple dispatch http en wikipedia org wiki Multiple dispatch 从这
  • 使用实体框架作为 ORM 的 winform 应用程序的 MVC 或 MVP 架构

    我要开发一个相当规模的winform项目 我打算使用实体框架作为 ORM 工具 现在我正在寻找一种架构 MVC MVP MVVM 等 来实现所有这些 首先 Windows 窗体的 n 层架构的选择很少 而且我得到的大多数都是在 EF 进入市
  • ActionScript:一个 .as 文件中有多个公共函数?

    当我一直在使用 AS 时 我开发了一系列实用函数 例如 cat utils curried as package utils public function curried f Function boundArgs Function fun
  • conhost.exe 似乎泄漏内存

    我有一个在 IIS 中运行的 NET Framework ASP NET 应用程序 该应用程序启动了一个长期存在的子流程 但在其他方面并不引人注目 只有一个端点有效地将请求代理到子流程 当系统处理请求时 计算机上 conhost exe 的
  • 在 SQLite 语句中使用 NSString/参数 iOS

    我的代码如下 我的价值观 emailVaue passwordValue and nameValue取自UITextFields在我的应用程序中 我的印象是 将这些值传递到我的 SQLite 代码中的参数中将允许我在这些值中包含特殊字符 例