Ruby 教程 之 Ruby 连接 Mysql - MySql2 1

简介: Ruby 连接 Mysql - MySql2

Ruby 教程 之 Ruby 连接 Mysql - MySql2 1

Ruby 连接 Mysql - MySql2

Ruby 连接 Mysql 更高效的驱动 mysql2,目前也推荐使用这种方式连接 MySql。

安装 mysql2 驱动:

gem install mysql2
你需要使用 –with-mysql-config 配置 mysql_config 的路径,如: –with-mysql-config=/some/random/path/bin/mysql_config。

连接
连接数据库语法如下:

client = Mysql2::Client.new(:host => "localhost", :username => "root")
更多参数可以查看 http://api.rubyonrails.org/classes/ActiveRecord/ConnectionAdapters/MysqlAdapter.html。

查询
results = client.query("SELECT FROM users WHERE group='githubbers'")
特殊字符转义
escaped = client.escape("gi'thu\"bbe\0r's")
results = client.query("SELECT
FROM users WHERE group='#{escaped}'")
计算结果集返回的数量:

results.count
迭代结果集:
results.each do |row|

row 是哈希

键值是数据库字段

值都是对应 MySQL中数据

puts row["id"] # row["id"].class == Fixnum
if row["dne"] # 不存在则是 nil
puts row["dne"]
end
end

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
目录
相关文章
|
负载均衡 网络协议 算法
Nginx系列教程(13) - TCP反向代理实现
Nginx系列教程(13) - TCP反向代理实现
2248 1
|
4月前
|
安全 Java 数据库
Java 项目实战病人挂号系统网站设计开发步骤及核心功能实现指南
本文介绍了基于Java的病人挂号系统网站的技术方案与应用实例,涵盖SSM与Spring Boot框架选型、数据库设计、功能模块划分及安全机制实现。系统支持患者在线注册、登录、挂号与预约,管理员可进行医院信息与排班管理。通过实际案例展示系统开发流程与核心代码实现,为Java Web医疗项目开发提供参考。
260 2
|
API
最新!中国天气网api接口调用,key获取方式,数据请求秘钥获取,城市id获取方法
最新!中国天气网api接口调用,key获取方式,数据请求秘钥获取,城市id获取方法
6973 1
最新!中国天气网api接口调用,key获取方式,数据请求秘钥获取,城市id获取方法
|
9月前
|
安全 API Swift
如何在苹果内购开发中获取App Store Connect API密钥-共享密钥理解内购安全-优雅草卓伊凡
如何在苹果内购开发中获取App Store Connect API密钥-共享密钥理解内购安全-优雅草卓伊凡
702 15
如何在苹果内购开发中获取App Store Connect API密钥-共享密钥理解内购安全-优雅草卓伊凡
|
数据采集 监控 数据库
爬虫技术详解:从原理到实践
本文详细介绍了爬虫技术,从基本概念到实际操作,涵盖爬虫定义、工作流程及Python实现方法。通过使用`requests`和`BeautifulSoup`库,演示了如何发送请求、解析响应、提取和保存数据,适合初学者学习。强调了遵守法律法规的重要性。
4196 4
|
安全 芯片 SoC
两节锂电池充电芯片和充放电电路如何设计
两节锂电池充电电路设计中,A部分为保护电路,监测电压电流防止电池受损或膨胀;B部分负责电池充电管理,提供过压保护但不过放电保护;C部分则处理电池放电,实现不同电压转换输出。常见充电芯片如PW4284集成USB输入与DC-DC升压,支持8.4V充满及1A输出,并含过压保护。设计中需注意合理布局,如减少噪声干扰和确保功率线宽裕。此外,为保证安全,即便有充电管理芯片,仍需独立的充放电保护电路,如PW7052,来实现全面的电池保护。
两节锂电池充电芯片和充放电电路如何设计
|
JavaScript 应用服务中间件 nginx
【项目部署系列教程】5. nginx配置反向代理,解决跨域接口的访问
【项目部署系列教程】5. nginx配置反向代理,解决跨域接口的访问
581 10
|
SQL 关系型数据库 MySQL
MySQL设置表自增步长
MySQL设置表自增步长
586 0
|
关系型数据库 MySQL 数据库连接
解决 mysql8.0 ERROR 1045 (28000): Access denied for user ‘ODBC‘@‘localhost‘ (using password: NO)用户访问拒绝
解决 mysql8.0 ERROR 1045 (28000): Access denied for user ‘ODBC‘@‘localhost‘ (using password: NO)用户访问拒绝
6988 52
解决 mysql8.0 ERROR 1045 (28000): Access denied for user ‘ODBC‘@‘localhost‘ (using password: NO)用户访问拒绝
|
消息中间件 监控 API
深入浅出微服务架构:从理论到实践
在软件开发领域,“微服务”这一概念已如日中天,它改变了我们构建、部署和扩展应用的方式。本文将带你走进微服务的世界,不仅探讨其核心理念,还将通过实际案例,展示如何将一个传统单体应用拆分为微服务架构。我们将一步步分析微服务的优势与挑战,并讨论如何在现实世界中实现和维护微服务架构,让你对微服务有一个全面而深入的理解。