SQL::Translator::Producer::SQLServer − MS SQLServer producer for SQL::Translator
use
SQL::Translator;
my $t = SQL::Translator−>new( parser => '...',
producer => 'SQLServer' );
$t−>translate;
This is currently a thin wrapper around the nextgen SQL::Translator::Generator::DDL::SQLServer DDL maker.
field.list
List of values for an enum field.
* !! Write some
tests !!
* Reserved words list needs updating to SQLServer.
* Triggers, Procedures and Views DO NOT WORK
# Text of view is already a 'create view' statement so no
need to
# be fancy
foreach ( $schema−>get_views ) {
my $name = $_−>name();
$output .= "\n\n";
$output .= "−−\n−− View:
$name\n−−\n\n" unless $no_comments;
my $text = $_−>sql();
$text =˜ s/\r//g;
$output .= "$text\nGO\n";
}
# Text of procedure already has the 'create procedure' stuff
# so there is no need to do anything fancy. However, we
should
# think about doing fancy stuff with granting permissions
and
# so on.
foreach ( $schema−>get_procedures ) {
my $name = $_−>name();
$output .= "\n\n";
$output .= "−−\n−− Procedure:
$name\n−−\n\n" unless $no_comments;
my $text = $_−>sql();
$text =˜ s/\r//g;
$output .= "$text\nGO\n";
}
SQL::Translator
See the included AUTHORS file: <http://search.cpan.org/dist/SQL−Translator/AUTHORS>
Copyright (c) 2012 the SQL::Translator "AUTHORS" as listed above.
This code is free software and may be distributed under the same terms as Perl itself.