#!/usr/bin/perl -w
use strict;
use DBI qw(:sql_types);
#set up connection
my ( $data_source, $database, $user_id, $password ) =qw ( MANTIS-1\\SQ
+LEXPRESS lc_bugtracker_db bugadmin 1bug2admin. );
#set up column values
my ( $name, $status, $enabled, $view_state, $access_min ,$file_path )
+=qw (project1 2 0 1 1 C:\\defect_tracking_project\\testproject);
my $description = "this is the project description";
my $conn_string = "driver={SQL Server};
Server=$data_source;
Database=$database;
UID=$user_id;
PWD=$password;
{
RaiseError => 1,
AutoCommit => 0
}";
#Connect the database handle.
my $dbh = DBI->connect("DBI:ODBC:$conn_string");
#SQL Insert statement and get identity value created by insert
my $insertSQL = qq{ INSERT INTO mantis_project_table
(name,status,enabled,view_state,access_min,file_path,description) VALU
+ES(?,?,?,?,?,?,?); SELECT SCOPE_IDENTITY() };
#Prepare SQL statement for execution
my $sth = $dbh->prepare($insertSQL);
#Bind parms and parm sql types for insert statement
$sth->bind_param( 1, $name, SQL_VARCHAR );
$sth->bind_param( 2, $status, SQL_SMALLINT );
$sth->bind_param( 3, $enabled, SQL_BIT);
$sth->bind_param( 4, $view_state, SQL_SMALLINT );
$sth->bind_param( 5, $access_min, SQL_SMALLINT );
$sth->bind_param( 6, $file_path, SQL_VARCHAR );
$sth->bind_param( 7, $description, SQL_LONGVARCHAR);
#execute the sql statement on the server
$sth->execute();
#get the id value in a varArray to use later -- it could be null (unde
+f)
my @idarray = $sth->fetchrow_array();
my $id = @idarray ? $idarray[0] : undef;
print "the identity column id used this time was: $id \n" ;
#clean up
$sth->finish();
$dbh->disconnect();
|