【发布时间】:2015-08-25 13:18:26
【问题描述】:
我的本地工作站上有一个 MySQL (5.6) 数据库,我经常将大型数据集拉入其中进行分析。我对每个数据集都有一个单独的 SQL 脚本,用于导入数据并在需要时重新格式化(特别是转换日期格式)。此外,我还有其他脚本可以对数据进行详细分析。
为了质量保证,我想要一个名为 ImportLog 的表,它存储一条记录以捕获运行的每个导入的结果。该表如下所示:
ImportName DateRun RowsImported
---------- ------- ------------
ImportASR 2015-08-29 12902
ImportEAD 2015-08-30 18023
ImportHRData 2015-08-30 122376
ImportLog的列定义如下:
ImportName // the name of the script that is run
DateRun // the date that the script is run
RowsImported // the count of records imported in the run.
在每个脚本的最后都会有一段代码在该表中写入一行相关数据。例如,假设我在 2015 年 8 月 29 日运行了名为 ImportASR 的脚本,它导入了 12,902 条记录。在脚本结束时,我想使用如下方式将一条记录附加到 ImportLog(如上表中的第一条记录):
INSERT INTO ImportLog
VALUES("ImportASR",$DateRun,$RowCunt);
每次我运行一个导入脚本时,它都会在 ImportLog 表中添加一行,其中包含适当的数据。
我的问题是:如何使用当前日期填充 $DateRun 变量,并使用新导入的 ASR 数据集的行数填充 $RowCount 变量?还是我试图从错误的角度解决这个问题?
【问题讨论】:
-
可能我误解了你的问题 - 在你的 mysql 脚本中应该可以包含 create table 语句。如果您想知道受上一个操作影响的行,您可以使用 mysql_affected_rows() (dev.mysql.com/doc/apis-php/en/…),尽管对于某些操作有一些限制。
-
贾尔斯,我编辑了我的问题,希望能澄清我想做什么;有帮助吗?