【问题标题】:How to save files into a mysql database using perl如何使用 perl 将文件保存到 mysql 数据库中
【发布时间】:2012-04-10 00:08:29
【问题描述】:

我有一个表 PGM_MASTER,它有三列

PGM_ID |整数(11)

PGM_ENV_ID |整数(11)

PGM_TEXT |中文本

我需要您的帮助,将文件/内容直接存储到 mysql DB(例如 /tmp/t1.tst)中,用于列“PGM_TEXT”以及通过 perl 的行中的其他列。我也需要保留我打算存储的文件格式。

感谢您的帮助。

【问题讨论】:

    标签: mysql linux perl


    【解决方案1】:

    未经测试:

    use DBI qw();
    use File::Slurp qw(read_file);
    
    my $content = read_file('/tmp/t1.tst', { binmode => ':raw' });
    my $dbh = DBI->connect('DBI:mysql:database=DBNAME', { AutoCommit => 1, RaiseError => 1, });
    $dbh->do('insert into PGM_MASTER (PGM_TEXT) values (?)', {}, $content);
    

    【讨论】:

      【解决方案2】:

      为什么不将文件上传到服务器,而不是将实际文件保存在数据库中,只需保存对其在文件结构中位置的引用。

      假设你有结构

      t1.tst

      FOLDER  |
              | t1.tst
              | t2.tst
              | t3.tst
              | t4.tst
      

      在您的数据库中存储文件路径:FOLDER/t1.tst

      【讨论】:

        猜你喜欢
        • 2012-07-11
        • 1970-01-01
        • 2021-12-24
        • 2014-03-29
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多