From 73c904a773ca7311b155368354b35584dd18966b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jure=20=C5=A0orn?= Date: Tue, 13 Aug 2019 18:12:25 +0200 Subject: [PATCH] SQLite --- README.md | 23 +++++++++++------------ index.html | 23 +++++++++++------------ 2 files changed, 22 insertions(+), 24 deletions(-) diff --git a/README.md b/README.md index 7dc7200..47db945 100644 --- a/README.md +++ b/README.md @@ -1780,7 +1780,7 @@ SQLite **Server-less database engine that stores each database into separate file.** ```python import sqlite3 -db = sqlite3.connect('') # Also ':memory:'. +db = sqlite3.connect('') # Also ':memory:'. ... db.close() ``` @@ -1788,10 +1788,9 @@ db.close() ### Read ```python -cursor = db.execute('') -if cursor: - = cursor.fetchone() # First row. Also next(cursor). - = cursor.fetchall() # Remaining rows. + = db.execute('') # Raises sqlite3.OperationalError. + = .fetchone() # First row. Also next(). + = .fetchall() # Remaining rows. ``` * **Returned values can be of type str, int, float, bytes or None.** @@ -1809,9 +1808,9 @@ with db: ### Placeholders ```python -db.execute('', ) # Replaces '?'s in query with values. -db.execute('', ) # Replaces ':'s with values. -db.executemany('', ) # Runs execute() many times. +db.execute('', ) # Replaces '?'s in query with values. +db.execute('', ) # Replaces ':'s with values. +db.executemany('', ) # Runs execute() many times. ``` * **Passed values can be of type str, int, float, bytes, None, bool, datetime.date or datetime.datetme.** * **Bools will be stored and returned as ints and dates as ISO formatted strings.** @@ -1832,10 +1831,10 @@ db.executemany('', ) # Runs execute() many times. # $ pip3 install mysql-connector from mysql import connector db = connector.connect(host=, user=, password=, database=) -cursor = db.cursor() -cursor.execute('') # Only cursor has execute method. -cursor.execute('', ) # Replaces '%s's in query with values. -cursor.execute('', ) # Replaces '%()s's with values. + = db.cursor() +.execute('') # Only cursor has execute method. +.execute('', ) # Replaces '%s's in query with values. +.execute('', ) # Replaces '%()s's with values. ``` diff --git a/index.html b/index.html index 42ff9ad..70328f7 100644 --- a/index.html +++ b/index.html @@ -1587,7 +1587,7 @@ shutil.rmtree(<path>) # Deletes th

#SQLite

Server-less database engine that stores each database into separate file.

import sqlite3
-db = sqlite3.connect('<path>')                # Also ':memory:'.
+db = sqlite3.connect('<path>')                  # Also ':memory:'.
 ...
 db.close()
 
@@ -1596,10 +1596,9 @@ db.close()
  • New database will be created if path doesn't exist.
-

Read

cursor = db.execute('<query>')
-if cursor:
-    <tuple> = cursor.fetchone()               # First row. Also next(cursor).
-    <list>  = cursor.fetchall()               # Remaining rows.
+

Read

<cursor> = db.execute('<query>')                # Raises sqlite3.OperationalError.
+<tuple>  = <cursor>.fetchone()                  # First row. Also next(<cursor>).
+<list>   = <cursor>.fetchall()                  # Remaining rows.
 
    @@ -1613,9 +1612,9 @@ db.commit() db.execute('<query>')
-

Placeholders

db.execute('<query>', <list/tuple>)           # Replaces '?'s in query with values.
-db.execute('<query>', <dict/namedtuple>)      # Replaces ':<key>'s with values.
-db.executemany('<query>', <coll_of_above>)    # Runs execute() many times.
+

Placeholders

db.execute('<query>', <list/tuple>)             # Replaces '?'s in query with values.
+db.execute('<query>', <dict/namedtuple>)        # Replaces ':<key>'s with values.
+db.executemany('<query>', <coll_of_above>)      # Runs execute() many times.
 
    @@ -1635,10 +1634,10 @@ db.executemany('<query>', <coll_of_abo

    MySQL

    Has a very similar interface, with differences listed below.

    # $ pip3 install mysql-connector
     from mysql import connector
     db = connector.connect(host=<str>, user=<str>, password=<str>, database=<str>)
    -cursor = db.cursor()
    -cursor.execute('<query>')                     # Only cursor has execute method.
    -cursor.execute('<query>', <list/tuple>)       # Replaces '%s's in query with values.
    -cursor.execute('<query>', <dict/namedtuple>)  # Replaces '%(<key>)s's with values.
    +<cursor> = db.cursor()
    +<cursor>.execute('<query>')                     # Only cursor has execute method.
    +<cursor>.execute('<query>', <list/tuple>)       # Replaces '%s's in query with values.
    +<cursor>.execute('<query>', <dict/namedtuple>)  # Replaces '%(<key>)s's with values.