I use perl DBD::CSV to process and correlate information contained in several csv files received from an external computer,on a daily interval. The incoming file names are case sentive for uniqueness. On MS Windows platforms the DBD::CSV::prepare() command identifies each file correctly and processes it without dying/exiting. However when the same processing script is ported to UNIX/LINUX O/S it reports that the files cannot be found in the specied OS path; the file names are exactly the same as listed in the MS Windows O/S.
On looking at one of the error message (DBD::CSV::st execute failed: Cannot open /in/17_trx_22aug2012_0405.csv:) I noticed that the file names,e.g "17_trx_22aug2012_0405" appear(s) in lowercase on the error report, instead of "17_Trx_22Aug2012_0405", which is how it was associated with a tablename before the prepare() function.
Your help will be much appreciated on the following questions: 1) Is it possible that the prepare() method is converting each file name to lowercase, and this might not be a problem on Windows, but will be on UNIX/LINUX O/S? 2) How can I instruct the prepare() not to lowercase the literals of the DBD::CSV table association? 3) How can I view the prepared SQL (after the prepare() function)?