(self, **keywords)
| 1229 | |
| 1230 | class MySQLDB(DB): |
| 1231 | def __init__(self, **keywords): |
| 1232 | db = import_driver(mysql_drivers, preferred=keywords.pop("driver", None)) |
| 1233 | |
| 1234 | if db.__name__ == "pymysql": |
| 1235 | if "pw" in keywords: |
| 1236 | keywords["password"] = keywords["pw"] |
| 1237 | del keywords["pw"] |
| 1238 | |
| 1239 | elif db.__name__ == "MySQLdb": |
| 1240 | if "pw" in keywords: |
| 1241 | keywords["passwd"] = keywords.pop("pw") |
| 1242 | |
| 1243 | elif db.__name__ == "mysql.connector": |
| 1244 | # Enabled buffered so that len can work as expected. |
| 1245 | keywords.setdefault("buffered", True) |
| 1246 | |
| 1247 | if "pw" in keywords: |
| 1248 | keywords["password"] = keywords["pw"] |
| 1249 | del keywords["pw"] |
| 1250 | |
| 1251 | if "charset" not in keywords: |
| 1252 | keywords["charset"] = "utf8" |
| 1253 | elif keywords["charset"] is None: |
| 1254 | del keywords["charset"] |
| 1255 | |
| 1256 | self.paramstyle = db.paramstyle = "pyformat" # it's both |
| 1257 | self.dbname = "mysql" |
| 1258 | DB.__init__(self, db, keywords) |
| 1259 | self.supports_multiple_insert = True |
| 1260 | |
| 1261 | def _process_insert_query(self, query, tablename, seqname): |
| 1262 | return query, SQLQuery("SELECT last_insert_id();") |
nothing calls this directly
no test coverage detected