6

私は MySQL の初心者で、webapp の中心となるコードのチャンクを仕上げています。このコードは、FileMaker によって生成およびクリーンアップされた CSV ファイルを (ローカルに) インポートし、そのままにします。

これが近いうちに本番環境に移行することを考えると (そしておそらく 500 MB 未満のデータベースになる可能性があります)、今後の問題を回避したり、警告を受けたりするために実行できる、より優れたエラー チェック/キャッチがあるかどうかを知りたいです。私のサーバー設定。一時ログなどについて読みましたが、MySQL の管理はまだ十分ではありません。

非常に基本的なコードは次のとおりです。

$m = mysql_connect('localhost', 'mytable', 'mypassword');
$db = 'mydb';
mysql_select_db($db) or die("Import Error - Couldn't select database: " . mysql_error());

$sql = 'load data local infile "inventory.csv"
        into table ibl_account_details_temp fields terminated by ","
        optionally enclosed by "\""
        lines terminated by "\r"
        (store_id, SKU, account, item_number, brand, description, size, category, price, qty, fees)
        ';

echo mysql_query($sql) or die(myqsl_error());

PS EDIT:このインポート方法がSQLインジェクションに対してオープンであるかどうかも知りたいですか?

4

1 に答える 1

4

残念ながら、ロードデータファイルでのエラー処理は非常に貧弱です。私はほぼ毎日それを使用しており、ある種の一時テーブルにインポートし、PHPとMySQLの組み合わせを使用してインポートされたものを検証するのは簡単なルーチンになっています。これは余分な作業であると主張することもできますが、「エラー」が何であるかを完全に制御できるという利点があります。簡単に言えば、私はそれを使用して生データを可能な限り効率的に配置し、PHPスクリプトでエラーチェックと検証のルールを構築します。

于 2012-05-18T02:42:02.967 に答える