#!/usr/bin/perl use strict; open (SQL_OUT,">./SpringDO.sql"); foreach my $current_file (@ARGV) { #print $current_file."\n"; open (PLATFORM_IN,"$current_file"); my $platform_id = 3; foreach my $line () { #ignore lines which do not start with '0' if (!($line =~ /^0/)) { next; } my @record = split(/\s+/,$line); my ($m_date, $water_temp, $conductivity, $salinity, $pressure, $DO_percent, $DO_absolute, $battery_remaining); $m_date = '20'.substr(@record[0],0,2).'-'.substr(@record[0],2,2).'-'.substr(@record[0],4,2).' '.substr(@record[1],0,2).':'.substr(@record[1],2,2).':'.substr(@record[1],4,2).'-00'; $water_temp = @record[2]; $conductivity = @record[3]; $salinity = @record[4]; $pressure = @record[5]; $DO_percent = @record[6]; $DO_absolute = @record[7]; $battery_remaining = @record[8]; =comment print "m_date:$m_date\n"; print "water_temp:$water_temp\n"; print "conductivity:$conductivity\n"; print "salinity:$salinity\n"; print "pressure:$pressure\n"; print "DO_percent:$DO_percent\n"; print "DO_absolute:$DO_absolute\n"; print "battery_remaining:$battery_remaining\n"; =cut my ($sensor_id, $m_type_id, $m_value); #water_temp $sensor_id = 20; $m_type_id = 1; $m_value = $water_temp; print SQL_OUT "INSERT INTO multi_obs (row_id,row_entry_date,row_update_date,platform_id,sensor_id,m_type_id,m_date,m_value) VALUES (nextval('multi_obs_row_id_seq'),now(),now(),$platform_id,$sensor_id,$m_type_id,'$m_date',$m_value);\n"; #conductivity $sensor_id = 21; $m_type_id = 2; $m_value = $conductivity; print SQL_OUT "INSERT INTO multi_obs (row_id,row_entry_date,row_update_date,platform_id,sensor_id,m_type_id,m_date,m_value) VALUES (nextval('multi_obs_row_id_seq'),now(),now(),$platform_id,$sensor_id,$m_type_id,'$m_date',$m_value);\n"; #salinity $sensor_id = 22; $m_type_id = 3; $m_value = $salinity; print SQL_OUT "INSERT INTO multi_obs (row_id,row_entry_date,row_update_date,platform_id,sensor_id,m_type_id,m_date,m_value) VALUES (nextval('multi_obs_row_id_seq'),now(),now(),$platform_id,$sensor_id,$m_type_id,'$m_date',$m_value);\n"; #pressure $sensor_id = 23; $m_type_id = 4; $m_value = $pressure; print SQL_OUT "INSERT INTO multi_obs (row_id,row_entry_date,row_update_date,platform_id,sensor_id,m_type_id,m_date,m_value) VALUES (nextval('multi_obs_row_id_seq'),now(),now(),$platform_id,$sensor_id,$m_type_id,'$m_date',$m_value);\n"; #DO_percent $sensor_id = 24; $m_type_id = 5; $m_value = $DO_percent; print SQL_OUT "INSERT INTO multi_obs (row_id,row_entry_date,row_update_date,platform_id,sensor_id,m_type_id,m_date,m_value) VALUES (nextval('multi_obs_row_id_seq'),now(),now(),$platform_id,$sensor_id,$m_type_id,'$m_date',$m_value);\n"; #DO_absolute $sensor_id = 25; $m_type_id = 6; $m_value = $DO_absolute; print SQL_OUT "INSERT INTO multi_obs (row_id,row_entry_date,row_update_date,platform_id,sensor_id,m_type_id,m_date,m_value) VALUES (nextval('multi_obs_row_id_seq'),now(),now(),$platform_id,$sensor_id,$m_type_id,'$m_date',$m_value);\n"; #battery_remaining $sensor_id = 26; $m_type_id = 7; $m_value = $battery_remaining; print SQL_OUT "INSERT INTO multi_obs (row_id,row_entry_date,row_update_date,platform_id,sensor_id,m_type_id,m_date,m_value) VALUES (nextval('multi_obs_row_id_seq'),now(),now(),$platform_id,$sensor_id,$m_type_id,'$m_date',$m_value);\n"; } #foreach $line close (PLATFORM_IN); } #foreach $current_file close (SQL_OUT); `/usr/local/pgsql/bin/psql -U postgres -d wls -f SpringDO.sql`; exit 0;