把sqlserver中的存储过程注释后创建到mysql中
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了把sqlserver中的存储过程注释后创建到mysql中,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2318字,纯文字阅读大概需要4分钟。
内容图文
![把sqlserver中的存储过程注释后创建到mysql中](/upload/InfoBanner/zyjiaocheng/559/de5f58b9f38c4dfb877df1a4cfc2f09c.jpg)
把sqlserver中的存储过程注释后创建到mysql中 #!/usr/bin/perl use DBI; use Switch; use Encode; use Encode::CN; my $source_name = sqldb; my $source_user_name = sa; my $source_user_psd = 123; my $db_name=mysqldb; my $location=192.168.0.208; my
把sqlserver中的存储过程注释后创建到mysql中
#!/usr/bin/perl
use DBI;
use Switch;
use Encode;
use Encode::CN;
my $source_name = "sqldb";
my $source_user_name = "sa";
my $source_user_psd = "123";
my $db_name="mysqldb";
my $location="192.168.0.208";
my $port="3306";
my $db_user="zoe";
my $db_pass="123";
my $dbh=DBI->connect("dbi:ODBC:$source_name",$source_user_name,$source_user_psd);
#获取所有的用户表
my $sth=$dbh->prepare("select name from sys.objects where type='P'");
$sth->execute();
my $n=0;
my $ok=0;
my $sort_column="";
while (@data=$sth->fetchrow_array())
{
#print $data[0];
print '正在查询表'.$data[0]."的存储过程n";
my $sql_create="EXEC Sp_HelpText '$data[0]'";
my $dbh_mssql=DBI->connect("dbi:ODBC:$source_name",$source_user_name,$source_user_psd,{RaiseError =>1});
$dbh_mssql->{LongTruncOk}=1;
$dbh_mssql->{LongReadLen}=1048576;
my $sth_select=$dbh_mssql->prepare($sql_create);
$sth_select->execute() or die 'Cannot execute: '. $sth_select->errstr();
my $select_col;
my $select_data;
while($select_data=$sth_select->fetchrow_array())
{
$select_col.=$select_data;
}
do_sql($data[0],$select_col);
}
$sth->finish;
$dbh ->disconnect;
print '所有表的存储过程创建结束'."n";
sub do_sql
{
print '开始创建'.$_[0].'表的存储过程'."n";
my $sql=$_[1];
open(FILE,"》createtableallproduce.txt");
syswrite(FILE,"$nn");
syswrite(FILE,"$data[0]n");
syswrite(FILE,"$sqln");
close(FILE);
$sql=~s//*/------注释开始--------/g;
$sql=~s/*//------注释结束--------/g;
$sql='CREATE PROCEDURE '.$_[0].'()'." n".' BEGIN '."n".' /* '.$sql.'*/'."n".'END; ';
my $data_base = "DBI:mysql:$db_name:$location:$port";
my $dbh3=DBI -> connect($data_base,$db_user,$db_pass);
$dbh3->do("SET character_set_client = 'utf8'");
$dbh3->do("SET character_set_connection = 'utf8'");
my $data_str=encode("utf-8",decode("gbk",$sql));
my $sth=$dbh3->prepare($sql);
open(FILE,"》myproduce.txt");
syswrite(FILE,"$nn");
syswrite(FILE,"$data[0]n");
syswrite(FILE,"$sqln");
close(FILE);
$sth->execute() or die "$data_str----ERROR::$data_str::$dbh3->errstr";
$dbh3->disconnect;
print '创建'.$_[0].'表的存储过程结束'."n";
}
,内容总结
以上是互联网集市为您收集整理的把sqlserver中的存储过程注释后创建到mysql中全部内容,希望文章能够帮你解决把sqlserver中的存储过程注释后创建到mysql中所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。