123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- # This file is part of jwmud, written by Helmut Pozimski in 2014.
- #
- # jwmud is free software: you can redistribute it and/or modify
- # it under the terms of the GNU General Public License as published by
- # the Free Software Foundation, version 2 of the License.
- #
- # jwmud is distributed in the hope that it will be useful,
- # but WITHOUT ANY WARRANTY; without even the implied warranty of
- # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- # GNU General Public License for more details.
- #
- # You should have received a copy of the GNU General Public License
- # along with jwmud. If not, see <http://www.gnu.org/licenses/>.
- # -*- coding: utf8 -*-
- import sqlite3
- from jwmudlib import jwmu_exceptions
- class db:
- def __init__(self, db_path):
- """Constructor, establishes the initial connection to the database."""
- try:
- self.__connection = sqlite3.connect(db_path)
- except sqlite3.OperationalError:
- raise jwmu_exceptions.DataBaseAccessFailed()
- else:
- self.__cursor = self.__connection.cursor()
- def __del__(self):
- """Destructor, closes the connection to the database"""
- self.__connection.close()
- def __ExecuteQuery(self, query, arguments=None):
- """Executes any query and returns the result"""
- if arguments is None:
- query_result = self.__cursor.execute(query)
- else:
- query_result = self.__cursor.execute(query, arguments)
- return query_result
- def __ExecuteStatement(self, statement, arguments=None):
- """Executes any statements that perform a write access to the
- database
- """
- try:
- if arguments is None:
- self.__cursor.execute(statement)
- else:
- self.__cursor.execute(statement, arguments)
- except sqlite3.OperationalError:
- raise jwmu_exceptions.DataBaseWriteFailed()
- else:
- self.__connection.commit()
|