1.Iは、2つの(すなわちdatabase_1mとdatabase_current)データベースperlを使って別のデータベースにテーブルを挿入するには?
2.Iは.Iはdatabase_currentで同じテーブルを挿入する(すなわち中database_1m)include_statusテーブルの一部の列が挿入されているがあります。
3.各データベースにはdatabase_1mの時間フィールドがあります。私はすべてのタイミングを取得しますが、2番目のデータベースには最近の時刻行しか必要としませんので、mysqlクエリを使用して最近更新された時刻を取得しますtime =(include_statusからmax(timeを選択してください);)
4.ここでは、同じサブルーチンで両方のデータベースをperlを使ってどのように使用するのでしょうか? コード:
sub data
{
$DBH = &connect or die "Cannot connect to the sql server \n";
$DBH->do("USE database_1m;");
$stmt = "INSERT INTO include_status(time,available,closed,used,busy,reserved,down) VALUES(\"$current_time\",\"$include{'D'}\",\"$include{'B'}\",\"$include{'A'}\",\"$include{'C'}\",\"$include{'R'}\",\"$include{'+'}\")";
my $sth = $DBH->prepare($stmt);
$sth->execute() or print "Could not insert data";
$sth->finish;
$DBH->disconnect();
}
MySQLのクエリ:
select * from include_status where time=(select max(time) from include_status);
私は少し混乱しています。別のデータベースにテーブルを挿入するか、同じデータベース上の別のテーブルに行を挿入しますか?私はあなたが "database_currentにdatabase_1mから同じテーブルを挿入したい"と言いますが、include_statusがテーブル名であることを示す 'INSERT INTO include_status'を表示していますか? –
同じテーブルを別のデータベース(つまりdatabse_Current)に挿入したいのですが、2番目のデータベースに最近の更新された時間の行のみが含まれている必要があります@ user2082599 –
テーブルが存在しない場合はテーブルを作成し、他のテーブルから選択する。 DBH接続はまったく同じですが、dbhが既に定義されているので、接続名としてdbh2を追加するだけです。 –