MySQL: Support spatial indexes (bug #455)
This commit is contained in:
parent
0cd02bb98a
commit
d5b329a1a4
|
@ -500,9 +500,9 @@ if (!defined("DRIVER")) {
|
||||||
function indexes($table, $connection2 = null) {
|
function indexes($table, $connection2 = null) {
|
||||||
$return = array();
|
$return = array();
|
||||||
foreach (get_rows("SHOW INDEX FROM " . table($table), $connection2) as $row) {
|
foreach (get_rows("SHOW INDEX FROM " . table($table), $connection2) as $row) {
|
||||||
$return[$row["Key_name"]]["type"] = ($row["Key_name"] == "PRIMARY" ? "PRIMARY" : ($row["Index_type"] == "FULLTEXT" ? "FULLTEXT" : ($row["Non_unique"] ? "INDEX" : "UNIQUE")));
|
$return[$row["Key_name"]]["type"] = ($row["Key_name"] == "PRIMARY" ? "PRIMARY" : ($row["Index_type"] == "FULLTEXT" ? "FULLTEXT" : ($row["Non_unique"] ? ($row["Index_type"] == "SPATIAL" ? "SPATIAL" : "INDEX") : "UNIQUE")));
|
||||||
$return[$row["Key_name"]]["columns"][] = $row["Column_name"];
|
$return[$row["Key_name"]]["columns"][] = $row["Column_name"];
|
||||||
$return[$row["Key_name"]]["lengths"][] = $row["Sub_part"];
|
$return[$row["Key_name"]]["lengths"][] = ($row["Index_type"] == "SPATIAL" ? null : $row["Sub_part"]);
|
||||||
$return[$row["Key_name"]]["descs"][] = null;
|
$return[$row["Key_name"]]["descs"][] = null;
|
||||||
}
|
}
|
||||||
return $return;
|
return $return;
|
||||||
|
|
|
@ -5,6 +5,9 @@ $table_status = table_status($TABLE, true);
|
||||||
if (preg_match('~MyISAM|M?aria' . ($connection->server_info >= 5.6 ? '|InnoDB' : '') . '~i', $table_status["Engine"])) {
|
if (preg_match('~MyISAM|M?aria' . ($connection->server_info >= 5.6 ? '|InnoDB' : '') . '~i', $table_status["Engine"])) {
|
||||||
$index_types[] = "FULLTEXT";
|
$index_types[] = "FULLTEXT";
|
||||||
}
|
}
|
||||||
|
if (preg_match('~MyISAM|M?aria' . ($connection->server_info >= 5.7 ? '|InnoDB' : '') . '~i', $table_status["Engine"])) {
|
||||||
|
$index_types[] = "SPATIAL";
|
||||||
|
}
|
||||||
$indexes = indexes($TABLE);
|
$indexes = indexes($TABLE);
|
||||||
$primary = array();
|
$primary = array();
|
||||||
if ($jush == "mongo") { // doesn't support primary key
|
if ($jush == "mongo") { // doesn't support primary key
|
||||||
|
|
|
@ -3,6 +3,7 @@ Add accessibility labels
|
||||||
Make maxlength in edit fields a soft limit
|
Make maxlength in edit fields a soft limit
|
||||||
Add Cache-Control: immutable to static files
|
Add Cache-Control: immutable to static files
|
||||||
MySQL: Add dedicated view for replication status
|
MySQL: Add dedicated view for replication status
|
||||||
|
MySQL: Support spatial indexes
|
||||||
PostgreSQL: Export
|
PostgreSQL: Export
|
||||||
PostgreSQL: Don't treat partial indexes as unique
|
PostgreSQL: Don't treat partial indexes as unique
|
||||||
MS SQL: Support pdo_dblib
|
MS SQL: Support pdo_dblib
|
||||||
|
|
Loading…
Reference in a new issue