问题阐述
在某些特殊的时候,可能要将MySQL 数据库转换为SQL Server 2000 数据库,这时问题也就随之而来。例如,在MySQL 数据库中,创建的字段使用varchar 类型,该类型的数据可以进行聚合运算,其返回的值是string 类型的数据。但是,在SQL Server 数据库中,创建的字段如果是varchar 类型,则不能够进行聚合运算。另外,在SQL Server 数据库中,int 型的数据将不能应用到for 循环语句中,这些都是由于数据库的转换而带来的问题。
专家解答
针对MySQL 和Server 2000 数据库转换中的问题,其基本的策略就是实现对数据类型的转换,经过数据类型的转换就可以完成相应的操作了。
例如,在SQL Server 数据库中创建的varchar 类型数据,不能够进行聚合运算,但可以将其转换为int 型进行计算。由于int 型的数据不能应用到for 循环语句中,所以必须将int 型的数据转换为string 类型,才能应用到for 循环语句中。
应用示例
在读取SQL Server 数据库中的数据时,返回的访问记录结果集为int 类型,因为在SQL Server数据库中int 类型的数据不能应用到for 循环语句中,所以需要将该类型的数据转换为string 类型之后,才能应用到for 循环语句中,然后才能完成网站访问量的统计输出,其关键代码如下:
//以图形的形式输出数据库中的记录数
$query="select sum(counts) as ll from tb_count10 "; //查询数据库中总的访问量
$results=mssql_query($query,$conn);
$fwl=mssql_result($results,0,'ll');
echo "----------";
//对补位数字0 的处理
$len=strlen($fwl); //获取字符串的长度
$str=str_repeat("0",6-$len); //获取6-$len 个数字0
for($a=0;$a
$results=$str[$a];
$results='