Kom ihåg mig?

Utvärdering av Phalanger 3.0 (.NET Kompilator för PHP5 med inslag av PHP6)

 
 
Ämnesverktyg Visningsalternativ
Oläst 2013-07-03, 21:39 #1
Conny Westh Conny Westh är inte uppkopplad
Klarade millennium-buggen
 
Reg.datum: Aug 2005
Inlägg: 5 166
Conny Westh Conny Westh är inte uppkopplad
Klarade millennium-buggen
 
Reg.datum: Aug 2005
Inlägg: 5 166
Citat:
Ursprungligen postat av Linuus Visa inlägg
1. Windows brukar inte rekommenderas för Ruby-utveckling. Skulle rekommendera Linux istället (eller OSX såklart ).

2. MS SQL-Server lirar nog inte så bra med Ruby. Prova med MySQL det ska funka bra!
Linux är inte ett alternativ, men jag har kört installetionsprogrammet för MySql som du hade länk till.

Jag var först tvungen att installera DevKit, vilket är gjort, sen fick man upp något nytt kommandofönster och sen körde jag typ

$ gem install mysql <ENTER>

...sen sa att driver för MySql är successfully installed, men inget av de exempelkoder jag kört funkar.

Det gnäller på att det inte finns någon namespace rdbi/dbi....

Har sökt men inte hittat filen libmysql.dll i min Ryby installetion (c:\Program Files (x86)\Ruby200...).

enligt doc så ska jag lägga filen libmysql.dll i ryby\bin.... men jag hittar inte libmysql.dll någonstans....

finns några *.rb-filer i driver-katalogen som jag lagt upp, men det var en helt USEL dokumentation och dokumentationen stämmer inte med verkligheten....

Jag har nu ägnat halva dagen åt att hitta en lösning för att köra mot MySQL i Ruby.... Jag känner mig frustrerad....

Senast redigerad av Conny Westh den 2013-07-03 klockan 21:51
Conny Westh är inte uppkopplad   Svara med citatSvara med citat
Oläst 2013-07-03, 21:56 #2
tartareandesire tartareandesire är inte uppkopplad
Supermoderator
 
Reg.datum: Jan 2004
Inlägg: 11 585
tartareandesire tartareandesire är inte uppkopplad
Supermoderator
 
Reg.datum: Jan 2004
Inlägg: 11 585
libmysql.dll hittar du i din MySQL-installation, inte i Ruby.
__________________
Full-stack developer, free for smaller assignments
tartareandesire är inte uppkopplad   Svara med citatSvara med citat
Oläst 2013-07-03, 23:29 #3
Conny Westh Conny Westh är inte uppkopplad
Klarade millennium-buggen
 
Reg.datum: Aug 2005
Inlägg: 5 166
Conny Westh Conny Westh är inte uppkopplad
Klarade millennium-buggen
 
Reg.datum: Aug 2005
Inlägg: 5 166
Citat:
Ursprungligen postat av tartareandesire Visa inlägg
libmysql.dll hittar du i din MySQL-installation, inte i Ruby.
Ok, då fattar jag....

Trodde det var rdbi, interface mot MySQL.....


Men den gnäller fortfarande på namespace....

Följande kod har jag att testa med:

Kod:
#!ruby20
# encoding: utf-8

=begin
= Description
    The DBI package is a vendor independent interface for accessing databases.
    It is similar, but not identical to, Perl's DBI module.
    
    <DDL-script>
        delimiter $$
    
        CREATE TABLE `players` 
        (
          `id` int(11) NOT NULL AUTO_INCREMENT,
          `firstname` varchar(32) NOT NULL,
          `lastname` varchar(32) NOT NULL,
          PRIMARY KEY (`id`)
        ) ENGINE=InnoDB AUTO_INCREMENT=430 DEFAULT CHARSET=latin1$$
    </DDL-script>

= Synopsis
=end

require 'rdbi\dbi'

# Same example, but a little more Ruby-ish
class Main
    def initialize()    
        @connectionstring = 'DBI:Mysql:test'
        @user = 'root'
        @password = '**************'
        test()
    end
    def test()
        @dbh = connect()
        select()
    end
    def connect()
        DBI.connect(connectionstring, user, password) do | dbh |
        return dbh
    end
    def select()        
        @dbh.select_all('select * from players') do | row |
            puts row
        end
    end
end

Main.new()

Jag har lagt in lib filerna från "rdbi-1.2.0.pre0" till Rubys lib-katalog.
Har även lagt in lib-filerna från "rdbi-driver-mysql-master" till Rubys lib-katalog.
Har även kopierat in libmysql.dll i Ruby\bin från MySQL\lib.

Men namespace rdbi\dbi hittas inte....

Senast redigerad av Conny Westh den 2013-07-03 klockan 23:31
Conny Westh är inte uppkopplad   Svara med citatSvara med citat
Oläst 2013-07-04, 00:37 #4
Linuus Linuus är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Jan 2009
Inlägg: 890
Linuus Linuus är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Jan 2009
Inlägg: 890
Skit i rdbi...


