in reply to Monitoring mysql tables in perl
-
So here is what i want to do: Monitor a bunch of tables in a MySQL database, append time stamps to WHEN the values changed, and then render the result in a graph.
Dear Monk,
I'm a bit confused as to what you are trying to do. Let me step through your code though and offer some commentary.
Hope those aren't really production passwords. Never post such to this site as Google does a fine job of spidering this site from time to time making this sort of thing easy to find.my $database = 'co_sysdev'; my $server = 'devqa_dbm.hq.co.corp'; my $user = 'web'; my $passwd = '3br!'; my $row = "";
So.. what were those other lines for?my $homologs = DBI->connect("dbi:mysql:database=co_sysdev;host=devqa_d +bm.corp;port=3310",'username','password');
when posting code to the PM remember to remove unnecessary lines for readability. This is what it should have looked like IMHO:#my $query_params = "select * from system_params"; # render the result in a graph format # save it locally in a csv format, to be used later for report my $query_coding_event = "select * from coding_event"; my $query_params = "select * from co_event"; #my $query = "select * from n_batch where status = 'started'"; #my $query = "select * from n_batch"; #my $query = "select id,customer_id,location_id,submitter,n_notes,hand +le from submission_batch where id is not null"; #my $query = "select id,customer_id,location_id,submitter,n_notes,hand +le from submission_batch where id is not null"; #my $query = "describe submission_batch"; #my $query = "show tables"; my $sql_params = $homologs->prepare($query_params);
so we can see what you are trying to run.my $query_coding_event = "select * from coding_event"; my $query_params = "select * from co_event"; my $sql_params = $homologs->prepare($query_params);
Let's start with the line print join(@row),"\n";. Is this doing what you expect? What is going to happen is join is going to take the first element in your array and use it for a separator for the rest of the array. Here's an example of what I am saying:while (my $row = $sql_params->fetchrow_arrayref) { #print join("\t", @$row), "\n"; print join(@$row), "\n"; print @$row . " \n"; }
Not sure that's what you were after. Then you do print $@row . "\n";, why? Looks to me like you are repeating yourself.$ perl -e 'print join(qw/a b c d e f/),"\n"' bacadaeaf
-
i used DBI, and was able to connect to the database and get some table column values:
Peter L. Berghold -- Unix Professional
Peter -at- Berghold -dot- Net; AOL IM redcowdawg Yahoo IM: blue_cowdawg
|
---|
Replies are listed 'Best First'. | |
---|---|
Re^2: Monitoring mysql tables in perl
by kamal (Sexton) on Jan 10, 2013 at 15:43 UTC | |
by blue_cowdawg (Monsignor) on Jan 10, 2013 at 15:54 UTC |
In Section
Seekers of Perl Wisdom