' . $lang['sql_tablesofdb'] . ' `' . $databases['Name'][$dbid] . '` ' . $lang['sql_edit'] . ''; //////////////////////// DH //Primaerschluessel loeschen if (isset($_GET['killPrimaryKey'])) { $keys=getPrimaryKeys($databases['Name'][$dbid],$_GET['tablename']); //Zu loeschenden Schluessel aus dem Array entfernen $keyPos=array_search($_GET['killPrimaryKey'],$keys); if (!( false === $keyPos )) { unset($keys[$keyPos]); $res=setNewPrimaryKeys($databases['Name'][$dbid],$_GET['tablename'],$keys); if ($res) { echo ''; } else { echo ''; } } else { echo ''; } } //Primärschlüssel löschen ende //Neue Primärschlüssel setzen if (isset($_POST['setNewPrimaryKeys'])) { $fields=getAllFields($databases['Name'][$dbid],$_GET['tablename']); $newKeysArray=Array(); foreach ($fields as $index=>$field) { if (( isset($_POST["setNewPrimKey" . $index]) ) && ( $_POST["setNewPrimKey" . $index] != "" )) { $newKeysArray[]=$_POST["setNewPrimKey" . $index]; } } //doppelte Elemente entfernen $newKeysArray=array_unique($newKeysArray); $res=setNewPrimaryKeys($databases['Name'][$dbid],$_GET['tablename'],$newKeysArray); if ($res) { echo ''; } else { echo ''; } } //Neue Primärschlüssel setzen ende //////////////////////// DH ende if (isset($_GET['kill'])) { if ($_GET['anz'] == 1) echo '
' . $lang['sql_nofielddelete'] . '
'; else { $sql_alter="ALTER TABLE `" . $databases['Name'][$dbid] . "`.`" . $_GET['tablename'] . "` DROP COLUMN `" . $_GET['kill'] . "`"; MSD_DoSQL($sql_alter); echo '' . $lang['sql_fielddelete1'] . ' `' . $_GET['kill'] . '` ' . $lang['sql_deleted'] . '.
' . highlight_sql($out) . '' . $lang['sql_nodest_copy'] . '
'; } elseif (Table_Exists($databases['Name'][$dbid],$_POST['tablecopyname'])) { echo '' . $lang['sql_desttable_exists'] . '
'; } else { Table_Copy("`" . $databases['Name'][$dbid] . "`.`" . $table_edit_name . "`",$_POST['tablecopyname'],$_POST['copyatt']); echo '' . sprintf($lang['sql_scopy'],$table_edit_name,$_POST['tablecopyname']) . '.
' : sprintf($lang['sql_tcopy'],$table_edit_name,$_POST['tablecopyname']) . ''; echo highlight_sql($out) . '' . $lang['sql_tablenoname'] . '
'; } else { $sql_alter="CREATE TABLE `" . $databases['Name'][$dbid] . "`.`" . $_POST['newtablename'] . "` (`id` int(11) unsigned not null AUTO_INCREMENT PRIMARY KEY ) " . ( ( MSD_NEW_VERSION ) ? "ENGINE" : "TYPE" ) . "=MyISAM;"; MSD_DoSQL($sql_alter); echo SQLOutput($out,$lang['table'] . ' `' . $_POST['newtablename'] . '` ' . $lang['sql_created']); } } if (isset($_POST['t_edit_submit'])) { $sql_alter="ALTER TABLE `" . $databases['Name'][$dbid] . "`.`" . $_POST['table_edit_name'] . "` "; if ($_POST['t_edit_name'] == "") echo '' . $lang['sql_tblnameempty'] . '
'; elseif (MSD_NEW_VERSION && $_POST['t_edit_collate'] != "" && substr($_POST['t_edit_collate'],0,strlen($_POST['t_edit_charset'])) != $_POST['t_edit_charset']) echo '' . $lang['sql_collatenotmatch'] . '
'; else { if ($_POST['table_edit_name'] != $_POST['t_edit_name']) { $sql_alter.="RENAME TO `" . $_POST['t_edit_name'] . "`, "; $table_edit_name=$_POST['t_edit_name']; } else $table_edit_name=$_POST['table_edit_name']; if ($_POST['t_edit_engine'] != "") $sql_alter.=( ( MSD_NEW_VERSION ) ? "ENGINE=" : "TYPE=" ) . $_POST['t_edit_engine'] . ", "; if ($_POST['t_edit_rowformat'] != "") $sql_alter.="ROW_FORMAT=" . $_POST['t_edit_rowformat'] . ", "; if (MSD_NEW_VERSION && $_POST['t_edit_charset'] != "") $sql_alter.="DEFAULT CHARSET=" . $_POST['t_edit_charset'] . ", "; if (MSD_NEW_VERSION && $_POST['t_edit_collate'] != "") $sql_alter.="COLLATE " . $_POST['t_edit_collate'] . ", "; $sql_alter.="COMMENT='" . $_POST['t_edit_comment'] . "' "; MSD_DoSQL($sql_alter); echo SQLOutput($out,$lang['table'] . ' `' . $_POST['table_edit_name'] . '` ' . $lang['sql_changed']); } } else { if (!isset($table_edit_name) || $table_edit_name == "") { $table_edit_name=( isset($_GET['tablename']) ) ? $_GET['tablename'] : ""; if (isset($_POST['tableselect'])) $table_edit_name=$_POST['tableselect']; if (isset($_POST['newtablesubmit'])) $table_edit_name=$_POST['newtablename']; } } if (isset($_POST['newfield_posted'])) { //build sql for alter if ($_POST['f_name'] == '') { echo '' . $lang['sql_fieldnamenotvalid'] . ' (' . $_POST['f_name'] . ')
'; $field_fehler=1; } else { //alter Key $oldkeys[0]=$_POST['f_primary']; $oldkeys[1]=$_POST['f_unique']; $oldkeys[2]=$_POST['f_index']; $oldkeys[3]=$_POST['f_fulltext']; //neuer Key $newkeys[0]=( $_POST['f_index_new'] == "primary" ) ? 1 : 0; $newkeys[1]=( $_POST['f_index_new'] == "unique" ) ? 1 : 0; $newkeys[2]=( $_POST['f_index_new'] == "index" ) ? 1 : 0; $newkeys[3]=( isset($_POST['f_indexfull']) ) ? 1 : 0; $add_sql.=ChangeKeys($oldkeys,$newkeys,$_POST['f_name'],$_POST['f_size'],"drop_only"); $sql_stamm="ALTER TABLE `" . $databases['Name'][$dbid] . "`.`$table_edit_name` "; $sql_alter=$sql_stamm . ( ( isset($_POST['editfield']) ) ? "CHANGE COLUMN `" . $_POST['fieldname'] . "` `" . $_POST['f_name'] . "` " : "ADD COLUMN `" . $_POST['f_name'] . "` " ); $sql_alter.=$_POST['f_type']; $wl=stripslashes($_POST['f_size']); if ($wl != "" && !preg_match('@^(DATE|DATETIME|TIME|TINYBLOB|TINYTEXT|BLOB|TEXT|MEDIUMBLOB|MEDIUMTEXT|LONGBLOB|LONGTEXT)$@i',$_POST['f_type'])) { $sql_alter.="($wl) "; } elseif ($_POST['f_size'] == "" && preg_match('@^(VARCHAR)$@i',$_POST['f_type'])) { $sql_alter.="(" . "255" . ") "; } else $sql_alter.=" "; $sql_alter.=$_POST['f_attribut'] . " "; $sql_alter.=$_POST['f_null'] . " "; $sql_alter.=( $_POST['f_default'] != "" ) ? "DEFAULT '" . addslashes($_POST['f_default']) . "' " : ""; if (MSD_NEW_VERSION && $_POST['f_collate'] != "") $sql_alter.="COLLATE " . $_POST['f_collate'] . " "; if ($_POST['f_extra'] == "AUTO_INCREMENT") { $sql_alter.=" AUTO_INCREMENT "; } if ($newkeys[0] == 1) $sql_alter.=" PRIMARY KEY "; if ($newkeys[1] == 1) $sql_alter.=" UNIQUE INDEX "; if ($newkeys[2] == 1) $sql_alter.=" INDEX "; if ($newkeys[3] == 1) $sql_alter.=" FULLTEXT INDEX "; $sql_alter.=$_POST['f_position'] . " ;"; if ($add_sql != "") { $add_sql=$sql_stamm . $add_sql; $sql_alter="$sql_alter;\n$add_sql;\n"; } MSD_DoSQL($sql_alter); echo '`' . $_POST['f_name'] . '` ' . ( ( isset($_POST['editfield']) ) ? $lang['sql_changed'] : $lang['sql_created'] ) . '.
'; echo highlight_sql($out) . ''; if ($table_edit_name != "") { $sqlf="SHOW FULL FIELDS FROM `" . $databases['Name'][$dbid] . "`.`$table_edit_name` ;"; $res=MSD_query($sqlf); $anz_fields=mysql_num_rows($res); $fields_infos=FillFieldinfos($databases['Name'][$dbid],$table_edit_name); if (MSD_NEW_VERSION) $t_engine=( isset($fields_infos['_tableinfo_']['ENGINE']) ) ? $fields_infos['_tableinfo_']['ENGINE'] : "MyISAM"; else $t_engine=( isset($fields_infos['_tableinfo_']['TYPE']) ) ? $fields_infos['_tableinfo_']['TYPE'] : "MyISAM"; $t_charset=( isset($fields_infos['_tableinfo_']['DEFAULT CHARSET']) ) ? $fields_infos['_tableinfo_']['DEFAULT CHARSET'] : ""; $t_collation=isset($row['Collation']) ? $row['Collation'] : ""; //(isset($fields_infos['_tableinfo_']['COLLATE'])) ? $fields_infos['_tableinfo_']['COLLATE'] : ""; $t_comment=( isset($fields_infos['_tableinfo_']['COMMENT']) ) ? substr($fields_infos['_tableinfo_']['COMMENT'],1,strlen($fields_infos['_tableinfo_']['COMMENT']) - 2) : ""; $t_rowformat=( isset($fields_infos['_tableinfo_']['ROW_FORMAT']) ) ? $fields_infos['_tableinfo_']['ROW_FORMAT'] : ""; echo "
'; $field_fehler=0; echo '
'; } else echo '' . $lang['sql_insertnewfield'] . '
Index-Name | ' . ( ( MSD_NEW_VERSION ) ? 'Typ | ' : '' ) . '' . $lang['sql_allowdups'] . ' | ' . $lang['sql_cardinality'] . ' | Spalten | ||
---|---|---|---|---|---|---|
' . $lang['sql_tablenoindexes'] . ' | ||||||
'; echo ' '; ///// DH //erstmal nur fuer Primaerschluessel if ($row['Key_name'] == "PRIMARY") echo ''; echo ''; if ($row['Key_name'] == "PRIMARY") echo ''; ///// DH ende echo ' | '; echo '' . ( $i + 1 ) . '. | '; echo '' . $row['Key_name'] . ' | '; if (MSD_NEW_VERSION) echo '' . $row['Index_type'] . ' | '; echo '' . ( ( $row['Non_unique'] == 1 ) ? $lang['yes'] : $lang['no'] ) . ' | '; echo '' . ( ( $row['Cardinality'] >= 0 ) ? $row['Cardinality'] : "keine" ) . ' | '; echo '' . $row['Column_name'] . ' | '; echo '