2017-08-02 73 views
2

我正在寻找一种方法来截断与DBIx::Class表,但我无法找到任何网络上的东西,除了一些建议,如删除所有行而不是截断表。 不幸的是,TRUNCATE要快得多,我希望能够正确地做到这一点。现在,我想我会使用DBI截断,但它有点缺点。Perl DBIx ::类截断表

这有可能以任何方式吗?

在此先感谢:-)

+0

没有'TRUNCATE'。您必须删除所有行。 – simbabque

+0

你确定?它有多难过:-( – SDQ

回答

1

可以直接在您DBIx ::类模型中的小助手功能执行SQL

sub _sql_do { 
    my ($self , $sql) = @_ ; 

    return $self->storage->dbh_do(
    sub { 
     my ($storage , $dbh , $sql) = @_ ; 
     my $sth = $dbh->prepare($sql) ; 
     $sth->execute() ; 
    }, 
    $sql 
); 
} 
+0

是的,它的工作原理与我希望的一样:-)非常感谢! – SDQ