6

我是一个 MySQL 新手,完成了我的 webapp 的核心代码。该代码会导入一个 CSV 文件(本地),该文件由 FileMaker 生成和清理并保留。

鉴于这将很快投入生产(并且可能是一个低于 500mb 的数据库),我很想知道是否有更好的错误检查/捕获我可以做以防止出现问题或被提醒我的服务器设置。我已经阅读了有关临时日志等的内容,而我的 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 编辑:我也很想知道这种导入方法是否对 SQL 注入开放?

4

1 回答 1

4

不幸的是,加载数据文件的错误处理非常糟糕。我几乎每天都在使用它,将其导入某种临时表并使用 PHP 和 MySQL 的组合来验证导入的内容已成为简单的例程。有人可以说这是额外的工作,但它确实具有让我完全控制什么是“错误”的优势。简单地说,我使用它来尽可能高效地获取原始数据,然后在 php 脚本中构建我的错误检查和验证规则。

于 2012-05-18T02:42:02.967 回答