On Jun 9, 1:35 pm, Daniel Berger <djber... / gmail.com> wrote: > On Jun 9, 11:33 am, tcfo... / gmail.com wrote: > > > > > Hi all! > > > I'm using the Ruby DBI class to create connections to both a MSSQL and > > an Oracle database to verify the data migration between them is > > successful. My test works fine on XP, but on Vista (currently with > > SP1, but my problem has always happened on Vista), I get a > > segmentation fault when I perform my first select statement on the > > Oracle database. Select statements are performed against the MSSQL > > database prior to the Oracle database and work fine. I'm running the > > test from a command prompt that has administrator privileges. > > > - Here's my Oracle connection: > > > @ora_connect = DBI.connect("DBI:ADO:Provider=OraOLEDB.Oracle;Data > > Source=devserver;User Id=read_all;Password=password") > > > - Here is my method for running a select statement: > > > def getDBValue(connection, query, id1, *id2) > > dbi_query = connection.prepare(query) > > dbi_query.execute(id1, *id2) > > #fetch the result > > return dbi_query.fetch > > end > > > - Here is the first Oracle select statement: > > > createDateTime = getDBValue(@ora_connect, "SELECT CREATED_TIME FROM > > ORATEST.POLICY WHERE POLICYNUM = ?", policyNumber) > > > - Here is the error message I get: > > > c:/ruby/lib/ruby/site_ruby/1.8/DBD/ADO/ADO.rb:94: [BUG] Segmentation > > fault ruby 1.8.6 (2007-03-13) [i386-mswin32] > > > Has anyone else seen this? Does anyone have any ideas on workarounds > > or how to fix it? > > > Thanks in advance for your help! > > What version of Ruby and DBI are you using? Line 94 of my ADO.rb file > is just a comment. Can you paste that line at least? > > Thanks, > > Dan Sorry about that - I'm using Ruby version 1.8.6 and DBI version 0.1.1 Here's the code around line 94: 90 def execute 91 # TODO: use Command and Parameter 92 # TODO: substitute all ? by the parametes 93 sql = bind(self, @statement, @params) 94 @res_handle = @handle.Execute(sql) 95 96 # TODO: SELECT and AutoCommit finishes the result-set 97 # what to do? 98 if @db['AutoCommit'] == true and not SQL.query?(@statement) then 99 @db.commit 100 end 101 rescue RuntimeError => err 102 raise DBI::DatabaseError.new(err.message) 103 end Thanks for taking at look at this! -Tiffany