Update database.php

This commit is contained in:
Namhyeon Go 2019-12-30 17:13:07 +09:00 committed by GitHub
parent 7eddd7eccb
commit 7ff38c9d1a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -744,22 +744,30 @@ if(!check_function_exists("get_bind_to_sql_create")) {
// table creation // table creation
if(!check_function_exists("exec_db_table_create")) { if(!check_function_exists("exec_db_table_create")) {
function exec_db_table_create($schemes, $tablename, $options=array()) { function exec_db_table_create($schemes, $tablename, $options=array()) {
$_tablename = false;
$_prefix = get_value_in_array("prefix", $options, ""); $_prefix = get_value_in_array("prefix", $options, "");
$_suffix = get_value_in_array("suffix", $options, ""); $_suffix = get_value_in_array("suffix", $options, "");
$_tablename = sprintf("%s%s%s", $_prefix, $tablename, $_suffix);
$setindex = get_value_in_array("setindex", $options, false); $setindex = get_value_in_array("setindex", $options, false);
// check if exists table
$sql = sprintf("describe %s", $_tablename);
if(!exec_db_query($sql)) {
return false;
}
// create table
$sql = get_bind_to_sql_create($schemes, array( $sql = get_bind_to_sql_create($schemes, array(
"tablename" => $tablename "tablename" => $_tablename
)); ));
$result = exec_db_query($sql); if(!exec_db_query($sql)) {
if(!!$result) { return false;
} else {
// create index
foreach($setindex as $k=>$v) { foreach($setindex as $k=>$v) {
$sql = sprintf("create index %s on %s (%s)", $k, $tablename, implode(", ", $v)); $sql = sprintf("create index %s on %s (%s)", $k, $tablename, implode(", ", $v));
exec_db_query($sql); exec_db_query($sql);
} }
$_tablename = sprintf("%s%s%s", $_prefix, $tablename, $_suffix);
} }
return $_tablename; return $_tablename;