1. Installera en gem för mysql. Tex mysql2 (tror den ska vara lite bättre än mysql)
https://github.com/brianmario/mysql2

2. Tuta och kör Finns massa exempel på länken ovan.





Citat:
Ursprungligen postat av ConnyWesth Visa inlägg
Ok, då fattar jag....

Trodde det var rdbi, interface mot MySQL.....


Men den gnäller fortfarande på namespace....

Följande kod har jag att testa med:

Kod:
#!ruby20
# encoding: utf-8

=begin
= Description
    The DBI package is a vendor independent interface for accessing databases.
    It is similar, but not identical to, Perl's DBI module.
    
    <DDL-script>
        delimiter $$
    
        CREATE TABLE `players` 
        (
          `id` int(11) NOT NULL AUTO_INCREMENT,
          `firstname` varchar(32) NOT NULL,
          `lastname` varchar(32) NOT NULL,
          PRIMARY KEY (`id`)
        ) ENGINE=InnoDB AUTO_INCREMENT=430 DEFAULT CHARSET=latin1$$
    </DDL-script>

= Synopsis
=end

require 'rdbi\dbi'

# Same example, but a little more Ruby-ish
class Main
    def initialize()    
        @connectionstring = 'DBI:Mysql:test'
        @user = 'root'
        @password = '**************'
        test()
    end
    def test()
        @dbh = connect()
        select()
    end
    def connect()
        DBI.connect(connectionstring, user, password) do | dbh |
        return dbh
    end
    def select()        
        @dbh.select_all('select * from players') do | row |
            puts row
        end
    end
end

Main.new()

Jag har lagt in lib filerna från "rdbi-1.2.0.pre0" till Rubys lib-katalog.
Har även lagt in lib-filerna från "rdbi-driver-mysql-master" till Rubys lib-katalog.
Har även kopierat in libmysql.dll i Ruby\bin från MySQL\lib.

Men namespace rdbi\dbi hittas inte....
Linuus är inte uppkopplad   Svara med citatSvara med citat
Oläst 2013-07-04, 00:53 #5
Nerix Nerix är inte uppkopplad
Flitig postare
 
Reg.datum: Oct 2010
Inlägg: 398
Nerix Nerix är inte uppkopplad
Flitig postare
 
Reg.datum: Oct 2010
Inlägg: 398
Ruby-utveckling under Windows kan inte vara enkelt då ingen använder platformen.
Nerix är inte uppkopplad   Svara med citatSvara med citat
Oläst 2013-07-04, 01:21 #6
Conny Westh Conny Westh är inte uppkopplad
Klarade millennium-buggen
 
Reg.datum: Aug 2005
Inlägg: 5 166
Conny Westh Conny Westh är inte uppkopplad
Klarade millennium-buggen
 
Reg.datum: Aug 2005
Inlägg: 5 166
Citat:
Ursprungligen postat av Linuus Visa inlägg
Skit i rdbi...


1. Installera en gem för mysql. Tex mysql2 (tror den ska vara lite bättre än mysql)
https://github.com/brianmario/mysql2

2. Tuta och kör Finns massa exempel på länken ovan.
Laddade ner mysql2, körde gem install mysql2....

successfully installed....

Kod:
C:\Projects\Conny\Ruby\MySQL2\mysql2-master>gem install mysql2
Fetching: mysql2-0.3.11-x86-mingw32.gem (100%)

======================================================================================================

  You've installed the binary version of mysql2.
  It was built using MySQL Connector/C version 6.0.2.
  It's recommended to use the exact same version to avoid potential issues.

  At the time of building this gem, the necessary DLL files where available
  in the following download:

  http://dev.mysql.com/get/Downloads/Connector-C/mysql-connector-c-noinstall-6.0.2-win32.zip/from/pick

  And put lib\libmysql.dll file in your Ruby bin directory, for example C:\Ruby\bin

======================================================================================================

Successfully installed mysql2-0.3.11-x86-mingw32
Parsing documentation for mysql2-0.3.11-x86-mingw32
unable to convert "\x90" from ASCII-8BIT to UTF-8 for lib/mysql2/1.8/mysql2.so, skipping
unable to convert "\x90" from ASCII-8BIT to UTF-8 for lib/mysql2/1.9/mysql2.so, skipping
Installing ri documentation for mysql2-0.3.11-x86-mingw32
1 gem installed

C:\Projects\Conny\Ruby\MySQL2\mysql2-master>
gick till exaples och försökte köra de två exempel som finns där eventmachine.rb respektive threaded.rb, inget av dem funkade.... den skriker på att require cannot load such file.... dvs mysql2

Körde även koden enligt exempel i ReadMe-filen:

Kod:
# File: mysql2_test.rb
client = Mysql2::Client.new(:host => "localhost", :database => 'test', :username => "root", :password => '**************')
results = client.query("SELECT * FROM players")
results.each do |row|
    puts row
end
Felmeddelande:

