Skip to main content

Simple util from which I inherit my sqlite classes

Project description

Simple class that wraps around the sqlite3.conn().cursor().execute() method

from simplesqlitewrap import Database

class DbWrapper(Database):
    def create_tables(self):
    	self._execute('CREATE TABLE IF NOT EXISTS Users (user_id INTEGER PRIMARY KEY, first_name NVARCHAR);')

    def insert_users(self, users, **kwargs):
    	return self._execute('INSERT OR IGNORE INTO Users (user_id, first_name) VALUES (?, ?)', users, many=True, **kwargs)

    def select_users(self, **kwargs):
    	# returns the list of all the records in 'Users'
    	return self._execute('SELECT * FROM Users', fetchall=True, **kwargs)

db = DbWrapper('database.sqlite')
print(db)

db.create_tables()

params = [(1, 'Bob'), (2, 'Charlie')]
rows_inserted = db.insert_users(params, rowcount=True)
print('Rows inserted:', rows_inserted)

users = db.select_users(as_namedtuple=True)
for user in users:
	print('ID:', user.user_id, 'first name:', user.first_name)

Installation

pip install simplesqlitewrap

Disclaimer

If you stumbled upon this package, please remember that this is just a small utility I made for myself - breaking changes may be introduced without notice. Also, my first pypi package - will probably use it for tests and sheningans.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for simplesqlitewrap, version 0.1.15
Filename, size File type Python version Upload date Hashes
Filename, size simplesqlitewrap-0.1.15-py3-none-any.whl (4.1 kB) File type Wheel Python version py3 Upload date Hashes View hashes
Filename, size simplesqlitewrap-0.1.15.tar.gz (3.9 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page