Edit: davorg - added code tagsuse strict; use DBI; #use Win32::ODBC; use DBD::ODBC; if (-e "/tf_out.txt") { } else { die "File does not exist\n"; } #my $filename = shift || die "Please provide a filename.\n"; #my $Data = new Win32::ODBC("DSN=INSTDev;UID=sa;PWD=henry;"); #my $dbh = new Win32::ODBC("DSN=INSTDev;UID=sa;PWD=henry;"), my $dbh = DBI->connect( "dbi:ODBC:INSTDev", "sa", "henry", {RaiseError => 1, PrintError => 1, AutoCommit => 1} ) or die "Unable to connect: " . $DBI::errstr . "\n"; # Open your file open( INFILE, "/tf_out.txt" ) or die "Couldn't open file for reading.$ +!\n"; while( $line = <INFILE> ) { my @cols = split( "\t", $line ); $CLIENT = $data[0]; $RECORD = $data[1]; $CONTROL = $data[2]; $CUSIP = $data[3]; $FROMACCT = $data[4]; $F_IND = $data[5]; $TOACCT = $data[6]; $T_IND = $data[7]; $FP = $data[8]; $ORIGQTY = $data[9]; $DIV = $data[10]; $LTCG = $data[11]; $STCG = $data[12]; $SOCSEC = $data[13]; $BKRNO = $data[14]; $THIRDPARTYCD = $data[15]; $USERID = $data[16]; $EDATE = $data[17]; $ORIGAMT = $data[18]; $CLOSEDIND = $data[19]; $ADPSECNO = $data[20]; $BRNCH = $data[21]; $ACNT = $data[22]; $TYPE = $data[23]; $CHKDIGIT = $data[24]; $PDATE = $data[25]; $ACTLQTY = $data[26]; $ACTLAMT = $data[27]; $CERTIND = $data[28]; $REQST = $data[29]; $RDATE = $data[30]; $COMNTS = $data[31]; $TRNFTYPE = $data[32]; $FILLER1 = $data[33]; $ADR_L1 = $data[34]; $ADR_L2 = $data[35]; $ADR_L3 = $data[36]; $ADR_L4 = $data[37]; $ADR_L5 = $data[38]; $ADR_L6 = $data[39]; $FILLER_B = $data[40]; $CERTNO1 = $data[41]; $CERTSHRS1 = $data[42]; $CERTNO2 = $data[43]; $CERTSHRS2 = $data[44]; $CERTNO3 = $data[45]; $CERTSHRS3 = $data[46]; $CERTNO4 = $data[47]; $CERTSHRS4 = $data[48]; $CERTNO5 = $data[49]; $CERTSHRS5 = $data[50]; $CERTNO6 = $data[51]; $CERTSHRS6 = $data[52]; $CERTNO7 = $data[53]; $CERTSHRS7 = $data[54]; $CERTNO8 = $data[55]; $CERTSHRS8 = $data[56]; $CERTNO9 = $data[57]; $CERTSHRS9 = $data[58]; $CERTNO10 = $data[59]; $CERTSHRS10 = $data[60]; $FILLER_B = $data[61]; #print "$CERTNO10"; # build insert string with items in @cols my $sql = ("INSERT INTO mf_forms (CLIENT,RECORD,CONTROL,CUSIP,FRO +MACCT,F_IND,TOACCT,T_IND,". "FP,ORIGQTY,DIV,LTCG,STCG,SOCSEC,BKRNO,THIRD +PARTYCD,USERID,EDATE,". "ORIGAMT,CLOSEDIND,ADPSECNO,BRNCH,ACNT,TYPE,C +HKDIGIT,PDATE,ACTLQTY,". "ACTLAMT,CERTIND,REQST,RDATE,COMNTS,TRNFTYPE,F +ILLER1,ADR_L1,ADR_L2,ADR_L3,". "ADR_L4,ADR_L5,ADR_L6,FILLER_B,CERTNO1,CERTSHRS +1,CERTNO2,CERTSHRS2,CERTNO3,". "CERTSHRS3,CERTNO4,CERTSHRS4,CERTNO5,CERTSHR +S5,CERTNO6,CERTSHRS6,CERTNO7,CERTSHRS7,". "CERTNO8,CERTSHRS8,CERTNO9,CERTSHRS9,CERTNO10 +,CERTSHRS10,FILLER_B) VALUE ('". $CLIENT,$RECORD,$CONTROL,$CUSIP,$FROMACCT,$F_IN +D,$TOACCT,$T_IND,". $FP,$ORIGQTY,$DIV,$LTCG,$STCG,$SOCSEC,$BKRNO,$ +THIRDPARTYCD,$USERID,$EDATE,". $ORIGAMT,$CLOSEDIND,$ADPSECNO,$BRNCH,$ACNT,$TY +PE,$CHKDIGIT,$PDATE,$ACTLQTY,". $ACTLAMT,$CERTIND,$REQST,$RDATE,$COMNTS,$TRNFTYP +E,$FILLER1,$ADR_L1,$ADR_L2,$ADR_L3,". $ADR_L4,$ADR_L5,$ADR_L6,$FILLER_B,$CERTNO1,$CERT +SHRS1,$CERTNO2,$CERTSHRS2,$CERTNO3,". $CERTSHRS3,$CERTNO4,$CERTSHRS4,$CERTNO5,$CERTSHR +S5,$CERTNO6,$CERTSHRS6,$CERTNO7,$CERTSHRS7,". $CERTNO8,$CERTSHRS8,$CERTNO9,$CERTSHRS9,$CERTNO1 +0,$CERTSHRS10,$FILLER_B)"); $dbh->do( $sql ) or die "Couldn't insert record. $!\n"; } close(INFILE); $dbh->disconnect;
In reply to Problem with code by SamueD2
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |