如何访问SQL Server 2008从Ruby

问题描述:

我正在使用WATIR和Ruby 1.9.3来测试Web应用程序,并且我需要连接到Microsoft SQL Server Management Studio 2008(Windows 7 64位)。我已经安装了“DBI和DBD-ODBC”的宝石。我还安装了ODBC数据源,我将其命名为“BUILD”。我正在执行下一步,但不幸的是,我收到了语法错误消息。这是我的尝试:如何访问SQL Server 2008从Ruby

require 'dbi' 
conn = DBI.connect('DBI:ODBC:BUILD', 'username', 'password')conn.connected? 

这给了我此错误消息:

SyntaxError: (irb):2: syntax error, unexpected tIDENTIFIER, expecting $end 
...'username', 'password')conn.connected? 
...       ^
    from C:/Ruby193/bin/irb:12:in `<main>' 

老实说,我不知道我做错了。我在网上搜索了一个解决方案,但显然我找不到任何可以帮助我的答案。我会感谢您的帮助,谢谢!

+0

这是怎么回事用“conn将”前“.connected?” ? – Dru 2012-04-27 20:01:35

+0

我编辑了这个问题 - 我希望第2 + 3行中缺失的(?)换行符不是问题。 – knut 2012-04-27 20:04:50

我觉得你在这部分语法错误:

conn = DBI.connect('DBI:ODBC:BUILD', 'username', 'password')康恩.connected?

试试这个,而不是运行:

conn = DBI.connect('DBI:ODBC:BUILD', 'username', 'password') #==> sets up the connection 

conn.connected? #==> true if it is working 

你有一个方法调用紧跟着一个变量这就是为什么你的编译器抱怨说,在你再次调用conn之前,你永远不会结束这个方法。

+0

这听起来像是一个完全不同的问题。如果你仍然在努力,你应该开辟一条新线。为了让你开始,我会检查http://railsforum.com/viewtopic.php?id=37103。 – Josh 2012-04-30 14:45:08

为了便于访问到SQL Server,你应该在TinyTds 看看https://github.com/rails-sqlserver/tiny_tds