in reply to Re: comparing 2 files
in thread comparing 2 files

Hi, Thank you for getting back to me on my problem. I tried inputting your code into a separate file and compiling and I keep getting the following error and I don't know what it means:
Global symbol "$tables_db_list_file" requires explicit package name a +t ./playFunction.pl line 15. Execution of ./playFunction.pl aborted due to compilation errors.
-I saw where you had in two parts of the program and I didn't know if it needed to be TWO different file handles or what. The way I have my program currently running is I call a file called counter15.pl that does lots of stuff (pulling SQL statements, performing various calculations and the SQL files that I separated the SQL statements into, pulling database joins etc.) The last thing I did in my program was I wrote code in which a file that contained a list of ONLY TABLES (not with DB name) was loaded. Then I parsed EACH of my SQL files to see if any instances of the tables were in any of the SQL files. If they were, then I just printed the table name that was found. NOW, I have a list of all the tables names in a separate file called, tableUsed.txt and what I need is a list of table names ALONG WITH the database name. YES, to answer your question in the DB & table name file, the DB & table name are separated by a (space). I just want to eventually have a FINAL file that contains a listing of the databases and table names in which I will upload into an excel spreadsheet. I am VERY new to PERL, infact they made me learn it in a week, therefore I am no expert by any means but the code you have given me should work but again I have that error and I don't know why. Please get back to me when you have time. Thank you so very much for your help. Dan

Replies are listed 'Best First'.
Re^3: comparing 2 files
by graff (Chancellor) on Jun 21, 2007 at 02:50 UTC
    Wow. Now this is turning into sort of a train wreck.
    I tried inputting your code into a separate file and compiling and I keep getting the following error and I don't know what it means:
    Global symbol "$tables_db_list_file" requires explicit package name at + ./playFunction.pl line 15.

    The error message means that you made a spelling error when you tried to recreate my sample code. (Why didn't you just download or copy/paste it?) My code does not contain a variable called "$tables_db_list_file" (note the extra "s" in "tables_"), but your version of the code does, and since "use strict" is in there, that is what is causing the error. Just take that "s" out and it should compile.

    As for that long paragraph of yours in italics, I don't know what to say. Your original post in this thread talked about reading and comparing two files. That's what my code does.

    Don't panic. Spend some time reading manual pages. When you don't know how to interpret an error message, paste the msssage into a google search box (at least, parts that do not include specific names of your variables or files), because it'll turn up somewhere on the web with a decent explanation. Probably the best place to search first is in the perldiag manual page.