ホームページ >バックエンド開発 >PHPチュートリアル >質問がありますが、txt をデータベースにインポートするにはどうすればよいですか?

質問がありますが、txt をデータベースにインポートするにはどうすればよいですか?

WBOY
WBOYオリジナル
2016-06-23 14:14:49997ブラウズ

[i] すべての CSDN ユーザーとパスワードの txt を取得したとします。その中には、最初の列がユーザー名、2 番目の列がパスワード、3 番目の列が電子メール アドレスです。

次に、Tianya txt を取得します。ただし、最初の列はメール アドレス、2 列目はユーザー名、3 列目はパスワードです。
配置が一貫していないテキストが増えています。

ユニバーサルインポートプログラムを作成したいのですが、「ユーザー名-パスワード-電子メール」の方法に従ってデータベースの対応するフィールドに異なるtxtファイルを保存できるようにするにはどうすればよいですか。データベース、ありがとう!


ディスカッションへの返信(解決策)

このような大量のデータの場合は、mysql 一時テーブルを使用することをお勧めします。

LOAD DATA INFILE コマンドを使用すると、データを高速にインポートできます
ただし、データ ファイルのエンコーディングがcharacter_set_database と異なる場合は、行ごとにのみインポートできます

インポートする前に、ユーザー インタラクション ページで次のことを行う必要がありますインポートの順序を手動で確認します

LOAD DATA INFILE コマンドを使用して高速にデータをインポートできます
ただし、データファイルのエンコーディングがcharacter_set_databaseと異なる場合は、1行ずつインポートすることしかできません

インポートする前に、インポートの順序を手動で確認するには、ユーザー インタラクション ページが必要です

インポートする前に、インポートの順序を手動で確認するには、ユーザー インタラクション ページが必要です
あなたの言いたいことによると、ファイルのアップロードを選択すると、 、phpにファイルの最初の行を読み込ませます(通常、最初の行と次の形式は同じですが、長さが異なるだけです)、選択後にphpが自動的に読み取って一致させますか?

はい、テーブルのどのフィールドがデータのどの列に対応するかを明確に確認する必要があります

はい、テーブルのどのフィールドがデータのどの列に対応するか、明確に確認する必要があります

ありがとうございます 返信

PHP ループは機能するはずですが、どれだけ効率的かはわかりません。

これは非常に簡単で、データを取得するときとデータを保存するときの 2 番目の列がメールアドレスであるかどうかを判断します。はパスワードです。そうでない場合、最初の列はユーザ​​ー名、2 番目の列はパスワード、3 番目の列は電子メール アドレスになります。次に、それを必要な文字列に綴り、データベースに保存します。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。