补充一下:SQL报错的时候,把SQL复制下来,到PHPMYADMIN里就可以正常执行.

解决方案 »

  1.   

    还是不行.
    改成big5之后,中文简体都成乱码了.
    还是报错..data too long
      

  2.   

    附上代码:
    <?php
    $msdb = mssql_connect('127.0.0.1','sa','123456');
    mssql_select_db('vpc',$msdb);
    $mydb = mysql_connect('localhost','root','123456');
    mysql_select_db('bchat',$mydb);
    mysql_query("SET NAMES 'big5'",$mydb);
    $mssql = "select userid,password,privateemail,sex from vuserinfo";
    $msquery = mssql_query($mssql,$msdb);
    while($row = mssql_fetch_array($msquery)){
    $name = addslashes(stripslashes(str_replace("'","",trim($row['userid']))));
    $passwd = trim($row['password']);
    $email = addslashes(stripslashes(str_replace("'",'',trim($row['privateemail']))));
    $sex = $row['sex'] == 0 ? 3 : $row['sex'];
    $sql = "insert into user(name,passwd,email,sex) values('$name','$passwd','$email',$sex)";
    mysql_query($sql,$mydb) or die (mysql_error()."<br>".$sql."<br>".$name);
    }
    ?>
      

  3.   

    UTF8
    set names utf8;php文件本身utf8
    html meta段声明charset=utf-8
    mysql 存储类型utf8
    mysql 连接声明utf8
      

  4.   

    mysql_query("set names 'utf8'");也写了
    mysql_query("set names utf8");不需要''
      

  5.   

    楼上的说法好~楼主要执行下楼主是不是使用的sql文件进行的导入导出呢?还是使用的php程序呢?这个很重要的说……
      

  6.   

    算了..不整了.
    总共二十多万条记录.有三十几条没导进去..
    最后还是用的gbk..
    那三十条不要了.
    哈哈..结帖