0

私は、ユーザーが新しい連絡先グループを作成したり、既存の連絡先グループをExcelデータで更新したりできるプロジェクトに取り組んでいます。

新しい連絡先グループを作成することは問題ではありませんが、ドキュメントのコンテンツをデータベースに挿入することは私にとって大きな問題でした。

または、phpを使用してデータベースに簡単にインポートできる形式。

データは次のようになります。

|名前| |メール| |電話|

|私| | we@us.com | | 080234444 | 等

アドバイス、提案、指示をいただければ幸いです。

4

1 に答える 1

0

MySql は、コマンドを使用してファイルから CSV* データを簡単にインポートできますLOAD DATA INFILE。他の Excel データを解析する必要がある場合は、ファイルを読み取って手動でデータベースに入力するための追加のメソッドとロジックが必要になります。

詳細については、LOAD DATA INFILEを参照してください。

*基本的に任意の区切りテキスト (TSV など)

区切りデータには多くの制限/問題があることに注意してください。たとえば、csv テキストでエスケープされていないコンマを保持できないなどです。ソース ファイルが CSV ルールを順守し、尊重していることを確認してください。そうしないと、データが破損する可能性があります。

編集

データの例をいくつか提供したので、これ (または同様のもの) を試してみてください。

LOAD DATA INFILE `your filename` INTO `Table` 
Fields Terminated BY '|' 
Lines Terminated BY '\r\n'
IGNORE 1 LINES 
(@Col1, @Col2, @Col3, @Col4, @Col5)
SET Name = TRIM(@Col1), Email = TRIM(@Col3), Telephone = TRIM(@Col5)

ここでは、データを一時変数にロードし、テーブルに挿入します。ファイルはローカル マシン上に存在する必要があることに注意してください。

編集

この固定 SQL を試してください

LOAD DATA INFILE 'your filename' INTO TABLE `Table` 
Fields Terminated BY '|' 
Lines Terminated BY '\r\n'
IGNORE 1 LINES 
(@Col1, @Col2, @Col3, @Col4, @Col5)
SET Name = TRIM(@Col1), Email = TRIM(@Col3), Telephone = TRIM(@Col5)
于 2012-07-04T10:46:17.727 に答える