From bda49a998e87ff82a4f6c20ae0207a79a6016481 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jure=20=C5=A0orn?= Date: Sun, 2 Oct 2022 18:07:35 +0200 Subject: [PATCH] Switched MySQL with SQLAlchemy --- README.md | 29 +- index.html | 27 +- parse.js | 30 +- pdf/index_for_pdf.html | 3 +- pdf/index_for_pdf_print.html | 3 +- web/empty_script.py | 1058 ++++++++++++++++++++++++++++++++++ 6 files changed, 1119 insertions(+), 31 deletions(-) diff --git a/README.md b/README.md index 1f9995d..809e20c 100644 --- a/README.md +++ b/README.md @@ -1914,16 +1914,25 @@ with : # Exits the block with commit() [(1, 'Jean-Luc', 187)] ``` -### MySQL -**Has a very similar interface, with differences listed below.** -```python -# $ pip3 install mysql-connector -from mysql import connector - = connector.connect(host=, …) # `user=, password=, database=`. - = .cursor() # Only cursor has execute() method. -.execute('') # Can raise a subclass of connector.Error. -.execute('', ) # Replaces '%s's in query with values. -.execute('', ) # Replaces '%()s's with values. +### SqlAlchemy +```python +# $ pip3 install sqlalchemy +from sqlalchemy import create_engine, text + = create_engine('').connect() # Url: 'dialect://user:password@host/dbname'. + = .connect() # Creates a connection. Also .close(). + = .execute(text(''), …) # Replaces ':'s with keyword arguments. +with .begin(): ... # Exits the block with commit or rollback. +``` + +```text ++------------+--------------+-----------+-----------------------------------+ +| Dialects | pip3 install | import | Dependencies | ++------------+--------------+-----------+-----------------------------------+ +| mysql | mysqlclient | MySQLdb | www.pypi.org/project/mysqlclient | +| postgresql | psycopg2 | psycopg2 | www.psycopg.org/docs/install.html | +| mssql | pyodbc | pyodbc | apt install g++ unixodbc-dev | +| oracle | cx_oracle | cx_Oracle | Oracle Instant Client | ++------------+--------------+-----------+-----------------------------------+ ``` diff --git a/index.html b/index.html index 0b5560d..fdf254a 100644 --- a/index.html +++ b/index.html @@ -54,7 +54,7 @@
- +
@@ -1595,16 +1595,23 @@ CompletedProcess(args=['bc', MySQL

Has a very similar interface, with differences listed below.

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

SqlAlchemy

# $ pip3 install sqlalchemy
+from sqlalchemy import create_engine, text
+<engine> = create_engine('<url>').connect()     # Url: 'dialect://user:password@host/dbname'.
+<conn>   = <engine>.connect()                   # Creates a connection. Also <conn>.close().
+<cursor> = <conn>.execute(text('<query>'), …)   # Replaces ':<key>'s with keyword arguments.
+with <conn>.begin(): ...                        # Exits the block with commit or rollback.
 
- +
┏━━━━━━━━━━━━┯━━━━━━━━━━━━━━┯━━━━━━━━━━━┯━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
+┃ Dialects   │ pip3 install │ import    │ Dependencies                      ┃
+┠────────────┼──────────────┼───────────┼───────────────────────────────────┨
+┃ mysql      │ mysqlclient  │ MySQLdb   │ www.pypi.org/project/mysqlclient  ┃
+┃ postgresql │ psycopg2     │ psycopg2  │ www.psycopg.org/docs/install.html ┃
+┃ mssql      │ pyodbc       │ pyodbc    │ apt install g++ unixodbc-dev      ┃
+┃ oracle     │ cx_oracle    │ cx_Oracle │ Oracle Instant Client             ┃
+┗━━━━━━━━━━━━┷━━━━━━━━━━━━━━┷━━━━━━━━━━━┷━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
+

#Bytes

Bytes object is an immutable sequence of single bytes. Mutable version is called bytearray.

<bytes> = b'<str>'                          # Only accepts ASCII characters and \x00-\xff.
 <int>   = <bytes>[<index>]                  # Returns an int in range from 0 to 255.
 <bytes> = <bytes>[<slice>]                  # Returns bytes even if it has only one element.
@@ -2903,7 +2910,7 @@ $ pyinstaller script.py --add-data '<path>:.'  
  
 
   
- +
diff --git a/parse.js b/parse.js index a5486e3..969de5c 100755 --- a/parse.js +++ b/parse.js @@ -262,13 +262,13 @@ const DIAGRAM_1_A = '+------------------+------------+------------+------------+\n'; const DIAGRAM_1_B = -'┏━━━━━━━━━━━━━━━━━━┯━━━━━━━━━━━━┯━━━━━━━━━━━━┯━━━━━━━━━━━━┓\n' + -'┃ │ Iterable │ Collection │ Sequence ┃\n' + -'┠──────────────────┼────────────┼────────────┼────────────┨\n' + -'┃ list, range, str │ ✓ │ ✓ │ ✓ ┃\n' + -'┃ dict, set │ ✓ │ ✓ │ ┃\n' + -'┃ iter │ ✓ │ │ ┃\n' + -'┗━━━━━━━━━━━━━━━━━━┷━━━━━━━━━━━━┷━━━━━━━━━━━━┷━━━━━━━━━━━━┛\n'; + '┏━━━━━━━━━━━━━━━━━━┯━━━━━━━━━━━━┯━━━━━━━━━━━━┯━━━━━━━━━━━━┓\n' + + '┃ │ Iterable │ Collection │ Sequence ┃\n' + + '┠──────────────────┼────────────┼────────────┼────────────┨\n' + + '┃ list, range, str │ ✓ │ ✓ │ ✓ ┃\n' + + '┃ dict, set │ ✓ │ ✓ │ ┃\n' + + '┃ iter │ ✓ │ │ ┃\n' + + '┗━━━━━━━━━━━━━━━━━━┷━━━━━━━━━━━━┷━━━━━━━━━━━━┷━━━━━━━━━━━━┛\n'; const DIAGRAM_2_A = '+--------------------+----------+----------+----------+----------+----------+\n' + @@ -414,6 +414,21 @@ const DIAGRAM_9_B = "┃ escapechar │ None │ None │ None ┃\n" + "┗━━━━━━━━━━━━━━━━━━┷━━━━━━━━━━━━━━┷━━━━━━━━━━━━━━┷━━━━━━━━━━━━━━┛\n"; +const DIAGRAM_95_A = + "+------------+--------------+-----------+-----------------------------------+\n" + + "| Dialects | pip3 install | import | Dependencies |\n" + + "+------------+--------------+-----------+-----------------------------------+\n"; + +const DIAGRAM_95_B = + "┏━━━━━━━━━━━━┯━━━━━━━━━━━━━━┯━━━━━━━━━━━┯━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\n" + + "┃ Dialects │ pip3 install │ import │ Dependencies ┃\n" + + "┠────────────┼──────────────┼───────────┼───────────────────────────────────┨\n" + + "┃ mysql │ mysqlclient │ MySQLdb │ www.pypi.org/project/mysqlclient ┃\n" + + "┃ postgresql │ psycopg2 │ psycopg2 │ www.psycopg.org/docs/install.html ┃\n" + + "┃ mssql │ pyodbc │ pyodbc │ apt install g++ unixodbc-dev ┃\n" + + "┃ oracle │ cx_oracle │ cx_Oracle │ Oracle Instant Client ┃\n" + + "┗━━━━━━━━━━━━┷━━━━━━━━━━━━━━┷━━━━━━━━━━━┷━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\n"; + const DIAGRAM_10_A = '+-------------+-------------+\n' + '| Classes | Metaclasses |\n' + @@ -677,6 +692,7 @@ function updateDiagrams() { $(`code:contains(${DIAGRAM_7_A})`).html(DIAGRAM_7_B); $(`code:contains(${DIAGRAM_8_A})`).html(DIAGRAM_8_B); $(`code:contains(${DIAGRAM_9_A})`).html(DIAGRAM_9_B); + $(`code:contains(${DIAGRAM_95_A})`).html(DIAGRAM_95_B); $(`code:contains(${DIAGRAM_10_A})`).html(DIAGRAM_10_B); $(`code:contains(${DIAGRAM_11_A})`).html(DIAGRAM_11_B); $(`code:contains(${DIAGRAM_12_A})`).html(DIAGRAM_12_B).removeClass("text").removeClass("language-text").addClass("python"); diff --git a/pdf/index_for_pdf.html b/pdf/index_for_pdf.html index 92976e2..2e40588 100644 --- a/pdf/index_for_pdf.html +++ b/pdf/index_for_pdf.html @@ -86,8 +86,7 @@ math module, 7
memoryviews, 29
metaclass attribute, 32
-metaprogramming, 31-32
-mysql library, 27

+metaprogramming, 31-32

N

namedtuples, 3
nonlocal keyword, 12
diff --git a/pdf/index_for_pdf_print.html b/pdf/index_for_pdf_print.html index f9964fe..269e723 100644 --- a/pdf/index_for_pdf_print.html +++ b/pdf/index_for_pdf_print.html @@ -86,8 +86,7 @@ math module, 7
memoryviews, 29
metaclass attribute, 32
-metaprograming, 31-32
-mysql library, 27

+metaprograming, 31-32

N

namedtuples, 3
nonlocal keyword, 12
diff --git a/web/empty_script.py b/web/empty_script.py index 5e79202..ec3e1ca 100644 --- a/web/empty_script.py +++ b/web/empty_script.py @@ -21336,4 +21336,1062 @@ print('\n'.join(wave)) ### ## # +# +## +### +#### +####### +########## +############# +################## +###################### +########################### +################################ +####################################### +############################################ +################################################# +###################################################### +########################################################### +############################################################### +################################################################### +###################################################################### +######################################################################### +########################################################################### +############################################################################ +############################################################################# +############################################################################# +############################################################################ +########################################################################### +######################################################################### +###################################################################### +################################################################### +############################################################### +########################################################### +###################################################### +################################################# +############################################ +####################################### +################################## +############################# +######################## +################### +############### +########### +######## +##### +### +## +# +# +## +### +#### +####### +########## +############# +################## +###################### +########################### +################################ +####################################### +############################################ +################################################# +###################################################### +########################################################### +############################################################### +################################################################### +###################################################################### +######################################################################### +########################################################################### +############################################################################ +############################################################################# +############################################################################# +############################################################################ +########################################################################### +######################################################################### +###################################################################### +################################################################### +############################################################### +########################################################### +###################################################### +################################################# +############################################ +####################################### +################################## +############################# +######################## +################### +############### +########### +######## +##### +### +## +# +# +## +### +#### +####### +########## +############# +################## +###################### +########################### +################################ +####################################### +############################################ +################################################# +###################################################### +########################################################### +############################################################### +################################################################### +###################################################################### +######################################################################### +########################################################################### +############################################################################ +############################################################################# +############################################################################# +############################################################################ +########################################################################### +######################################################################### +###################################################################### +################################################################### +############################################################### +########################################################### +###################################################### +################################################# +############################################ +####################################### +################################## +############################# +######################## +################### +############### +########### +######## +##### +### +## +# +# +## +### +#### +####### +########## +############# +################## +###################### +########################### +################################ +####################################### +############################################ +################################################# +###################################################### +########################################################### +############################################################### +################################################################### +###################################################################### +######################################################################### +########################################################################### +############################################################################ +############################################################################# +############################################################################# +############################################################################ +########################################################################### +######################################################################### +###################################################################### +################################################################### +############################################################### +########################################################### +###################################################### +################################################# +############################################ +####################################### +################################## +############################# +######################## +################### +############### +########### +######## +##### +### +## +# +# +## +### +#### +####### +########## +############# +################## +###################### +########################### +################################ +####################################### +############################################ +################################################# +###################################################### +########################################################### +############################################################### +################################################################### +###################################################################### +######################################################################### +########################################################################### +############################################################################ +############################################################################# +############################################################################# +############################################################################ +########################################################################### +######################################################################### +###################################################################### +################################################################### +############################################################### +########################################################### +###################################################### +################################################# +############################################ +####################################### +################################## +############################# +######################## +################### +############### +########### +######## +##### +### +## +# +# +## +### +#### +####### +########## +############# +################## +###################### +########################### +################################ +####################################### +############################################ +################################################# +###################################################### +########################################################### +############################################################### +################################################################### +###################################################################### +######################################################################### +########################################################################### +############################################################################ +############################################################################# +############################################################################# +############################################################################ +########################################################################### +######################################################################### +###################################################################### +################################################################### +############################################################### +########################################################### +###################################################### +################################################# +############################################ +####################################### +################################## +############################# +######################## +################### +############### +########### +######## +##### +### +## +# +# +## +### +#### +####### +########## +############# +################## +###################### +########################### +################################ +####################################### +############################################ +################################################# +###################################################### +########################################################### +############################################################### +################################################################### +###################################################################### +######################################################################### +########################################################################### +############################################################################ +############################################################################# +############################################################################# +############################################################################ +########################################################################### +######################################################################### +###################################################################### +################################################################### +############################################################### +########################################################### +###################################################### +################################################# +############################################ +####################################### +################################## +############################# +######################## +################### +############### +########### +######## +##### +### +## +# +# +## +### +#### +####### +########## +############# +################## +###################### +########################### +################################ +####################################### +############################################ +################################################# +###################################################### +########################################################### +############################################################### +################################################################### +###################################################################### +######################################################################### +########################################################################### +############################################################################ +############################################################################# +############################################################################# +############################################################################ +########################################################################### +######################################################################### +###################################################################### +################################################################### +############################################################### +########################################################### +###################################################### +################################################# +############################################ +####################################### +################################## +############################# +######################## +################### +############### +########### +######## +##### +### +## +# +# +## +### +#### +####### +########## +############# +################## +###################### +########################### +################################ +####################################### +############################################ +################################################# +###################################################### +########################################################### +############################################################### +################################################################### +###################################################################### +######################################################################### +########################################################################### +############################################################################ +############################################################################# +############################################################################# +############################################################################ +########################################################################### +######################################################################### +###################################################################### +################################################################### +############################################################### +########################################################### +###################################################### +################################################# +############################################ +####################################### +################################## +############################# +######################## +################### +############### +########### +######## +##### +### +## +# +# +## +### +#### +####### +########## +############# +################## +###################### +########################### +################################ +####################################### +############################################ +################################################# +###################################################### +########################################################### +############################################################### +################################################################### +###################################################################### +######################################################################### +########################################################################### +############################################################################ +############################################################################# +############################################################################# +############################################################################ +########################################################################### +######################################################################### +###################################################################### +################################################################### +############################################################### +########################################################### +###################################################### +################################################# +############################################ +####################################### +################################## +############################# +######################## +################### +############### +########### +######## +##### +### +## +# +# +## +### +#### +####### +########## +############# +################## +###################### +########################### +################################ +####################################### +############################################ +################################################# +###################################################### +########################################################### +############################################################### +################################################################### +###################################################################### +######################################################################### +########################################################################### +############################################################################ +############################################################################# +############################################################################# +############################################################################ +########################################################################### +######################################################################### +###################################################################### +################################################################### +############################################################### +########################################################### +###################################################### +################################################# +############################################ +####################################### +################################## +############################# +######################## +################### +############### +########### +######## +##### +### +## +# +# +## +### +#### +####### +########## +############# +################## +###################### +########################### +################################ +####################################### +############################################ +################################################# +###################################################### +########################################################### +############################################################### +################################################################### +###################################################################### +######################################################################### +########################################################################### +############################################################################ +############################################################################# +############################################################################# +############################################################################ +########################################################################### +######################################################################### +###################################################################### +################################################################### +############################################################### +########################################################### +###################################################### +################################################# +############################################ +####################################### +################################## +############################# +######################## +################### +############### +########### +######## +##### +### +## +# +# +## +### +#### +####### +########## +############# +################## +###################### +########################### +################################ +####################################### +############################################ +################################################# +###################################################### +########################################################### +############################################################### +################################################################### +###################################################################### +######################################################################### +########################################################################### +############################################################################ +############################################################################# +############################################################################# +############################################################################ +########################################################################### +######################################################################### +###################################################################### +################################################################### +############################################################### +########################################################### +###################################################### +################################################# +############################################ +####################################### +################################## +############################# +######################## +################### +############### +########### +######## +##### +### +## +# +# +## +### +#### +####### +########## +############# +################## +###################### +########################### +################################ +####################################### +############################################ +################################################# +###################################################### +########################################################### +############################################################### +################################################################### +###################################################################### +######################################################################### +########################################################################### +############################################################################ +############################################################################# +############################################################################# +############################################################################ +########################################################################### +######################################################################### +###################################################################### +################################################################### +############################################################### +########################################################### +###################################################### +################################################# +############################################ +####################################### +################################## +############################# +######################## +################### +############### +########### +######## +##### +### +## +# +# +## +### +#### +####### +########## +############# +################## +###################### +########################### +################################ +####################################### +############################################ +################################################# +###################################################### +########################################################### +############################################################### +################################################################### +###################################################################### +######################################################################### +########################################################################### +############################################################################ +############################################################################# +############################################################################# +############################################################################ +########################################################################### +######################################################################### +###################################################################### +################################################################### +############################################################### +########################################################### +###################################################### +################################################# +############################################ +####################################### +################################## +############################# +######################## +################### +############### +########### +######## +##### +### +## +# +# +## +### +#### +####### +########## +############# +################## +###################### +########################### +################################ +####################################### +############################################ +################################################# +###################################################### +########################################################### +############################################################### +################################################################### +###################################################################### +######################################################################### +########################################################################### +############################################################################ +############################################################################# +############################################################################# +############################################################################ +########################################################################### +######################################################################### +###################################################################### +################################################################### +############################################################### +########################################################### +###################################################### +################################################# +############################################ +####################################### +################################## +############################# +######################## +################### +############### +########### +######## +##### +### +## +# +# +## +### +#### +####### +########## +############# +################## +###################### +########################### +################################ +####################################### +############################################ +################################################# +###################################################### +########################################################### +############################################################### +################################################################### +###################################################################### +######################################################################### +########################################################################### +############################################################################ +############################################################################# +############################################################################# +############################################################################ +########################################################################### +######################################################################### +###################################################################### +################################################################### +############################################################### +########################################################### +###################################################### +################################################# +############################################ +####################################### +################################## +############################# +######################## +################### +############### +########### +######## +##### +### +## +# +# +## +### +#### +####### +########## +############# +################## +###################### +########################### +################################ +####################################### +############################################ +################################################# +###################################################### +########################################################### +############################################################### +################################################################### +###################################################################### +######################################################################### +########################################################################### +############################################################################ +############################################################################# +############################################################################# +############################################################################ +########################################################################### +######################################################################### +###################################################################### +################################################################### +############################################################### +########################################################### +###################################################### +################################################# +############################################ +####################################### +################################## +############################# +######################## +################### +############### +########### +######## +##### +### +## +# +# +## +### +#### +####### +########## +############# +################## +###################### +########################### +################################ +####################################### +############################################ +################################################# +###################################################### +########################################################### +############################################################### +################################################################### +###################################################################### +######################################################################### +########################################################################### +############################################################################ +############################################################################# +############################################################################# +############################################################################ +########################################################################### +######################################################################### +###################################################################### +################################################################### +############################################################### +########################################################### +###################################################### +################################################# +############################################ +####################################### +################################## +############################# +######################## +################### +############### +########### +######## +##### +### +## +# +# +## +### +#### +####### +########## +############# +################## +###################### +########################### +################################ +####################################### +############################################ +################################################# +###################################################### +########################################################### +############################################################### +################################################################### +###################################################################### +######################################################################### +########################################################################### +############################################################################ +############################################################################# +############################################################################# +############################################################################ +########################################################################### +######################################################################### +###################################################################### +################################################################### +############################################################### +########################################################### +###################################################### +################################################# +############################################ +####################################### +################################## +############################# +######################## +################### +############### +########### +######## +##### +### +## +# +# +## +### +#### +####### +########## +############# +################## +###################### +########################### +################################ +####################################### +############################################ +################################################# +###################################################### +########################################################### +############################################################### +################################################################### +###################################################################### +######################################################################### +########################################################################### +############################################################################ +############################################################################# +############################################################################# +############################################################################ +########################################################################### +######################################################################### +###################################################################### +################################################################### +############################################################### +########################################################### +###################################################### +################################################# +############################################ +####################################### +################################## +############################# +######################## +################### +############### +########### +######## +##### +### +## +# +# +## +### +#### +####### +########## +############# +################## +###################### +########################### +################################ +####################################### +############################################ +################################################# +###################################################### +########################################################### +############################################################### +################################################################### +###################################################################### +######################################################################### +########################################################################### +############################################################################ +############################################################################# +############################################################################# +############################################################################ +########################################################################### +######################################################################### +###################################################################### +################################################################### +############################################################### +########################################################### +###################################################### +################################################# +############################################ +####################################### +################################## +############################# +######################## +################### +############### +########### +######## +##### +### +## +# +# +## +### +#### +####### +########## +############# +################## +###################### +########################### +################################ +####################################### +############################################ +################################################# +###################################################### +########################################################### +############################################################### +################################################################### +###################################################################### +######################################################################### +########################################################################### +############################################################################ +############################################################################# +############################################################################# +############################################################################ +########################################################################### +######################################################################### +###################################################################### +################################################################### +############################################################### +########################################################### +###################################################### +################################################# +############################################ +####################################### +################################## +############################# +######################## +################### +############### +########### +######## +##### +### +## +#