我正在試驗數據庫操作。例如,這段代碼爲什麼不給預期的輸出?
begin
db_con = PG.connect :dbname => 'sureshkumar', :user => 'sureshkumar'
db_con.prepare 'get_result', "SELECT * from users;"
users_name = db_con.exec_prepared 'get_result'
if users_name != nil
puts users_name.values
else
puts "There is no users available in the table users"
end
rescue PG::Error => e
puts e.message
ensure
db_con.close if db_con
end
表users
只包含兩列。他們是,
user_id
user_name
如果表不包含任何行,則exec_prepared
語句不返回任何行。在這種情況下,爲什麼if條件不成爲假?如何檢查exec_prepared
方法是否不返回任何行?
你不需要密碼來連接嗎?如果你簡單地寫'if user_name',忽略'!= nil'部分會發生什麼? –
我沒有設置數據庫的密碼。所以,我不需要密碼來連接。 – suresh