批量生成创建语句

[oracle@PD sbin]$ cat t1.pl 
use DBI;
use HTTP::Date qw(time2iso str2time time2iso time2isoz);
my $dbName = 'PD';
my $dbUser = 'query';
my $dbUserPass = 'kjk7787czcb';
my $dbh = DBI->connect("dbi:Oracle:$dbName", $dbUser, $dbUserPass) or die "can't connect to database ";
my $date1= "$ARGV[0]";
my $date2="$ARGV[1]";
my $date=$date1;
my $tip='+1';
 sub get_date{ 
       my $var_date=$_[0]; 
       my $hostSql = qq{select   to_char((to_date('$var_date','YYYYMMDD')$tip),'YYYYMMDD')  from  dual  where  rownum=1};
       my ($a1, $a2, $a3,$a4,$a5,$a6,$a7,$a8,$a9);    
       my $selStmt = $dbh->prepare($hostSql);    
       $selStmt->execute();    
       while (@recs=$selStmt->fetchrow_array) {
       foreach (@recs)
       {$date=$_;return $date}
};
};
    for ($i=1;$i<=16;$i++){
    while (1==1){
    $date3=$date;
    print "create table test$i.test_$date3;
";
    $date=&get_date($date3);
    if ( "$date" == "$date2" ){print "create table test$i.test_$date;
";$date="$date1";last;}
   };
   };

原文地址:https://www.cnblogs.com/hzcya1995/p/13349949.html