目录
今天上午做表格数据的检查与修改,涉及到PHP对MS SQL Server数据表的查询、统计与修改。
平时我也不记编码和命令,到了用的时候都再查手册,这往往很耗费时间,现在写博客有个好处就是把有用的代码记录下来,下次就直接复制,修改一下就直接用了。
这样可以省去很多时间。
下面是检索三个表来更新数据,即主表有信息不全,检索两个其他的信息表进行补录。
<?php require \'pspLinkConfig.php\';//加载数据库 $sql = \"select C24 from cwkA2012 where C18=1\"; $res1 = $EisConn->prepare($sql);//准备查询语句 $res1->execute();//执行 $count=0; while( $result=$res1->fetch(PDO::FETCH_ASSOC) ){ $count=$count+1; $ZCBM=$result[\'C24\'];//资产编码 //获取资产状态 $sql = \"select C20 from AssetsA2012 where C02=\'$ZCBM\'\"; $res2 = $EisConn->query($sql); $rows2=$res2->fetchAll(PDO::FETCH_ASSOC); if($rows2){ $ZCZT=$rows2[0][\'C20\'];//获取资产状态 }else{ $ZCZT=\'正常★\';//获取资产状态 } //判断是否有保管信息 $sql = \"select count(*) from InUser2012 where C01=\'$ZCBM\'\"; $result3 =$EisConn->query($sql); $rows3 = $result3->fetch(); $rowCount = $rows3[0]; if ( $rowCount ) { //获取保管人、保管单位、保管地点 $sql = \"select C03,C04,C06 from InUser2012 where C01=\'$ZCBM\'\"; $res4 = $EisConn->query($sql); $rows=$res4->fetchAll(PDO::FETCH_ASSOC); $BGR=$rows[0][\'C03\'];//获取保管人 $BGDW=$rows[0][\'C04\'];//获取保管单位 $BGDD=$rows[0][\'C06\'];//获取保管地点 //更新财务资产表 $ZCBM=trim($ZCBM); $Set=\" C25=\'$BGR\',C26=\'$BGDD\',C27=\'$ZCZT\' \"; $sql = \"UPDATE cwkA2012 SET $Set WHERE C24=\'$ZCBM\' and C18=1\"; $result = $EisConn->exec($sql); try { if ( $result>0 ) { echo $ZCBM.\'===OK\'.\'<br>\'; }else{ echo \'资产编号:\'.$ZCBM.\' 更新记录失败!\'.\'<br>\'; } }catch (PDOException $e){ echo \'错误信息:\'.$e.getMessage(); } } } echo \'完成!\'; ?>
检索两个表进行数据检查与修改:
<?php require \'DawnEisLinkConfig.php\';//加载数据库 $sql = \"select C24,C23,C25,C26 from cwkAssets where C18=1\"; $res1 = $EisConn->prepare($sql);//准备查询语句 $res1->execute();//执行 $count=0; while( $result=$res1->fetch(PDO::FETCH_ASSOC) ){ $count=$count+1; $ZCBM=$result[\'C24\'];//资产编码 $newUNit=$result[\'C24\'];//新单位名称 $BGR=$result[\'C25\'];//保管人 $BGDD=$result[\'C26\'];//保管地点 //获取资产状态 $sql = \"select C20 from computerAssetsInfo where C02=\'$ZCBM\'\"; $res2 = $EisConn->query($sql); $rows2=$res2->fetchAll(PDO::FETCH_ASSOC); if($rows2){ $ZCZT=$rows2[0][\'C20\'];//获取资产状态 }else{ $ZCZT=\'正常★\';//获取资产状态 } if($BGR==\'\' || $BGR==null || $BGR==\"不详\" ){ $BGR=\"公用\"; } //判断是否有保管信息 $sql = \"select count(*) from computerInUserInfo where C01=\'$ZCBM\'\"; $result3 =$EisConn->query($sql); $rows3 = $result3->fetch(); $rowCount = $rows3[0]; //更新财务资产表 $Set=\" C25=\'$BGR\',C27=\'$ZCZT\' \"; $sql = \"UPDATE cwkAssets SET $Set WHERE C24=\'$ZCBM\' and C18=1\"; $result = $EisConn->exec($sql); try { if ( $result>0 ) { echo $ZCBM.\' OK\'.\'<br>\'; }else{ echo \'资产编号:\'.$ZCBM.\' 更新记录失败!\'.\'<br>\'; } }catch (PDOException $e){ echo \'错误信息:\'.$e.getMessage(); } } echo \'完成!\'; ?>
获取不同的值。
<?php require \'LinkConfig.php\';//加载数据库 $sql = \"select distinct C04 from AssetsInfo where C26=\'计算机\'\"; $res = $EisConn->prepare($sql);//准备查询语句 $res->execute();//执行 while( $result=$res->fetch(PDO::FETCH_ASSOC) ){ echo $result[\'C04\'].\'<br>\'; } ?>
真正开始学习PHP也三个多月了,对于PHP的脚本和命令还是不熟,也记不住,都是现拿现用,这样也方便了以后的使用。
© 版权声明
THE END
暂无评论内容