I'm running ActiveState perl 5.8.0 on a WIN2K box with MS SQL Server 2000. Recently I updated DBD-ODBC to v1.05 and DBI to v1.35
Now I get the following errors executing some sql commands CREATE SQLSTMT:[CREATE DATABASE POMS_SER ON (NAME = 'POMS_SER_DAT', FILENAME = 'd:\Database\POMS\POMS_SER_Data.MDF', SIZE = 10MB) LOG ON ( NAME = 'POMS_SER_LOG', FILENAME = 'd:\Database\POMS\POMS_SER_Log.MDF', SIZE = 5MB)] DBD::ODBC::st execute failed: [Microsoft][ODBC SQL Server Driver][SQL Server]The CREATE DATABASE process is allocating 10.00 MB on disk 'POMS_SER_DAT'. (SQL-01000) [Microsoft][ODBC SQL Server Driver][SQL Server]The CREATE DATABASE process is allocating 5.00 MB on disk 'POMS_SER_LOG'. (SQL-01000) at D:\Transportation\POMS\Tools\Scotts_Unified_POMS_Install.pl line 766. Database POMS_SER Created! EXEC SQLSTMT:[USE POMS_SER exec sp_grantdbaccess 'LLVAH-STRICSC\IUSR_POMS_SER', 'IUSR_POMS_SER'] DBD::ODBC::st execute failed: [Microsoft][ODBC SQL Server Driver]Invalid cursor state (SQL-24000)(DBD: dbd_describe/SQLNumResultCols err=-1) at D:\Transportation\POMS\Tools\Scotts_Unified_POMS_Install.pl line 827. Can't execute statement USE POMS_SER exec sp_grantdbaccess 'LLVAH-STRICSC\IUSR_POMS_SER', 'IUSR_POMS_SER' [Microsoft][ODBC SQL Server Driver]Invalid cursor state (SQL-24000)(DBD: dbd_describe/SQLNumResultCols err=-1) at D:\Transportation\POMS\Tools\Scotts_Unified_POMS_Install.pl line 827. Code fragments that generated this follow; my $the_odbc = 'dbi:ODBC:LocalServer'; my $dbh = DBI->connect($the_odbc, '', '', {RaiseError=>0}); my $sqlstmt_s = "CREATE DATABASE $db_name"; $sqlstmt_s .= " ON (NAME = \'$db_logical_name\', FILENAME = \'$db_file_name\', SIZE = $db_size)"; $sqlstmt_s .= " LOG ON ( NAME = \'$tlog_logical_name\', FILENAME = \'$tlog_file_name\', SIZE = $tlog_size)"; print "CREATE SQLSTMT:[$sqlstmt_s]\n"; my $sth_s = $dbh->prepare($sqlstmt_s) || die "Can't prepare statement\n$sqlstmt_s\n$DBI::errstr"; my $rc = $sth_s->execute || die "Can't execute statement\n$sqlstmt_s\n$DBI::errstr"; #### LINE 766 $sth_s->finish; print "Database $db_name Created!\n"; $sqlstmt_s = "USE $db_name"; $sqlstmt_s .= "\nexec sp_grantdbaccess \'$db_user_and_domain\', \'$db_user\'"; print "EXEC SQLSTMT:[$sqlstmt_s]\n"; $sth_s = $dbh->prepare($sqlstmt_s) || die "Can't prepare statement\n$sqlstmt_s\n$DBI::errstr"; $rc = $sth_s->execute || die "Can't execute statement\n$sqlstmt_s\n$DBI::errstr"; ##### LINE 827 $sth_s->finish; E. Scott Stricker - NGIT @ Smartlink