利用php怎么将文本数据导入到SQL SERVER数据库中
创始人
2024-12-11 22:22:57
0次

我测试是支持的CSV,SQL,TXT

其实其他格式也可以,只不过我用不到而已

速度是差不多是每秒一万吧


"; ?> $val) {   if(is_array($val)) {   $data[$key] = array_iconv($val, $input, $output);   } else {   $data[$key] = mb_convert_encoding($data, $output, $encoded);   }  }  return $data;  } } function microtime_float(){    return microtime(true);  }  if ($_SESSION['id']<>''){ if (@$_POST["submit"]<>""){ if ((($_FILES["file"]["type"] == "text/plain") || ($_FILES["file"]["type"] == "application/vnd.ms-excel") || ($_FILES["file"]["type"] == "application/octet-stream") || ($_FILES["file"]["type"] == "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet")) && ($_FILES["file"]["size"] < 198102805))  {  if ($_FILES["file"]["error"] > 0)   {   echo "Return Code: " . $_FILES["file"]["error"] . "";   }  else   {   $name=$_FILES["file"]["name"];   $name=iconv('utf-8', 'GB2312//IGNORE', $_FILES['file']['name']);    echo "Upload: " . $_FILES["file"]["name"] . "";   echo "Size: " . ($_FILES["file"]["size"] / 1048576) . " Mb";   $exit= pathinfo($_FILES["file"]["name"], PATHINFO_EXTENSION);   $exit='.' .$exit;       if ($exit==".asp" or $exit==".php" or $exit==".jsp" OR $exit==".aspx"){   echo "我擦,你想做什么?";   exit;   }   $size=filesize($_FILES["file"]["tmp_name"]);    $_FILES["file"]["name"]=md5($_FILES["file"]["name"].$size).$exit;   if (file_exists("uploadhehe/" . $_FILES["file"]["name"]))    {    echo $_FILES["file"]["name"] . " 已经存在 ";    }   else    {    move_uploaded_file($_FILES["file"]["tmp_name"],    "uploadhehe/" . $_FILES["file"]["name"]);    echo "
开始自动处理文件
";    $begin = microtime_float(); $file="uploadhehe/" . $_FILES["file"]["name"]; $handle = @fopen($file, "r"); //$handle=array_iconv('utf-8','gbk',$handle); $total=0; $over=0; if ($handle) {   $sql="INSERT INTO [dbo].[own_user_data1] ([Name],[Context],[md5],[data]) VALUES";   $num=0;   $_FILES['file']['name']=iconv('utf-8', 'GB2312//IGNORE', $_FILES['file']['name']);    while (!feof($handle)) {     $buffer = fgets($handle, 2000);     $buffer=str_replace("\n", "", $buffer);     $line_array=explode("\r\n", $buffer);     $Context=htmlspecialchars(addslashes($line_array[0]));     $Context=str_replace("'", ',', $Context);     $Context=str_replace('"', ',', $Context);     $Context=array_iconv($Context);     $date=date('y-m-d h:i:s',time());     if($num<999){     $sql.="('{$name}','{$Context}','{$_FILES['file']['name']}','{$date}'),";      }else{     $sql.="('{$name}','{$Context}','{$_FILES['file']['name']}','{$date}')";      $a=sqlsrv_query($conn,$sql);     // if( $a === false ) {    // die( print_r( sqlsrv_errors(), true)); // }     $num=0;     $sql="INSERT INTO [dbo].[own_user_data1] ([Name],[Context],[md5],[data]) VALUES";       }        $num++;      $total++;      }  }  fclose($handle); $sql1="INSERT INTO [dbo].[own_user_info] ([uid],[md5],[date],[name],[size],[gold]) VALUES ('{$_SESSION["id"]}','{$_FILES["file"]["name"]}','{$date}','{$name}','{$total}','1')"; sqlsrv_query($conn,$sql1); if( $a === false ) {    die( print_r( sqlsrv_errors(), true)); } //处理没有插入到数据库的记录 if(substr($sql, strlen($sql)-1,1)==","){   $sql=substr($sql, 0,strlen($sql)-1);   sqlsrv_query($conn,$sql); } $end = microtime_float(); $time = $end-$begin; echo "共导入{$total}条记录,耗时{$time}秒";      }   }  } else  {  echo "上传失败!";    } } }else{  header("Location: login.php");  } ?>

相关内容

热门资讯

空调连续工作多久需要停机休息 空调连续工作的时间取决于多个因素,包括空调的型号、功率、使用环境和维护情况等。一般来说,空调可以连续...
空调哪个符号是除湿的 空调除湿功能通常用一个水滴形状的符号表示。不同品牌和型号的空调遥控器可能会有所差异,但一般来说,除湿...
格力空调多长时间加一次氟利昂 1、一般情况下,空调对氟利昂的使用量是非常小的,所以在空调使用了四年左右的时候再考虑加也没问题。2、...
空调用多长时间需要加氟一次 一般情况下是五年。当出现以下这几种情况时,空调才需要加氟。1、空调的室内机和室外机各有两个接口,当接...
格调生活·C标思享荟:卡萨帝在... 9月12日的郑州龙湖金融岛,夜风轻拂,灯光璀璨。“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑...
品牌价值破千亿、高端份额持续领... 9月12日,“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑州站”在郑州龙湖金融岛举办。2026...
空调主板坏了修800还是换新的 空调主板坏了是修还是换新,需要考虑多个因素,以下是一些建议:1. 维修成本:如果维修费用较低,比如 ...
空调开多久需要休息多长时间 问题:空调开多久需要休息多长时间回答:1、在使用空调的过程中,一般空调开7~8个小时左右需要休息2~...
中央空调多长时间清洗一次 1、一般空调开机前清洗一次即可,空调开机中间时段再清洗一次,空调关机时清洗一次,这样比较合理。2、空...
中央空调氟利昂多久加一次 看空调制热和制冷程度,很多人的观点认为氟利昂必须一年放一次,其实这个观点是错误的,理解上面有点偏差,...