ruby下mysql的安装与配置方法
创始人
2024-12-21 18:02:56
0次

ruby on rails安装mysql数据库
  1、在系统里安装mysql:下载mysql软件,在百度上很多下载地址可以下载,或者进入mysql中文官方网站下载安装软件,我选择的是5.1.62版本的
  安装mysql,设置默认字符集为utf-8
  将mysql安装目录(默认C:/program files/mysql)之bin目录下的libmySQL.dll拷贝至C:/ruby/bin目录下
  2、安装mysql相关驱动:
  gem install mysql-2.8.1-x86-mingw32.gem
  3、将ruby安装目录的lib/ruby/gems/1.8/gems/mysql-2.7.1-mswin32/ext/目录下的 mysql_api文件拷贝至ruby安装目录下的/lib/ruby/site_ruby/1.8/i386-msvcrt/目录下。
  4、测试ruby连接mysql
  新建文本test_mysql.rd后输入代码:
  require "mysql"
  puts("hello,mysql")
  命令行执行ruby test_mysql.rd
  输出结果:
  hello,mysql
  则mysql连接成功
  写一段代码:
  require  'DBcon'
  begin
  dbh = Mysql.real_connect("localhost", "root", "sa","makedish", 3306)------# 这里调用Mysql模块的real_connect方法。连接数据库本机:用户名:root 密码:sa 数据库:makedish 端口:3306
  dbh.query("drop table if exists test_foolfish")         --- #ruby执行语句
  dbh.query("create table test_foolfish(id int,name varchar(20))")
  dbh.query("insert into test_foolfish values(1,'你好')")
  dbh.query("insert into test_foolfish values(2,hello)")
  printf "%d rows were insertedn",dbh.affected_rows ----#affected_rows返回受影响的行数
  res=dbh.query("SELECT name FROM test_foolfish")
  puts "===============n"
  res.each_hash(with_table = true) do |row|
  printf "%d,%sn",row["test_rb.id"],row["test_rb.name"]
  end
  puts "===============n"
  puts "Server version:"+dbh.get_server_info
  rescue Mysql::Error=>e
  puts "Error code:#{e.errno}"
  puts "Error message:#{e.error}"
  puts "Error SQLSTATE:#{e.sqlstate}" if e.respond_to?("sqlstate")
  ensure
  dbh.close if dbh
  end
  ruby当中对数据库存在两种操作:一种是不用返回结果集的(例如insert,update,delete等等)一种是需要返回结果集的(如 select show等)。对于不返回结果集的操作,我们只需要使用dbh.query方法,传入需要执行的sql语句执行即可。
  对于另一种需要返回结果集的则相对麻烦一些。执行完上面类似的语句之后,我们需要对结果集进行处理。我们可以将结果集一数组或者hash形式展现。这里我们使用hash方式展现。
  res=dbh.query("SELECT name FROM test_foolfish")
  puts "===============\n"
  res.each_hash(with_table = true) do |row|
  printf "%d,%s\n",row["test_rb.id"],row["test_rb.name"]
  end
  each_hash方法当中添加with_table = true参数可以保证在执行多表查询的时候,多张表具有相同字段的尴尬。这样我们hash的key值就可以用“表名.列名”的形式出现。

相关内容

热门资讯

空调连续工作多久需要停机休息 空调连续工作的时间取决于多个因素,包括空调的型号、功率、使用环境和维护情况等。一般来说,空调可以连续...
空调哪个符号是除湿的 空调除湿功能通常用一个水滴形状的符号表示。不同品牌和型号的空调遥控器可能会有所差异,但一般来说,除湿...
格力空调多长时间加一次氟利昂 1、一般情况下,空调对氟利昂的使用量是非常小的,所以在空调使用了四年左右的时候再考虑加也没问题。2、...
空调用多长时间需要加氟一次 一般情况下是五年。当出现以下这几种情况时,空调才需要加氟。1、空调的室内机和室外机各有两个接口,当接...
格调生活·C标思享荟:卡萨帝在... 9月12日的郑州龙湖金融岛,夜风轻拂,灯光璀璨。“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑...
品牌价值破千亿、高端份额持续领... 9月12日,“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑州站”在郑州龙湖金融岛举办。2026...
空调主板坏了修800还是换新的 空调主板坏了是修还是换新,需要考虑多个因素,以下是一些建议:1. 维修成本:如果维修费用较低,比如 ...
空调开多久需要休息多长时间 问题:空调开多久需要休息多长时间回答:1、在使用空调的过程中,一般空调开7~8个小时左右需要休息2~...
中央空调多长时间清洗一次 1、一般空调开机前清洗一次即可,空调开机中间时段再清洗一次,空调关机时清洗一次,这样比较合理。2、空...
中央空调氟利昂多久加一次 看空调制热和制冷程度,很多人的观点认为氟利昂必须一年放一次,其实这个观点是错误的,理解上面有点偏差,...