📅  最后修改于: 2023-12-03 14:47:39.506000             🧑  作者: Mango
Sqlite 是一个轻量级、快速、可靠的嵌入式数据库管理系统,能够支持 SQL 语言及事务处理。在 Ruby 编程语言中,Sqlite 模块提供了一种方便的方法来操作 Sqlite 数据库。
在 Ruby 中,我们可以使用 gem 包管理器来安装 Sqlite 模块。打开终端,运行以下命令:
gem install sqlite3
连接 Sqlite 数据库非常简单,只需要调用 SQLite3::Database.new
方法并传递数据库名称的字符串即可。如果数据库不存在,则会自动创建一个新的数据库。
require 'sqlite3'
db = SQLite3::Database.new('test.db')
执行 SQL 查询也非常简单,只需调用 SQLite3::Database#execute
方法并传递 SQL 查询前的字符串即可。
# 查询所有学生信息
query = "SELECT * FROM students"
db.execute(query) do |row|
puts row
end
在上面的例子中,我们查询了名为 students
的表中的所有行,并输出了它们。
我们还可以使用 SQLite3::Database
的辅助方法来执行特定类型的查询:
# 查询学生的数量
count_query = "SELECT COUNT(*) FROM students"
count = db.get_first_value(count_query)
puts "There are #{count} students"
Sqlite 建议使用参数化语句而非直接构建 SQL 语句,以避免 SQL 注入攻击。
以下是使用参数化语句查询其中一列并绑定一个参数的示例:
# 查询数学成绩大于 80 分的学生姓名
query = "SELECT name FROM students WHERE math_score > ?"
db.execute(query, 80) do |row|
puts row[0]
end
在上面的例子中,我们使用 ?
表示待绑定参数的位置,并将参数 80 传递给 db.execute
方法的第二个参数。然后,我们循环遍历查询结果,并输出每个查询结果的第一列。
Sqlite 是一个灵活强大的数据库管理系统,使用 Ruby 构建和查询 Sqlite 数据库非常方便。我们可以借助 Sqlite 模块轻松连接到 Sqlite 数据库,使用各种 SQL 查询和参数化查询,实现对数据的增删改查操作。