Driver specific INSERT INTO
git-svn-id: https://adminer.svn.sourceforge.net/svnroot/adminer/trunk@1484 7c3ca157-0c34-0410-bff1-cbf682f78f5c
This commit is contained in:
parent
e780f9bb05
commit
341362a8fa
|
@ -680,6 +680,15 @@ if (!defined("DRIVER")) {
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** Insert data into table
|
||||||
|
* @param string
|
||||||
|
* @param array
|
||||||
|
* @return bool
|
||||||
|
*/
|
||||||
|
function insert_into($table, $set) {
|
||||||
|
return queries("INSERT INTO " . idf_escape($table) . " (" . implode(", ", array_keys($set)) . ")\nVALUES (" . implode(", ", $set) . ")");
|
||||||
|
}
|
||||||
|
|
||||||
/** Explain select
|
/** Explain select
|
||||||
* @param Min_DB
|
* @param Min_DB
|
||||||
* @param string
|
* @param string
|
||||||
|
|
|
@ -440,6 +440,10 @@ WHERE tc.constraint_type = 'FOREIGN KEY' AND tc.table_name = " . $connection->qu
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function insert_into($table, $set) {
|
||||||
|
return queries("INSERT INTO " . idf_escape($table) . ($set ? " (" . implode(", ", array_keys($set)) . ")\nVALUES (" . implode(", ", $set) . ")" : "DEFAULT VALUES"));
|
||||||
|
}
|
||||||
|
|
||||||
function explain($connection, $query) {
|
function explain($connection, $query) {
|
||||||
return $connection->query("EXPLAIN $query");
|
return $connection->query("EXPLAIN $query");
|
||||||
}
|
}
|
||||||
|
|
|
@ -474,6 +474,10 @@ if (isset($_GET["sqlite"]) || isset($_GET["sqlite2"])) {
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function insert_into($table, $set) {
|
||||||
|
return queries("INSERT INTO " . idf_escape($table) . ($set ? " (" . implode(", ", array_keys($set)) . ")\nVALUES (" . implode(", ", $set) . ")" : "DEFAULT VALUES"));
|
||||||
|
}
|
||||||
|
|
||||||
function explain($connection, $query) {
|
function explain($connection, $query) {
|
||||||
return $connection->query("EXPLAIN $query");
|
return $connection->query("EXPLAIN $query");
|
||||||
}
|
}
|
||||||
|
|
|
@ -31,7 +31,7 @@ if ($_POST && !$error && !isset($_GET["select"])) {
|
||||||
}
|
}
|
||||||
query_redirect("UPDATE" . limit1(idf_escape($TABLE) . " SET" . implode(",", $set) . "\nWHERE $where"), $location, lang('Item has been updated.'));
|
query_redirect("UPDATE" . limit1(idf_escape($TABLE) . " SET" . implode(",", $set) . "\nWHERE $where"), $location, lang('Item has been updated.'));
|
||||||
} else {
|
} else {
|
||||||
query_redirect("INSERT INTO " . idf_escape($TABLE) . " (" . implode(", ", array_keys($set)) . ")\nVALUES (" . implode(", ", $set) . ")", $location, lang('Item has been inserted.'));
|
queries_redirect($location, lang('Item has been inserted.'), insert_into($TABLE, $set));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -193,11 +193,11 @@ function unique_array($row, $indexes) {
|
||||||
*/
|
*/
|
||||||
function where($where) {
|
function where($where) {
|
||||||
$return = array();
|
$return = array();
|
||||||
foreach (array("where", "null") as $type) {
|
foreach ((array) $where["where"] as $key => $val) {
|
||||||
foreach ((array) $where[$type] as $key => $val) {
|
$return[] = idf_escape($key) . (ereg('\\.', $val) ? " LIKE " . exact_value(addcslashes($val, "%_")) : " = " . exact_value($val)); // LIKE because of floats, but slow with ints //! enum and set
|
||||||
$key = bracket_escape($key, "back");
|
|
||||||
$return[] = (preg_match('~^[A-Z0-9_]+\\(`(?:[^`]|``)+`\\)$~', $key) ? $key : idf_escape($key)) . ($type == "null" ? " IS NULL" : (ereg('\\.', $val) ? " LIKE " . exact_value(addcslashes($val, "%_")) : " = " . exact_value($val))); // LIKE because of floats, but slow with ints //! enum and set, columns looking like functions
|
|
||||||
}
|
}
|
||||||
|
foreach ((array) $where["null"] as $key) {
|
||||||
|
$return[] = idf_escape($key) . " IS NULL";
|
||||||
}
|
}
|
||||||
return implode(" AND ", $return);
|
return implode(" AND ", $return);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue