在我的perl程序中,我有一個函數,它接受查詢作爲輸入並執行它,並打印查詢的所有行,如果查詢是select語句。查找在perl DBI中執行的查詢的類型
但問題是更新或插入語句,其中fetchrow_array給出了一個錯誤,所以有什麼辦法我可以知道什麼類型的查詢被執行,以便我可以跳過提取部分?
在我的perl程序中,我有一個函數,它接受查詢作爲輸入並執行它,並打印查詢的所有行,如果查詢是select語句。查找在perl DBI中執行的查詢的類型
但問題是更新或插入語句,其中fetchrow_array給出了一個錯誤,所以有什麼辦法我可以知道什麼類型的查詢被執行,以便我可以跳過提取部分?
使用正則表達式來檢查查詢特定單詞的SQL字符串創建一個小幫手功能...
my $sql = "UPDATE some_table SET some_value = 'abc' WHERE some_value = 'xyz'";
sub get_query_type
{
my $sql_string = shift;
my $query_type;
if($sql_string =~ m/^UPDATE/i)
{
$query_type = "An UPDATE query";
# do UPDATE stuff
}
elsif($sql_string =~ m/^INSERT/i)
{
$query_type = "An INSERT query";
# do INSERT stuff
}
# more blocks here as needed.
return $query_type;
}
my $type = get_query_type($sql);
print $type;
你的程序是充滿了錯誤 –
的你怎麼知道 – tejas
好運與此;) – tejas