115 lines
3.5 KiB
PHP
Executable File
115 lines
3.5 KiB
PHP
Executable File
<?php
|
|
/*********************************************************
|
|
程序说明:
|
|
功能说明:本程序实现对数据表中的参数的初始化,根据参数类型的定义,
|
|
在参数表中填入缺省参数值和参数对象编号。
|
|
|
|
调用关系:调用: connectdb.inc,lib.inc
|
|
被调用:type_set_down.php
|
|
|
|
变量说明:由type_set_down.php 传来$sys_type
|
|
$device_table = OMC_device_Def;
|
|
|
|
返回值:无
|
|
|
|
作者:
|
|
|
|
修改注释:
|
|
NO.1
|
|
姓名 :
|
|
时间:
|
|
修改说明:
|
|
*********************************************************/
|
|
@set_time_limit(600);
|
|
require("../../inc/header.inc");
|
|
|
|
$DEBUG = 0;
|
|
$pubDb = 'OMC_PUB';
|
|
$sysTypeNo=$_REQUEST['sysTypeNo'];
|
|
$dataTypeNo=$_REQUEST['dataTypeNo'];
|
|
$keyId=$_REQUEST['keyId'];
|
|
|
|
//echo "sys=$sysTypeNo<br>";
|
|
|
|
|
|
function omcGetObjDb($sysTypeNo){
|
|
$dbName = 'OBJ_'.$sysTypeNo;
|
|
return($dbName);
|
|
}
|
|
$objDb=omcGetObjDb($sysTypeNo);
|
|
global $OMC_server;
|
|
$objDbConn=mysqli_connect($OMC_server[0]['host'],$OMC_server[0]['user'],$OMC_server[0]['password'], $objDb);
|
|
|
|
function omcGetObjTbl($tableType,$sysTypeNo,$sysNo=0,$subSysNo=0){
|
|
$dbName = 'OBJ_'.$sysTypeNo;
|
|
switch($tableType){
|
|
case 'paramConf':
|
|
$tableName = $dbName.'.paramConf';
|
|
break;
|
|
case 'param':
|
|
$tableName = $dbName.'.tmpSubscriberParam_'.$sysNo;
|
|
break;
|
|
default:
|
|
echo "<br><b>function omcGetObjTbl(): Unknown table Type:$tableType</b>";
|
|
exit();
|
|
}
|
|
return($tableName);
|
|
}
|
|
$sysSubsConfTable ='OMC_PUB.sysSubsConf';
|
|
$systemConfTable = 'OMC_PUB.sysConf';
|
|
|
|
$getConfSql="SELECT sysTypeName,dataTypeNo,indexFieldName,subsDataTable,tmpDataTable
|
|
FROM $sysSubsConfTable,$systemConfTable
|
|
WHERE $sysSubsConfTable.sysTypeNo='$sysTypeNo'
|
|
AND $systemConfTable.sysTypeNo='$sysTypeNo'
|
|
AND $sysSubsConfTable.dataTypeNo='$dataTypeNo'
|
|
";
|
|
if($DEBUG) echo "<br>getConfSql=$getConfSql";
|
|
$getConfResult=mysqli_query($pubConn,$getConfSql);
|
|
echo mysqli_error($pubConn);
|
|
$getConfRows=mysqli_fetch_array($getConfResult);
|
|
$sysTypeName =$getConfRows[sysTypeName];
|
|
$keyFieldName =$getConfRows[indexFieldName];
|
|
$srcDataTable =$getConfRows[subsDataTable];
|
|
$tmpDataTable =$getConfRows[tmpDataTable];
|
|
|
|
$srcDataConn = mysqli_connect($OMC_server[0]['host'],$OMC_server[0]['user'],$OMC_server[0]['password'], $sysTypeName."_DB");
|
|
|
|
|
|
//复制一个表并且增加一个字段:editFlag
|
|
$dropTmpTable="DROP TABLE $tmpDataTable";
|
|
if($DEBUG) echo "<br>dropTmpTable=$dropTmpTable";
|
|
$dropRes=mysqli_query($objDbConn,$dropTmpTable);
|
|
echo mysqli_error($objDbConn);
|
|
|
|
$getCreateSql="SHOW CREATE TABLE $srcDataTable";
|
|
if($DEBUG) echo "<br>getCreateSql=$getCreateSql";
|
|
$getCreateRes=@mysqli_query($srcDataConn,$getCreateSql);
|
|
$row = mysqli_fetch_array($getCreateRes);
|
|
echo mysqli_error($srcDataConn);
|
|
|
|
// echo "<pre>";
|
|
// echo print_r($row);
|
|
// echo "</pre>";
|
|
|
|
$srcNameArr=explode('.',$srcDataTable);
|
|
$srcTableName=$srcNameArr[1];
|
|
$tmpNameArr=explode('.',$tmpDataTable);
|
|
$tmpTableName=$tmpNameArr[1];
|
|
|
|
if($DEBUG) echo "<br>str_replace($srcTableName,$tmpTableName,$row[1])";
|
|
$createTmpSql=str_replace($srcTableName,$tmpTableName,$row[1]);
|
|
if($DEBUG) echo "<br>createTmpSql=$createTmpSql";
|
|
$createTmpRes=mysqli_query($objDbConn,$createTmpSql);
|
|
echo mysqli_error($pubConn);
|
|
|
|
$alterSql="ALTER TABLE $tmpDataTable ADD editFlag TINYINT not null FIRST";
|
|
if($DEBUG) echo "<br>alterSql=$alterSql";
|
|
$alterRes=mysqli_query($objDbConn,$alterSql);
|
|
echo mysqli_error($pubConn);
|
|
|
|
$alterSql="ALTER TABLE $tmpDataTable ADD INDEX (editFlag)";
|
|
if($DEBUG) echo "<br>alterSql=$alterSql";
|
|
$alterRes=mysqli_query($objDbConn,$alterSql);
|
|
echo mysqli_error($pubConn);
|
|
?>
|