折腾了半天终于能用mysql的ruby驱动正常连接数据库,并进行CRUP的基本操作了。
过程如下
首先是安装mysql的ruby驱动,方法:gem install mysql 或者gem install ruby-mysql
拷贝mysql安装目录中的libmySQL.dll到ruby的lib目录,否则require 'mysql' 不会成功
如果安装的是ruby-mysql驱动则连接的host不能为localhost(linux下可能没问题),改为127.0.0.1。
连接例子如下:
require 'mysql'
begin
my = Mysql.connect("localhost","root","123456","test")
my.query("drop table if exists test")
my.query("create table test(id int, name varchar(22))")
#插入10条数据
puts "创建表test成功,开始插入10条数据"
1.upto(10) do |i|
my.query "insert into test values(#{i},'name#{i}')"
end
#取得数据
puts "输出表test的全部内容"
res = my.query("select * from test")
#使用res.each_hash方法则会报 NULL point的错误。用each则没有问题,不知道为什么?
res.each do |ha|
p ha
end
ensure
my.close if my
puts "OK"
end
输出如下
创建表test成功,开始插入10条数据
输出表test的全部内容
["1", "name1"]
["2", "name2"]
["3", "name3"]
["4", "name4"]
["5", "name5"]
["6", "name6"]
["7", "name7"]
["8", "name8"]
["9", "name9"]
["10", "name10"]
OK
使用DBI连接数据库
安装dbd-mysql
gem ins dbd-mysql
代码:
require 'dbi'
DBI.connect("DBI:Mysql:test",'root','123456') do |dbh|
res = dbh.select_one("select * from test")
p res
end
输出
[1,0]
输出不正确,数据库中的数据时[1,name1]。不知道是什么原因?
分享到:
相关推荐
Ruby 是一种动态、开源的编程语言,以其简洁和表达力强的特点...对于初学者来说,理解这些概念和示例代码是学习Ruby数据库编程的关键步骤。在实际项目中,结合具体的业务需求,开发者可以根据情况选择合适的连接方式。
首先,连接Oracle数据库需要Ruby的一个特定库——Ruby/Oracle 调用接口 (OCI8),它是基于Ruby/DBI模块的数据库驱动程序。RubyDBI提供了一个抽象层,使得开发者能够使用统一的API与不同的数据库系统(如JDBC或ODBC)...
此外,`drizzle-ruby`驱动的源码分析也是一个学习的好机会,可以了解数据库连接、查询执行的底层机制。通过阅读源码,开发者能更好地理解数据库驱动的工作原理,优化自己的代码。 总结来说,连接Ruby和Drizzle...
**Ruby-Sequel:Ruby的全能数据库工具包** ...它的易用性、灵活性和广泛的数据库支持使得它成为Ruby开发者的首选数据库库之一。通过学习和掌握Sequel,开发者可以更好地管理和操作数据库,从而提高开发效率和代码质量。
`langdb-master`这个文件名可能表示的是一个包含语言学习数据库的项目,可能包含一个或多个Ruby脚本用于构建、维护或查询与语言学习相关的数据库。例如,它可能存储用户的学习进度、词汇、语法练习等信息。在这样的...
2. **路由**:Rails的路由系统是连接URL到控制器动作的关键,学习如何定义和配置路由规则至关重要。 3. **ActiveRecord**:这是Rails处理数据库的主要工具,包括模型定义、关联、查询和迁移。 4. **Scaffolding**...
对于想要学习数据库设计或者Ruby编程的人来说,这是一个很好的研究对象。 总结来说,Ruby-QuineDB是一个基于Ruby语言的键值存储数据库,它提供了高效的读写性能和灵活的数据模型。通过简单的Ruby接口,开发者可以...
7. **配置与集成**:在Rails应用中使用ExceptionTrack,需要进行相应的配置,如设置数据库连接、启用或禁用异常捕获等。 8. **版本控制**:提到"master"分支,表明项目使用了版本控制系统,如Git,用于代码版本管理...
它使用结构化查询语言(SQL)进行数据库管理,是互联网上使用最广泛的数据库之一。MySQL以其高性能、可靠性、易用性和灵活性而闻名,适合用于构建多种类型的应用程序。本篇文档将介绍如何使用NetBeans IDE来连接和...
总的来说,Ruby的初始使用过程涵盖了环境配置、目录切换、数据库连接、数据库操作等多个方面。理解并熟练掌握这些步骤,你就能顺利开始你的Ruby编程之旅。记住,实践是学习的最佳途径,动手尝试才是王道。在实践中,...
1. **Ruby基础**:在学习Rails之前,你需要熟悉Ruby的基础语法,包括变量、数据类型、控制结构、类和对象等。Ruby是一种面向对象的语言,其简洁的语法和强大的元编程能力为Rails提供了坚实的基础。 2. **Rails架构*...
在Ruby on Rails(简称Rails)中,数据库管理是核心功能之一。Rails默认使用ActiveRecord,这是ORM(对象关系映射)的一部分,允许开发者用Ruby代码操作数据库,无需直接编写SQL语句。ActiveRecord将数据库表映射为...
程序员可以轻松地将Ruby程序与多种数据库(如DB2、MySQL、Oracle和Sybase)连接,利用Ruby直接在脚本中实现数据库操作。 Ruby对于初学者而言非常友好,它拥有许多与C++和Perl等语言相似的语法特性,这减少了学习...
- ActiveRecord:ORM(对象关系映射)库,连接数据库并简化数据操作。 2. **Ruby语法**: - Blocks与Procs:Ruby中的代码块用于传递代码,Procs是可存储的代码块,Lambda更接近函数行为。 - Symbols:不可变对象...
例如,ActiveRecord是Rails中的一个关键组件,它提供了ORM(Object-Relational Mapping)功能,允许开发者用Ruby对象直接操作数据库,无需编写SQL语句。 在Rails中,路由(Routes)是连接URL与控制器动作的桥梁。...
在压缩包中的 "libmySQL.dll" 文件,这通常是 MySQL 数据库的动态链接库,用于在 Windows 平台上连接 MySQL 数据库。在 Ruby on Rails 应用中,如果使用 MySQL 作为数据库,这个库可能会在运行时被调用,特别是在...
总的来说,`mongo-ruby-driver`是Ruby开发者连接和操作MongoDB数据库的重要工具。通过阅读和理解其源代码,不仅可以提升对MongoDB工作原理的理解,还可以实现更为灵活和高效的数据库操作。同时,提供的文档资源是...
通过以上步骤,我们不仅成功地创建了一个简单的Rails应用程序,而且还学习了如何在项目中使用MySQL数据库。这个例子对于刚接触Ruby on Rails的新手来说是非常有帮助的,它可以帮助理解整个开发流程。
这可以通过修改`config/database.yml`文件来完成,根据你的数据库类型调整连接信息。 7. **路由和控制器**:Rails的路由系统决定了URL如何映射到控制器动作。在`config/routes.rb`文件中定义路由规则。同时,你需要...