Ruby 教程 之 Ruby 数据库访问 - DBI 教程 5

简介: Ruby 数据库访问 - DBI 教程

Ruby 教程 之 Ruby 数据库访问 - DBI 教程 5

Ruby 数据库访问 - DBI 教程

本章节将向您讲解如何使用 Ruby 访问数据库。Ruby DBI 模块为 Ruby 脚本提供了类似于 Perl DBI 模块的独立于数据库的接口。

DBI 即 Database independent interface,代表了 Ruby 独立于数据库的接口。DBI 在 Ruby 代码与底层数据库之间提供了一个抽象层,允许您简单地实现数据库切换。它定义了一系列方法、变量和规范,提供了一个独立于数据库的一致的数据库接口。

INSERT 操作

当您想要在数据库表中创建记录时,需要用到 INSERT 操作。

一旦建立了数据库连接,我们就可以准备使用 do 方法或 prepare 和 execute 方法创建表或创建插入数据表中的记录。

使用 do 语句
不返回行的语句可通过调用 do 数据库处理方法。该方法带有一个语句字符串参数,并返回该语句所影响的行数。

dbh.do("DROP TABLE IF EXISTS EMPLOYEE")
dbh.do("CREATE TABLE EMPLOYEE (
FIRST_NAME CHAR(20) NOT NULL,
LAST_NAME CHAR(20),
AGE INT,
SEX CHAR(1),
INCOME FLOAT )" );
同样地,您可以执行 SQL INSERT 语句来创建记录插入 EMPLOYEE 表中。

实例

!/usr/bin/ruby -w

require "dbi"

begin

 # 连接到 MySQL 服务器
 dbh = DBI.connect("DBI:Mysql:TESTDB:localhost", 
                   "testuser", "test123")
 dbh.do( "INSERT INTO EMPLOYEE(FIRST_NAME,
               LAST_NAME, 
               AGE, 
     SEX, 
     INCOME)
      VALUES ('Mac', 'Mohan', 20, 'M', 2000)" )
 puts "Record has been created"
 dbh.commit

rescue DBI::DatabaseError => e
puts "An error occurred"
puts "Error code: #{e.err}"
puts "Error message: #{e.errstr}"
dbh.rollback
ensure

 # 断开与服务器的连接
 dbh.disconnect if dbh

end

目录
相关文章
|
缓存 移动开发 JavaScript
uniapp H5 公众号微信自定义分享qq,微信带图片标题内容
uniapp H5 公众号微信自定义分享qq,微信带图片标题内容
1556 0
uniapp H5 公众号微信自定义分享qq,微信带图片标题内容
|
机器学习/深度学习 算法 Python
LightGBM高级教程:深度集成与迁移学习
LightGBM高级教程:深度集成与迁移学习【2月更文挑战第6天】
676 4
|
3月前
|
人工智能 测试技术 开发者
聊聊OpenAI那份Codex内部指南,以及它给我的启发
OpenAI发布《如何使用Codex》揭秘工程师真实用法:AI不仅是代码补全,更是重构助手、测试生成器和新人导师。几分钟完成数小时工作,保护开发“心流”,提升效率惊人。这才是AI编程的正确打开方式!
472 1
|
3月前
|
人工智能 Java API
构建基于Java的AI智能体:使用LangChain4j与Spring AI实现RAG应用
当大模型需要处理私有、实时的数据时,检索增强生成(RAG)技术成为了核心解决方案。本文深入探讨如何在Java生态中构建具备RAG能力的AI智能体。我们将介绍新兴的Spring AI项目与成熟的LangChain4j框架,详细演示如何从零开始构建一个能够查询私有知识库的智能问答系统。内容涵盖文档加载与分块、向量数据库集成、语义检索以及与大模型的最终合成,并提供完整的代码实现,为Java开发者开启构建复杂AI智能体的大门。
1869 58
|
小程序 定位技术 API
从新手到行家:支付宝小程序开发的全景攻略
【8月更文挑战第27天】在数字化转型的大潮中,支付宝小程序作为连接商家与消费者的桥梁发挥着重要作用。本文以“美食地图”支付宝小程序为例,从项目概述、开发准备、开发实践、问题解决到最终总结,全面解析支付宝小程序的开发流程。从环境搭建到页面设计,再到业务逻辑实现,最后完成性能优化、测试与发布,详细介绍如何打造一款实用且用户体验优良的小程序。“美食地图”不仅让用户轻松搜索周边美食、查看评价和优惠信息,还能在线预约,极大地提升了便利性和满意度。通过实战案例分享,为开发者提供宝贵的经验参考。
533 0
|
JavaScript
Vue PDF预览(微信公众号,app也可用)
Vue PDF预览(微信公众号,app也可用)
625 0
|
存储 人工智能 搜索推荐
【2023年第十一届泰迪杯数据挖掘挑战赛】C题:泰迪内推平台招聘与求职双向推荐系统构建 建模及python代码详解 问题一
本文详细介绍了第十一届泰迪杯数据挖掘挑战赛C题的解决方案,包括爬取泰迪内推平台的招聘与求职信息、构建企业和求职者画像、开发岗位匹配度与求职者满意度模型以及设计招聘求职双向推荐模型的步骤和Python代码实现。
237 2
【2023年第十一届泰迪杯数据挖掘挑战赛】C题:泰迪内推平台招聘与求职双向推荐系统构建 建模及python代码详解 问题一
|
传感器 安全 物联网
物联网技术在智能家居安全中的研究与应用
物联网技术在智能家居安全中的研究与应用
392 0
|
存储 编解码 算法
ISO/IEC 23001:数字版权管理的加密标准(四)
ISO/IEC 23001:数字版权管理的加密标准(四)
258 0