Kod:
C:\Projects\Conny\Ruby\Hello>ruby mysql2_test.rb
mysql2_test.rb:1:in `<main>': uninitialized constant Mysql2 (NameError)

C:\Projects\Conny\Ruby\Hello>

Jag kör senaste version av Ruby dvs 2.0.0p195

Senast redigerad av Conny Westh den 2013-07-04 klockan 01:31
Conny Westh är inte uppkopplad   Svara med citatSvara med citat
Oläst 2013-07-04, 01:44 #7
Nerix Nerix är inte uppkopplad
Flitig postare
 
Reg.datum: Oct 2010
Inlägg: 398
Nerix Nerix är inte uppkopplad
Flitig postare
 
Reg.datum: Oct 2010
Inlägg: 398
Har du importerat mysql2 i din kod?

`require "mysql2"`
Nerix är inte uppkopplad   Svara med citatSvara med citat
Oläst 2013-07-04, 04:01 #8
Conny Westh Conny Westh är inte uppkopplad
Klarade millennium-buggen
 
Reg.datum: Aug 2005
Inlägg: 5 166
Conny Westh Conny Westh är inte uppkopplad
Klarade millennium-buggen
 
Reg.datum: Aug 2005
Inlägg: 5 166
Jag kanske glömde nämna att jag även gått till Rybu-katalogen c:\Program Files (x86)\Ruby200 och kört:

Ruby dk.rb init

och därefter:

Ruby dk.rb install

sen körde jag:

Ruby dk.rb Review

Allt rapporteras vara OK, men när jag försöker köra:

Kod:
require "mysql2"
client = Mysql2::Client.new(:host => "localhost", :database => 'RubyTestDB', :username => "RubyTestUser", :password => 'RubyTestPassword')
results = client.query("SELECT * FROM players")
results.each do |row|
  puts row
end
Så får jag felmeddelande att den inte hittar namespace mysql2....

Kod:
....require cannot load such file -- mysql2/2.0/mysql (Load Error)

Intressant blev det dock när jag la till de två första raderna i följande kod:

Kod:
#!usr/bin/Ruby20
#encoding: utf-8

require "mysql2"
client = Mysql2::Client.new(:host => "localhost", :database => 'RubyTestDB', :username => "RubyTestUser", :password => 'RubyTestPassword')
results = client.query("SELECT * FROM players")
results.each do |row|
  puts row
end
Då fick jag färre felmeddenden:

Kod:
C:\Program Files (x86)\Ruby200\bin\Ruby.exe: no Ruby script found in input (Load Error)

>Terminated with exit code 1
Den sista raden är nog min editor Grimson som skapar, men jag får i övrigt samma felmeddelanden om jag kör direkt vid kommandoraden.
Conny Westh är inte uppkopplad   Svara med citatSvara med citat
Oläst 2013-07-04, 04:36 #9
Conny Westh Conny Westh är inte uppkopplad
Klarade millennium-buggen
 
Reg.datum: Aug 2005
Inlägg: 5 166
Conny Westh Conny Westh är inte uppkopplad
Klarade millennium-buggen
 
Reg.datum: Aug 2005
Inlägg: 5 166
Jag körde återigen:

gem install mysql2

Config.yml som ligger i Ruby-katalogen ser ut så här:

Kod:
# This configuration file contains the absolute path locations of all
# installed Rubies to be enhanced to work with the DevKit. This config
# file is generated by the 'ruby dk.rb init' step and may be modified
# before running the 'ruby dk.rb install' step. To include any installed
# Rubies that were not automagically discovered, simply add a line below
# the triple hyphens with the absolute path to the Ruby root directory.
#
# Example:
#
# ---
# - C:/ruby19trunk
# - C:/ruby192dev
#
---
- C:/Program Files (x86)/Ruby200
Conny Westh är inte uppkopplad   Svara med citatSvara med citat
Oläst 2013-07-04, 14:49 #10
Linuus Linuus är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Jan 2009
Inlägg: 890
Linuus Linuus är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Jan 2009
Inlägg: 890
Citat:
Ursprungligen postat av ConnyWesth Visa inlägg
Jag körde återigen:

gem install mysql2

Config.yml som ligger i Ruby-katalogen ser ut så här:

Kod:
# This configuration file contains the absolute path locations of all
# installed Rubies to be enhanced to work with the DevKit. This config
# file is generated by the 'ruby dk.rb init' step and may be modified
# before running the 'ruby dk.rb install' step. To include any installed
# Rubies that were not automagically discovered, simply add a line below
# the triple hyphens with the absolute path to the Ruby root directory.
#
# Example:
#
# ---
# - C:/ruby19trunk
# - C:/ruby192dev
#
---
- C:/Program Files (x86)/Ruby200
Och det funkar inte eller? Har aldrig kört Ruby på Windows så kan tyvärr inte hjälpa dig med det.

Men som sagt... Kör för guds skull in Linux om du ska utveckla i Ruby. Det kommer spara dig åtskilliga timmar.
Linuus är inte uppkopplad   Svara med citatSvara med citat
Svara


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 
Ämnesverktyg
Visningsalternativ

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 02:17.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017