我在使用rubymotion构建的应用程序中使用FMDB处理sqlite数据库。
我想用SQLCipher加密数据库,当我尝试使用SQLCipher方法时遇到问题,例如 sqlite3_key ?
有没有人尝过同样的东西?
** * ** * *** *添加:
当我尝试使用SQLCipher api提供的sqlite3_key方法加密数据库时,它抛出并且异常告诉该方法未定义。
答案 0 :(得分:1)
我认为您可以通过添加SQLCipher
pod然后使用FMDB
FMDatabase.setKey
方法并且无需编写任何C来实现此目的。
在Rakefile
app.pods do
pod 'FMDB'
pod 'SQLCipher'
end
然后在Database.rb
class Database
def self.connection
unless @connection
@connection = FMDatabase.databaseWithPath(db_path)
@connection.traceExecution = true if $debug
@connection.open
@connection.setKey 'MySecretKey'
end
end
end
现在您应该可以使用
查询数据库了Database.connection.executeSelect 'SELECT * from some_table'