From e1ee58816ba76734e4115fc12898b13de665b220 Mon Sep 17 00:00:00 2001 From: Alexis Degrugillier Date: Mon, 28 Dec 2020 10:44:08 -0500 Subject: Add a file for each PDO class (#3297) Before, we had 5 classes in the ModelPdo file. It was bad for 2 reasons. The first reason is that it is considered bad practice to have multiple class in one file. This is especially true when using autoloading. On top of that it is less readable considering the size of the file. The second reason is that so far we were lucky. Everytime we needed to access the database, it was through the ModelPdo class which loads all the other classes. If we want to access directly the connection, it wont be loaded. On top of that, the system is configured to work on a single database, but as we have every connection definition in a single file, all classes were loaded at the same time. Thus using memory and processing time for nothing. Now, we have a file for each class. To work with autoloading, classes were slightly renamed to match autoloading rules. --- lib/Minz/PdoMysql.php | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 lib/Minz/PdoMysql.php (limited to 'lib/Minz/PdoMysql.php') diff --git a/lib/Minz/PdoMysql.php b/lib/Minz/PdoMysql.php new file mode 100644 index 000000000..3c5aa057c --- /dev/null +++ b/lib/Minz/PdoMysql.php @@ -0,0 +1,21 @@ + + */ + +class Minz_PdoMysql extends MinzPdo { + public function __construct($dsn, $username = null, $passwd = null, $options = null) { + parent::__construct($dsn, $username, $passwd, $options); + $this->setAttribute(PDO::MYSQL_ATTR_USE_BUFFERED_QUERY, false); + } + + public function dbType() { + return 'mysql'; + } + + public function lastInsertId($name = null) { + return parent::lastInsertId(); //We discard the name, only used by PostgreSQL + } +} -- cgit v1.2.3