PHP操作SQL Server数据库实现表的改查与统计

目录

    今天上午做表格数据的检查与修改,涉及到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
    喜欢就支持一下吧
    点赞0 分享
    评论 抢沙发

    请登录后发表评论

      暂无评论内容