class HPgSqlDatabaseManager

Public Class Methods

defaultPgSqlDatabaseManager() click to toggle source
# File lib/hsqlmanager/hpgsqldatabasemanager.rb, line 45
def self.defaultPgSqlDatabaseManager()

  pgDbName = hc.value("pg_dbname")
  pgSqlDatabaseManager = HSharedData.instance().value("pg-#{pgDbName}")
  return (pgSqlDatabaseManager == nil) ? self.setPgSqlConnection() : pgSqlDatabaseManager

end
setPgSqlConnection() click to toggle source
# File lib/hsqlmanager/hpgsqldatabasemanager.rb, line 30
def self.setPgSqlConnection()

  host   = hc.value("host")
  port   = hc.value("port")
  dbname = hc.value("dbname")
  user   = hc.value("user")
  password = hc.value("password")

  pgSqlDatabaseManager = HPgSqlDatabaseManager.new(host, port, dbname, user, password) 
  pgSqlDatabaseManager.openConnection()
  return pgSqlDatabaseManager

end
test1() click to toggle source
# File lib/hsqlmanager/hpgsqldatabasemanager.rb, line 54
def self.test1()

  pgSqlDatabaseManager = HPgSqlDatabaseManager.new("127.0.0.1", "5432", "quickorder", "quickorder", "quickorder") 
  pgSqlDatabaseManager.openConnection()
  # la seguente query genera 3 colonne invece di 4
  # si tratta di un bug
  result = pgSqlDatabaseManager.run("select id, name, price, name from cookbook")
  # come toppa si puo' usare la seguente query
  #result = pgSqlDatabaseManager.run("select id, name, price, name as ciao from cookbook")
  pgSqlDatabaseManager.show()

end

Public Instance Methods

close() click to toggle source
# File lib/hsqlmanager/hpgsqldatabasemanager.rb, line 24
def close()

  HSharedData.instance().setValue(nil, "pg-#{@dbname}")
  
end
connect() click to toggle source
# File lib/hsqlmanager/hpgsqldatabasemanager.rb, line 7
def connect()

  timezone = hc.value("timezone")

  return @connection if(@connection != nil)

  connectionPtr = HSharedData.instance().value("pg-#{@dbname}")
  return connectionPtr.connection if (connectionPtr != nil)

  connection = PGconn.new(@host, @port, "", "", @dbname, @user, @password)
  HSharedData.instance().setValue(self, "pg-#{@dbname}")
  puts "Server version: #{connection.query("SHOW server_version").to_s}"
  connection.query("SET TIME ZONE '#{timezone}'");
  return connection

end