PHP は txt ファイルを読み取って SQL を形成し、それをデータベース コードに挿入します (Zjmainstay からのオリジナル)
/**
* $splitChar フィールド区切り文字
* $file データ ファイル ファイル名
* $table データベース テーブル名
* $conn データベース接続
* $fields データに対応する列名
* $insertType 挿入操作タイプ (INSERT、REPLACE を含む)
*/
コードをコピー コードは次のとおりです:
/**
* $splitChar フィールド区切り文字
* $file データ ファイル ファイル名
* $table データベース テーブル名
* $conn データベース接続
* $fields データに対応する列名
* $insertType 挿入操作タイプ (INSERT、REPLACE を含む)
*/
functionloadTxtDataIntoDatabase($splitChar,$file,$table,$conn,$fields=array(),$insertType='INSERT'){
if(empty($fields) )) $ head = "{$insertType} INTO `{$table}` VALUES('";
else $head = "{$insertType} INTO `{$table}`(`".implode('`, `', $fields)."`) VALUES('"; //データヘッダ
$end = "')"
$sqldata = トリム(file_get_contents($file)); preg_replace(' /s*/i','',$splitChar) == '') {
$splitChar = '/(w )(s )/i';
$replace = "$1'; '";
$specialFunc = 'preg_replace';
}else {
$splitChar = $splitChar;
$replace = "','";
$specialFunc = 'str_replace';
}
//データ本体の処理では、2 つの順序を入れ替えることはできません。そうしないと、スペースまたはタブ区切り文字を使用するとエラーが発生します。
$sqldata = preg_replace('/(s*)(n )(s*)/i',' '),('',$sqldata); //改行を置換
$sqldata = $specialFunc($splitChar,$replace,$sqldata); //区切り文字を置換>$query = $head.$sqldata .$end; //データのスプライシング
if(mysql_query($query,$conn)) return array(true);
else {
return array(false, mysql_error($conn),mysql_errno($ conn));
}
}
//呼び出し例 1
require 'db.php'; /垂直バー
$file = 'sqldata1.txt';
$fields = array('id','parentid','name'); result = loadTxtDataIntoDatabase($splitChar,$file ,$table,$conn,$fields);
if (array_shift($result)){
echo '成功!
'; }else {
echo '失敗しました !--エラー:'.array_shift($result).'
';
}
/*sqlda ta1.txt
|0| A
|1|B
|1|C
|2|D
-- cengji
CREATE TABLE `cengji` (
`id` int(11) NOT NULL AUTO_INCREMENT 、
`parentid` int( 11) NOT NULL、
`name` varchar(255) DEFAULT NULL、
PRIMARY KEY (`id`)、
UNIQUE KEY `parentid_name_unique` (`parentid` ,`name`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=1602 DEFAULT CHARSET=utf8
*/
//呼び出し例 2
require 'db.php';
$splitChar = ' '; //space
$file = 'sqldata2.txt';
$fields = array('id','make','model','year');車';
$result =loadTxtDataIntoDatabase($splitChar,$file,$table,$conn,$fields);
if (array_shift($result)){
echo '成功!
';
}else {
echo '失敗しました!--エラー:'.array_shift($result).'
';
}
/* sqldata2.txt
アストン DB19 2009
アストン DB29 2009
アストン DB39 2009
-- 車
CREATE TABLE `cars` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`make` varchar(16) NOT NULL 、
`model` varchar(16) DEFAULT NULL、
`year` varchar(16) DEFAULT NULL、
主キー (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=14 DEFAULT CHARSET= utf8
*/
//呼び出し例 3
require 'db.php';
$splitChar = ' '; $file = 'sqldata3.txt';
$fields = array('id','make','model','year');
$table = 'cars'; 'REPLACE';
$result =loadTxtDataIntoDatabase ($splitChar,$file,$table,$conn,$fields,$insertType);
if (array_shift($result)){
echo '成功!
';
}else {
echo '失敗しました!--エラー:'.array_shift($result).'
}
/ * sqldata3.txt
Aston DB19 2009
Aston DB29 2009
Aston DB39 2009
*/
//呼び出し例 3
require 'db.php'; = ' '; //Tab
$ file = 'sqldata3.txt';
$fields = array('id','value'); //テーブルは次のようになります。存在しません
$result =loadTxtDataIntoDatabase($splitChar ,$file,$table,$conn,$fields);
if (array_shift($result)){
echo 'Success!
}else {
echo '失敗しました!--エラー:'.array_shift($result).'
'
}
//添付ファイル: db. php
/* //この行をコメント化します
?>
static $connect = null
static $table = 'jilian'; (!isset($connect)) {
$connect = mysql_connect("localhost","root","");
if(!$connect) {
$connect = mysql_connect("localhost") ,"Zjmainstay","");
}
if(!$connect) {
die('データベースに接続できません。/test/db.php による致命的なエラー処理'); >}
mysql_select_db("test", $connect);
mysql_query("SET NAMES utf8",$connect);
$conn = &$connect;
}
?>
//*/
データテーブル構造
コードをコピー
コードは次のとおりです:
--データテーブル構造:
-- 100000_insert,1000000_insert
CREATE TABLE `100000_insert` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`parentid` int (11) NOT NULL、
`name` varchar(255) DEFAULT NULL、
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8
100000 (100,000 )行挿入: Insert 100000_line_data use 2.5534288883209 秒
1000000 (100万) 行挿入: Insert 1000000_line_data use 19.677318811417 秒
//考えられるエラー: MySQL サーバーが消えました
//解決策: ini/my を変更します。 .cnf max_allowed_packet=20M
作成者: Zjmainstay

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

Dreamweaver Mac版
ビジュアル Web 開発ツール

SublimeText3 Linux 新バージョン
SublimeText3 Linux 最新バージョン

SecLists
SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

SublimeText3 中国語版
中国語版、とても使いやすい
