use fpdb_db for db connection
This commit is contained in:
parent
dcaf6fed27
commit
7664373648
|
@ -32,60 +32,20 @@ import string
|
||||||
# pyGTK modules
|
# pyGTK modules
|
||||||
|
|
||||||
# FreePokerTools modules
|
# FreePokerTools modules
|
||||||
|
import fpdb_db
|
||||||
import Configuration
|
import Configuration
|
||||||
import SQL
|
import SQL
|
||||||
import Card
|
import Card
|
||||||
|
|
||||||
class Database:
|
class Database:
|
||||||
def __init__(self, c, db_name, game):
|
def __init__(self, c, db_name, game):
|
||||||
|
self.fdb = fpdb_db.fpdb_db() # sets self.fdb.db self.fdb.cursor and self.fdb.sql
|
||||||
|
self.fdb.do_connect(c)
|
||||||
|
self.connection = self.fdb.db
|
||||||
|
|
||||||
db_params = c.get_db_parameters()
|
db_params = c.get_db_parameters()
|
||||||
if (string.lower(db_params['db-server']) == 'postgresql' or
|
|
||||||
string.lower(db_params['db-server']) == 'postgres'):
|
|
||||||
import psycopg2 # posgres via DB-API
|
|
||||||
import psycopg2.extensions
|
|
||||||
psycopg2.extensions.register_type(psycopg2.extensions.UNICODE)
|
|
||||||
|
|
||||||
try:
|
|
||||||
if db_params['db-host'] == 'localhost' or db_params['db-host'] == '127.0.0.1':
|
|
||||||
self.connection = psycopg2.connect(database = db_params['db-databaseName'])
|
|
||||||
else:
|
|
||||||
self.connection = psycopg2.connect(host = db_params['db-host'],
|
|
||||||
user = db_params['db-user'],
|
|
||||||
password = db_params['db-password'],
|
|
||||||
database = db_params['db-databaseName'])
|
|
||||||
except:
|
|
||||||
print "Error opening database connection %s. See error log file." % (file)
|
|
||||||
traceback.print_exc(file=sys.stderr)
|
|
||||||
print "press enter to continue"
|
|
||||||
sys.stdin.readline()
|
|
||||||
sys.exit()
|
|
||||||
|
|
||||||
elif string.lower(db_params['db-server']) == 'mysql':
|
|
||||||
import MySQLdb # mysql bindings
|
|
||||||
try:
|
|
||||||
self.connection = MySQLdb.connect(host = db_params['db-host'],
|
|
||||||
user = db_params['db-user'],
|
|
||||||
passwd = db_params['db-password'],
|
|
||||||
db = db_params['db-databaseName'])
|
|
||||||
cur_iso = self.connection.cursor()
|
|
||||||
cur_iso.execute('SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED')
|
|
||||||
cur_iso.close()
|
|
||||||
|
|
||||||
except:
|
|
||||||
print "Error opening database connection %s. See error log file." % (file)
|
|
||||||
traceback.print_exc(file=sys.stderr)
|
|
||||||
print "press enter to continue"
|
|
||||||
sys.stdin.readline()
|
|
||||||
sys.exit()
|
|
||||||
|
|
||||||
else:
|
|
||||||
print "Database = %s not recognized." % (c.supported_databases[db_name].db_server)
|
|
||||||
sys.stderr.write("Database not recognized, exiting.\n")
|
|
||||||
print "press enter to continue"
|
|
||||||
sys.exit()
|
|
||||||
|
|
||||||
self.type = db_params['db-type']
|
self.type = db_params['db-type']
|
||||||
self.sql = SQL.Sql(game = game, type = self.type)
|
self.sql = SQL.Sql(game = game, type = self.type, db_server = db_params['db-backend'])
|
||||||
self.connection.rollback()
|
self.connection.rollback()
|
||||||
|
|
||||||
# To add to config:
|
# To add to config:
|
||||||
|
@ -211,7 +171,7 @@ class Database:
|
||||||
def get_action_from_hand(self, hand_no):
|
def get_action_from_hand(self, hand_no):
|
||||||
action = [ [], [], [], [], [] ]
|
action = [ [], [], [], [], [] ]
|
||||||
c = self.connection.cursor()
|
c = self.connection.cursor()
|
||||||
c.execute(self.sql.query['get_action_from_hand'], (hand_no, ))
|
c.execute(self.sql.query['get_action_from_hand'], (hand_no,))
|
||||||
for row in c.fetchall():
|
for row in c.fetchall():
|
||||||
street = row[0]
|
street = row[0]
|
||||||
act = row[1:]
|
act = row[1:]
|
||||||
|
@ -222,7 +182,7 @@ class Database:
|
||||||
"""Returns a hash of winners:amount won, given a hand number."""
|
"""Returns a hash of winners:amount won, given a hand number."""
|
||||||
winners = {}
|
winners = {}
|
||||||
c = self.connection.cursor()
|
c = self.connection.cursor()
|
||||||
c.execute(self.sql.query['get_winners_from_hand'], (hand, ))
|
c.execute(self.sql.query['get_winners_from_hand'], (hand,))
|
||||||
for row in c.fetchall():
|
for row in c.fetchall():
|
||||||
winners[row[0]] = row[1]
|
winners[row[0]] = row[1]
|
||||||
return winners
|
return winners
|
||||||
|
@ -333,10 +293,10 @@ if __name__=="__main__":
|
||||||
for p in stat_dict.keys():
|
for p in stat_dict.keys():
|
||||||
print p, " ", stat_dict[p]
|
print p, " ", stat_dict[p]
|
||||||
|
|
||||||
# print "nutOmatics stats:"
|
#print "nutOmatics stats:"
|
||||||
# stat_dict = db_connection.get_stats_from_hand(h, hero)
|
#stat_dict = db_connection.get_stats_from_hand(h, hero)
|
||||||
# for p in stat_dict.keys():
|
#for p in stat_dict.keys():
|
||||||
# print p, " ", stat_dict[p]
|
# print p, " ", stat_dict[p]
|
||||||
|
|
||||||
print "cards =", db_connection.get_cards(u'1')
|
print "cards =", db_connection.get_cards(u'1')
|
||||||
db_connection.close_connection
|
db_connection.close_connection
|
||||||
|
|
Loading…
Reference in New Issue
Block a user