带有Perl变量的MySQL数据库字段

时间:2014-11-07 15:01:35

标签: mysql perl variables

我使用Perl DBI访问某些MySQL数据库字段。我有一个包含文本和一些Perl变量的字段。 Perl变量不被解释为变量。有没有办法以某种方式标记MySQL字段中的变量,以便它们将在Perl中解释?

谢谢!

1 个答案:

答案 0 :(得分:1)

不,没有办法#34;标记" MySQL列(字段)的内容,以强制Perl评估包含变量名的文本字符串的内容。

这个问题与MySQL没有任何关系。

Perl常见问题解答中对此进行了介绍。 How can I expand variables in text strings?

作为示例,一个字符串中包含两个Perl标量变量。

 $string = 'Say hello to $foo and $bar';

(该字符串文字是单引号,因此$ foo和$ bar不会被解释为变量,这些只是文字字符串中的字符。)

但我想将$foo$bar扩展为其变量的值。让我们说我已经定义了这些变量:

 my $foo = 'Fred';
 my $bar = 'Barney';

我可以将文本字符串中的$foo$bar替换为变量值的一种方法是使用替换运算符和双/e标志。

第一个/e评估替换方$1并将其转换为$foo

第二个/e$foo开头,并将其替换为变量$foo的值,因此$foo将替换为'Fred'

 $string =~ s/(\$\w+)/$1/eeg; # 'Say hello to Fred and Barney'