Browse Source

Add index to speed searches on c_tool joins

Yannick Warnier 8 năm trước cách đây
mục cha
commit
37ee424148
1 tập tin đã thay đổi với 42 bổ sung0 xóa
  1. 42 0
      app/Migrations/Schema/V111/Version20160929120000.php

+ 42 - 0
app/Migrations/Schema/V111/Version20160929120000.php

@@ -0,0 +1,42 @@
+<?php
+/* For licensing terms, see /license.txt */
+
+namespace Application\Migrations\Schema\V111;
+
+use Application\Migrations\AbstractMigrationChamilo;
+use Doctrine\DBAL\Schema\Schema;
+use Doctrine\DBAL\Types\Type;
+
+/**
+ * Class Version20160929120000
+ * Change tables engine to InnoDB
+ * @package Application\Migrations\Schema\V111
+ */
+class Version20160929120000 extends AbstractMigrationChamilo
+{
+    /**
+     * @param Schema $schema
+     * @throws \Doctrine\DBAL\DBALException
+     * @throws \Doctrine\DBAL\Schema\SchemaException
+     */
+    public function up(Schema $schema)
+    {
+        $this->addSql("ALTER TABLE c_tool ADD INDEX idx_ctool_name (name(20))");
+    }
+
+    /**
+     * @param Schema $schema
+     * @throws \Doctrine\DBAL\DBALException
+     * @throws \Doctrine\DBAL\Schema\SchemaException
+     */
+    public function down(Schema $schema)
+    {
+        foreach ($this->names as $name) {
+            if (!$schema->hasTable($name)) {
+                continue;
+            }
+
+            $this->addSql("ALTER TABLE c_tool DROP INDEX idx_ctool_name");
+        }
+    }
+}