2014-06-12 55 views
2

使用Ruby 2.0,Qt4 gem和Mysql2 gem。我需要比較兩個lineedit的文本,並與他們進行查詢,到目前爲止這是一個失敗。Ruby + mysql2查詢失敗,變量爲

client = Mysql2::Client.new(:host => "localhost", :username => "root", :password => "123456", :database => "school") 
# text of both lineedits saved into local variables 
[email protected]() 
[email protected]() 
#then 
res= client.query("SELECT usr_name, usr_pass, usr_tipo FROM user WHERE usr_name = tName AND usr_pass = tPass") 

唯一失敗的是該查詢。我試圖把局部變量設置爲全局的(@tName,@tPass),或者把它們放到#{}中,以尋找名爲tName和tPass的表用戶的列,並試圖將它們放入'',但是隻搜索名爲tName的用戶。

我想查詢搜索usr_name =「tName內的文本」。我究竟做錯了什麼?

編輯:如果你想知道,tName,tPass是字符串,字段usr_name和usr_pass是varchar(50)。

回答

1

看起來像你沒有插入變量。請執行以下操作:

res= client.query("SELECT usr_name, usr_pass, usr_tipo 
        FROM user 
        WHERE usr_name = '#{tName}' AND usr_pass = '#{tPass}'") 
+0

謝謝,的確我錯過了整個'#{tName}'的事情。 – Juank