数据库常见问题总结

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据库常见问题总结相关的知识,希望对你有一定的参考价值。

在我之前的项目中,存取数据使用的都是NSCoding方式,这样做避免了复杂的数据库操作,也造成了我数据库使用的困难。

最近做的一个项目中,大量的使用到数据库操作,涨姿势了,记录一下。

 

一、使用惯例:

(1)使用FMDB第三方库管理数据库

(2)不需要事务时,使用inDatabase

(3)需要使用事务时,使用inTransaction

(4)inTransaction也可以替换为beginTransaction和commit的配对使用

(5)事务不可以嵌套

(6)sql语句使用?为占位符,以防sql注入问题

 

二、常见使用错误:

大部分的错误根据FMDataBase输出的错误提示,都可轻松解决。但有些错误的提示较为模糊,解决可能有一定困难,以下为我遇到的一部分:

1、there is at least one open result

原因:ResultSet需要手动关闭。

大部分情况下,通过[resultSet next]方法遍历了resultset的所有结果,是不需要关闭的。

但如果没有遍历所有的结果,并且没有手动关闭的话,就会报这个警告。一般是因为使用了if([resultSet next])

 

2、sql语句中的in语法不能使用

只能通过循环自己实现in语法了

 

3、误用executeQuery、executeUpdate

这个问题很容易理解,但也很容易忘记

 

 

以上是关于数据库常见问题总结的主要内容,如果未能解决你的问题,请参考以下文章

MySQL 常用插入语法总结

大数据集群常见问题总结

周二总结

基于Binlog实时同步数据仓库问题总结

高质量面试总结

期末总结(基础)