PHP は SQL へのテキスト データのインポートを実装します SERVER_PHP チュートリアル

WBOY
リリース: 2016-07-13 09:53:54
オリジナル
927 人が閲覧しました

phpはSQL SERVERへのテキストデータのインポートを実装します

phpがmysqlにテキストファイルをインポートするのをよく見かけますが、sqlserverにインポートする場合、どのように操作すればよいでしょうか?私の操作方法を共有しましょう。かなり良いので、ここにいる人にお勧めします。

CSV、SQL、TXTをサポートしていることをテストしました

実際には他の形式も利用可能ですが、使用できません

その速度は毎秒ほぼ10,000です

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92

93

94

95

96

97

98

99

100

101

102

103

104

105

106

107

108

109

110

111

112

113

114

115

116

117

118

119

120

121

122

123

124

125

126

set_time_limit(0);

ignore_user_abort(true);

include('sgk.php');

エコー「

」;

?>

関数 array_iconv($data,$output = 'GBK') {

$encode_arr = array('UTF-8','ASCII','GBK','GB2312','BIG5','JIS','eucjp-win','sjis-win','EUC-JP') ;

$encoded = mb_detect_encoding($data, $encode_arr);//エンコーディングを自動的に決定します

if (!is_array($data)) {

return mb_convert_encoding($data, $output, $encoded);

}

その他 {

foreach ($data as $key=>$val) {

if(is_array($val)) {

$data[$key] = array_iconv($val, $input, $output);

} 他 {

$data[$key] = mb_convert_encoding($data, $output, $encoded);

}

}

$data を返す;

}

}

関数 microtime_float(){

マイクロタイムを返す(true);

}

if ($_SESSION['id']<>''){

if (@$_POST["送信"]<>""){

if ((($_FILES["ファイル"]["タイプ"] == "テキスト/プレーン")

|| ($_FILES["ファイル"]["タイプ"] == "アプリケーション/vnd.ms-excel") || ($_FILES["ファイル"]["タイプ"] == "アプリケーション/オクテットストリーム")

|| ($_FILES["ファイル"]["タイプ"] == "アプリケーション/vnd.openxmlformats-officedocument.spreadsheetml.sheet"))

&& ($_FILES["ファイル"]["サイズ"]

{

if ($_FILES["ファイル"]["エラー"] > 0)

{

エコー「リターンコード: 」。 $_FILES["ファイル"]["エラー"] 。 "
";

}

その他

{

$name=$_FILES["ファイル"]["名前"];

$name=iconv('utf-8', 'GB2312//IGNORE', $_FILES['file']['name']);

「アップロード:」をエコーし​​ます。 $_FILES["ファイル"]["名前"] 。 "
";

「サイズ:」をエコーし​​ます。 ($_FILES["ファイル"]["サイズ"] / 1048576) 。 「MB
」;

$exit= pathinfo($_FILES["ファイル"]["名前"], PATHINFO_EXTENSION);

$exit='.' .$終了;

if ($exit==".asp" または $exit==".php" または $exit==".jsp" OR $exit==".aspx"){

エコー「我擦、你想做什么?」;

終了;

}

$size=filesize($_FILES["file"]["tmp_name"]);

$_FILES["ファイル"]["名前"]=md5($_FILES["ファイル"]["名前"].$size).$exit;

if (file_exists("uploadhehe/" . $_FILES["file"]["name"]))

{

echo $_FILES["ファイル"]["名前"] 。 " 已经存在 ";

}

その他

{

move_uploaded_file($_FILES["file"]["tmp_name"],

「アップロードへへ/」 . $_FILES["ファイル"]["名前"]);

echo "
开開始自動处処理文件
";

$begin = microtime_float();

$file="アップロードヘヘ/" . $_FILES["ファイル"]["名前"];

$handle = @fopen($file, "r");

//$handle=array_iconv('utf-8','gbk',$handle);

$合計=0;

$over=0;

if ($handle) {

$sql="[dbo].[own_user_data1] ([名前],[コンテキスト],[md5],[データ]) 値に挿入";

$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("rn", $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

$sql.="('{$name}','{$Context}','{$_FILES['file']['name']}','{$date}'),";

}その他{

$sql.="('{$name}','{$Context}','{$_FILES['file']['name']}','{$date}')";

$a=sqlsrv_query($conn,$sql);

// if( $a === false ) {

// die( print_r( sqlsrv_errors(), true));

//}

$num=0;

$sql="[dbo].[own_user_data1] ([名前],[コンテキスト],[md5],[データ]) 値に挿入";

}

$num++;

$合計++;

}

}

fclose($handle);

$sql1="INSERT INTO [dbo].[own_user_info] ([uid],[md5],[date],[name],[size],[gold]) VALUES ('{$_SESSION["id"] }','{$_FILES["ファイル"]["名前"]}','{$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} 秒です。";

}

}

}

その他

{

echo "アップロードに失敗しました!";

}

}

}その他{

header("場所:login.php");

}

?>

以上がこの記事の全内容ですが、皆さんに気に入っていただければ幸いです。

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/1000067.html技術記事 PHP は SQL SERVER にテキスト データをインポートします。PHP はテキスト ファイルを mysql にインポートします。しかし、それを SQL Server にインポートする場合はどうすればよいでしょうか...
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート