-3 perl
当我使用命令行输入运行Perl文件时,它应该更新表中的字段.
例如
perl function_impl.pl --address_only
Run Code Online (Sandbox Code Playgroud)
如果它接收到输入参数,--address_only那么t应该只更新该Perl脚本的db中的地址字段.如何实现它.
DVK*_*DVK 11
Getopt :: Long是Perl解析命令行参数的一种非常常见且非常简单的方法.
my %args = ();
GetOptions (\%args, 'address_only'); # will store true value in $args{address_only}
if ($args{address_only}) {
# Update address
}
Run Code Online (Sandbox Code Playgroud)
请告诉我们您用于更新表格的代码,以便我们在您需要时提供该部分的帮助.
另外,您将如何提供更新值?从你的例子中你不会通过命令行提供它,所以我认为它是硬编码的?如果要在命令行上提供,请更改上面的代码以接受参数的值:
my %args = ();
GetOptions (\%args, 'address_only=s'); # will store address value in $args{address_only}
# Usage: function_impl.pl --address_only joe@myaddress.com
Run Code Online (Sandbox Code Playgroud)
作为一个简单的例子,您可以构建更新语句的"SET"部分:
my $set_fields = 0;
if ($args{address_only}) {
$set_fields .= ", " if $set_fields; # comma separate if >1 set
$set_fields .= qq[address = "$args{address_only}"];
# or $set_fields .= qq[address = "$hardcoded_address"];
}
# Build the full UPDATE SQL statement using $set_fields
# Execute SQL statement
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
260 次 |
| 最近记录: |