1
0
mirror of https://github.com/vrana/adminer.git synced 2025-08-06 06:37:33 +02:00

MS SQL PDO: Hide unsupported EXPLAIN

This commit is contained in:
Jakub Vrana
2025-03-24 14:47:55 +01:00
parent 50cdbbe415
commit 8b93d51c68
2 changed files with 11 additions and 7 deletions

View File

@@ -160,6 +160,13 @@ if (isset($_GET["mssql"])) {
return get_val("SELECT SCOPE_IDENTITY()"); // @@IDENTITY can return trigger INSERT
}
function explain($connection, $query) {
$connection->query("SET SHOWPLAN_ALL ON");
$return = $connection->query($query);
$connection->query("SET SHOWPLAN_ALL OFF"); // connection is used also for indexes
return $return;
}
} else {
class MssqlDb extends PdoDb {
function select_db($database) {
@@ -177,6 +184,9 @@ if (isset($_GET["mssql"])) {
return $connection->lastInsertId();
}
function explain($connection, $query) {
}
if (extension_loaded("pdo_sqlsrv")) {
class Db extends MssqlDb {
public $extension = "PDO_SQLSRV";
@@ -556,13 +566,6 @@ WHERE OBJECT_NAME(i.object_id) = " . q($table), $connection2) as $row
;
}
function explain($connection, $query) {
$connection->query("SET SHOWPLAN_ALL ON");
$return = $connection->query($query);
$connection->query("SET SHOWPLAN_ALL OFF"); // connection is used also for indexes
return $return;
}
function found_rows($table_status, $where) {
}

View File

@@ -10,6 +10,7 @@ foreach (glob("*.html") as $filename) {
return "/$match[1].php?ext=pdo" . ($match[3] ? "&" : "");
}, $file);
$file = str_replace("<tr><td>open</td><td>/coverage.php?coverage=0</td><td></td></tr>\n", "", $file);
$file = str_replace("<tr><td>click</td><td>link=Explain</td><td></td></tr>\n<tr><td>verifyTextPresent</td><td>Clustered Index Scan</td><td></td></tr>\n", "", $file); // MS SQL PDO doesn't support EXPLAIN
$file = preg_replace("~//input\[@value='Login']~", "\\0</td><td></td></tr>\n<tr><td>verifyTextPresent</td><td>PDO_", $file, 1);
file_put_contents("pdo-$filename", $file);
}