【发布时间】:2015-07-31 05:26:48
【问题描述】:
我遇到了一个奇怪的问题,我有一个表,其中将 csv 格式的数据存储为 file_content。我正在尝试使用 SQL 在我的 Laravel 应用程序中获取文件内容,但该数据在某个时候会中断。它只返回部分数据。数据大小约为9M。
表架构:
Field Type Collation Null Key Default
------------ ---------- --------------- ------ ------ --------
id bigint(15) (NULL) NO PRI (NULL)
file_id bigint(15) (NULL) YES MUL (NULL)
file_content longtext utf8_general_ci YES (NULL)
dataTime timestamp (NULL) NO
SQL:
$sql = "SELECT file_content FROM file_data WHERE file_id = {$file_id} ;";
$result = DB::connection('staging_db')->select(DB::raw($sql));
当我看到$result 的dd() 时,数据甚至不到结果的一半。
例如。我在CSV 文件中有近 37K 行,这些行被导入到此列中,但是当我运行上述 SQL 时,它仅以 CSV 格式返回只有 3.2K 行的数据。
It does not seems to be a SQL DB problem when I run the same with Basic PHP mysql_connect & mysql_query the result set returns whole data set but when I do the same with laravel then this issue comes back
关于为什么以及如何解决这个问题的想法?
【问题讨论】:
-
SELECT file_content FROM file_data WHERE trim(file_id) = {$file_id}得到什么 -
@AbhikChakraborty 我收到了
file_content数据,但该数据不完整。休息条件很好,我没有任何问题。 -
如果你重复它,你的 sql 的返回是否总是完全一样?如果不是,则可能存在任何类型的超时问题。
-
@Peh
result总是一样的。也没有超时问题。
标签: php mysql laravel laravel-4