sql2000 mysql5_从SQL Server 2000向MYSQL5.1导入数据

从SQL Server 2000向MYSQL5.1导入数据1、在Sql Server 2000中选中右击所要导出的数据库选择-所有任务-导出数据2、在弹出的对话框中选择下一步,在DTS 导入/导出向导中选择下一步3、在接下来的对话框中将目的改为文本文件,在文件文件名的对话框中找到所要导

从SQL Server 2000向MYSQL5.1导入数据

1、在Sql Server 2000中选中右击所要导出的数据库选择->所有任务->导出数据

2、在弹出的对话框中选择“下一步”,在DTS 导入/导出向导中选择“下一步”

3、在接下来的对话框中将目的改为“文本文件”,在文件文件名的对话框中找到所要导出的文件的名称,单击“下一步”。

4、在弹出的对话框中选择“用一条查询指定要传输的数据”,单击“下一步”。

5、在弹出的对话框中的查询语句框中输入相关查询语句。(例如select id,name,pwd from user)单击“分析”,如果弹出“SQL语句有效”则单击下一步。

6、在选择目标文件格式的对话框中的列分隔符中选择对应的分隔符(一般为逗号),文本限定符(一般为双引号{"}),如果有需要可以单击“转换格式”(我选择了,把所有字段的类型都改为varchar,这样只是为了方便在PHP中设定delimiter)  www.2cto.com

7、下一步->下一步->完成

8、如果弹出“成功地将1个表从Microsoft SQL Server复制到了Flat File。”则从SQL Server 2000导出成功了!

PHP的版本必须在5.0以上

$i = new mysqli ( 'localhost', 'root', '880116', 'Douglas' );

//这个地方必须设置为utf8而不是utf-8或者UTF-8,如果不是utf8则在数据内将会出现乱码

$mysqli->query("set names utf8");

if ($mysqli) {  www.2cto.com

$fh = fopen ( 'user.txt', 'r' );

$delimiter=',';

$enclosure='"';

while ( $line = fgetcsv ( $fh, 120000,$delimiter ,$enclosure) ) {

$id= $line [0];

$name= $line [1];

//因为SQL Server 2000导出的文本文件是以GB2312所以必须转换成和MYSQL中的表一样的Character Set,当然这个地方跟据需要,如果表的Character set是GBK则这个地方的UTF-8必须为GBK

$name=iconv('GB2312', 'UTF-8', $name);

$pwd= $line [2];

$query="insert into user(id,name,pwd) values('$id','$name','$pwd')";

$result=$mysqli->query($query);

}

fclose($fh);

mysqli_close();

} else {

echo "You can't connect!";

}

?>

作者 DouglasLau

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值