> 
> 
> OK, I got it to work.  I appreciate the help.
> 
> Another question.
> 
> The reason I switched to DBI is because I was having a 
> problem with getting a WRITE CONFLICT error when users try to 
> manually edit the records (that were inserted by the script) 
> while in MS ACCESS.  The records can be edited by an UPDATE 
> QUERY in Access but not manually edited in the table.  The 
> back end tables are SQL and the front end is a MS Access 
> database.  It is like the record is still open and was not 
> closed by the script.  The WorkRequest table can be edited 
> but the FILE_DETAILS table cannot.
> 
> I have the same problem using DBI.  I was hoping it was just 
> a quirk with Win32::ODBC.

Just out of curiosity, can you run the same set of inserts with:
        MSQuery?
        SQL Server's interface (I think it's isql, but I forget)

What happens to the Access front-end then?

The only other thing I can think of is the front-end using some of the data
inserted to build a picklist (or do something in the GUI, etc) and it is
'failing' in the GUI code.  If it fails with SQL Server and/or MSQuery, then
I'd guess it's in the data that the GUI expects or Access expects?



Regards,

Jeff

> 
> Any ideas are appreciated!
> 
> Thanks!
> Kristi
> 
> 
> Here is the script:
> 
> #! perl -w
> use DBI;
> use DMC::Timestamp;
> 
> $lstamp = LONGSTAMP();
> $sstamp = SHORTSTAMP();
> 
> $DSN = "DBI:ODBC:database";
> $user = "userid";
> $pw = "pass";
> $dbh = DBI->connect($DSN,$user,$pw,{RaiseError => 1}) || die "Cannot
> connect: $DBI::errstr\n" unless $dbh;
> 
> 
> $sql = ("INSERT INTO WorkRequest(DCA, Billing_Status, 
> Create_Date, AccRep, CC, BU_Group, ClientID, Customer_Name, 
> ProjectID, WRType, IntorData, ShipDate, Ext,Completed)  
> VALUES('NONE' , 'NONE', '$lstamp', 'userid', 'userid', 
> 'SERVICES', '5', 'TEST', 'KKKY', 'Outbound', 'Dataset', '$sstamp',
> '20000', 'JOB IN QUE' )");            
> 
> $dbh->do ($sql);
> 
> 
> $sql = ("SELECT [EMAIL PROTECTED]@IDENTITY AS 'Identity'" );
> $sth = $dbh->prepare ($sql); $sth->execute();
> 
> $hash1 = $sth->fetchrow_hashref()
> $wrnum = $hash1->{'Identity'};
> 
> $sql = ("INSERT INTO File_Details(WRID, FileName, MediaType, 
> Conversion_Type, PCOMMENTS, Output_Filename, Record_Count, 
> Record_Length, Additional_Info, Status, Layout, TapeFormat, 
> OutFtpUserID, OutFTPPsswrd, OutFTPServer, Email) 
> VALUES('$wrnum', 'SEE ADDITIONAL INFORMATION ', 'CDROM', 
> 'LOAD FILE AS IS', 'Auto Create WR for CD', 'SAME', '0', '0', 
> 'INFO' , 'JOB IN QUE', 'none', 'na', 'undefined', 
> 'undefined', 'undefined',
> 'undefined' )");                            
> $dbh->do ($sql);
> 
> 
> 
> $dbh->disconnect();
> 
> exit 0;
> 
> 
> 
> 
> 
> 
> -----Original Message-----
> From: Hardy Merrill [mailto:[EMAIL PROTECTED]
> Sent: Monday, September 29, 2003 10:55 AM
> To: Sterin, Ilya (I.)
> Cc: 'Goodman Kristi - kgoodm'; '[EMAIL PROTECTED]'
> Subject: Re: New to DBI
> 
> 
> Sterin, Ilya (I.) [EMAIL PROTECTED] wrote:
> > my $sth = $dbh->prepare("select .....");
> > $sth->execute();
> > 
> > my $data = $sth->fetchrow_hashref();
> > 
> > my $list = $data->{'Col1'};
> 
> Just personal preference for naming variables what they 
> contain, but it might help Krisi understand what's going on 
> and how this works:
> 
>   my $row_hashref = $sth->fetchrow_hashref();
>   $list       = $row_hashref->{'ListID'}; #ListID is the column name
>   $proj       = $row_hashref->{'ProjID'}; #ProjID is the column name
> 
> HTH.
> -- 
> Hardy Merrill
> Red Hat, Inc.
> 
> > 
> > Ilya
> > 
> > -----Original Message-----
> > From: Goodman Kristi - kgoodm [mailto:[EMAIL PROTECTED]
> > Sent: Monday, September 29, 2003 11:19 AM
> > To: '[EMAIL PROTECTED]'
> > Subject: New to DBI
> > 
> > 
> > Hello!
> > 
> > I am a Win32::ODBC user and I am trying to convert to DBI.  
> However, I 
> > am having trouble trying to figure out how to do one thing. 
>  How can 
> > you
> return
> > a hash where you can assign the values returned to a variable.
> > 
> > 
> > This is the code I have from using the WIN32::ODBC module 
> and I would 
> > like to do the same thing using DBI.
> > 
> > $db1->Sql("SELECT * FROM WORKREQUEST WHERE (WRID = '$wrnum' )" ); 
> > $db1->FetchRow(); %db1hash = $db1->DataHash();
> > $list       = $db1hash{'ListID'};  #ListID is the column name
> > $proj       = $db1hash{'ProjID'}; #ProjID is the column name
> > ect...
> > 
> > 
> > 
> > Can anyone help?  Please let me know if this is not a clear 
> > explanation on what I am trying to do.
> > 
> > Thanks!
> > Kristi
> > 
> > 
> > 
> > 
> > 
> > 
> > 
> > 
> > Kristi Goodman
> > Technical Support Specialist 
> > AECMS, O/ITS
> > Acxiom Corporation , Conway Campus
> 
> 
> 
> 
> 
> 
> 
> **********************************************************************
> The information contained in this communication is
> confidential, is intended only for the use of the recipient
> named above, and may be legally privileged.
> If the reader of this message is not the intended
> recipient, you are hereby notified that any dissemination, 
> distribution, or copying of this communication is strictly
> prohibited.
> If you have received this communication in error,
> please re-send this communication to the sender and
> delete the original message or any copy of it from your
> computer system. Thank You.
> 
> 


Reply via email to