ruby訪問mysql

來源:互聯網
上載者:User
  • 想想java當中操縱資料庫首先得需要一個資料庫驅動,當然ruby也不例外,自然也需要一個資料庫驅動。ruby當中安裝資料庫驅動我感覺相比較java稍微複雜一點。
    • 首先,你需要在你的mysql資料庫的bin目錄下將檔案libmySQL.dll拷貝到ruby安裝目錄下的bin檔案下。
    • 其次,你需要到http://rubyforge.org/projects/mysql-win當中去下載一個驅動包mysql-2.7.3-mswin32.gem
    • 接著,我們在命令列下,切換到驅動包的安裝目錄。運行 gem install mysql-2.7.3-mswin32.gem。OK驅動安裝完畢
    • 最後,我們需要在ruby安裝目錄的/lib/ruby/gems/1.8/gems/mysql-2.7.3-x86-mswin32/ext下將mysql.so檔案拷貝到ruby安裝目錄下的/lib/ruby/site_ruby/1.8/i386-msvcrt檔案當中。

    好了,萬事具備,只欠東風了。我們要開始寫代碼了,test.rb檔案,內容如下:

    require 'mysql'<br />begin<br /> puts "connect to mysql database"<br /> dbh = Mysql.real_connect("localhost", "root", "root","chj", 3306) #串連資料庫本機:使用者名稱:root 密碼:root 資料庫:chj 連接埠:3306<br /> puts "connect success"<br /> puts "==============="<br /> #dbh.query("drop table if exists member")<br /> #dbh.query("create table member(memberId int,email varchar(25),aliww varchar(30))")<br /> #dbh.query("insert into member values(1,'abc@163.com,'zhangsan')")<br /> #printf "%d rows were inserted/n",dbh.affected_rows<br /> res = dbh.query("SELECT memberId,email,aliww FROM member")<br /> while row = res.fetch_row do<br /> puts "#{row[0]} | #{row[1]} | #{row[2]}"<br /> end<br />rescue Mysql::Error=>e<br /> puts "Error code:#{e.errno}"<br /> puts "Error message:#{e.error}"<br /> puts "Error SQLSTATE:#{e.sqlstate}" if e.respond_to?("sqlstate")<br />ensure<br /> dbh.close if dbh<br /> puts "close the connection"<br />end

    執行:

    ruby test.rb

     

     

    20分鐘體驗 Ruby

    http://www.ruby-lang.org/zh_cn/documentation/quickstart/

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.