Files
web.ems/wxc2_omc/sysDefine/subsMngDef/subsParamInit.php
agtuser 16a3fd1e1b init
2024-11-11 17:56:00 +08:00

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);
?>