• 締切済み

mysqlへの送信

mysqlへデータを投げたものをmysql上で確認したいのですが構文の書き方がわかりません。超初心者で言いたい内容もわかりにくいかもしれまんが ご理解ください。

みんなの回答

  • ralf124c
  • ベストアンサー率52% (232/446)
回答No.2

こんな感じの具体例が知りたかったんでしょうか? あくまでサンプルなのでDBサーバへの接続情報などは実際にはCGI本体とは分離して使用します。 ************************************************************* #!/usr/local/bin/perl use DBI; ## SQL権限用ユーザIDおよびユーザPW $uSQL_ID = 'ユーザ名'; $uSQL_PW = 'パスワード'; $SQL_DBName = 'データベース名'; $SQL_Server = 'データベースサーバIPアドレスまたはサーバ名'; $SQL_Access = 'DBI:mysql:'.$SQL_DBName.':'.$SQL_Server; ## データ入力 my $sql = "insert into テーブル名 (カラム名一覧) values (データ一覧)"; f_SQL_Exec($sql); ## データ取得 my $sql = "select * from テーブル名 where 検索条件"; my @aDATA = f_SQL_Data_Get($sql); データ表示 print "Content-type: text/plain\n\n"; foreach(@aDATA){ print "$_\n"; } exit; ## 終了終了 ## ************************************************ ## DB制御「SQL送信:戻りデータあり」: ##       select文など ## ************************************************ sub f_SQL_Data_Get{ my $flg = 0; my $cc = $_[0]; my $db = DBI->connect($SQL_Access,$uSQL_ID,$uSQL_PW); my $cmd = $db->prepare($cc); my $st = $cmd->execute; if(not $st){ print "Content-type: text/plain\n\n"; print "SQLエラー!\n"; print "$cc\n"; exit; } my @aDt; my $num_row = $cmd->rows; if($num_row > 0){ for(my $i=0; $i<$num_row; $i++){ my @aTmpDt = $cmd->fetchrow_array; my $sTmpDt = join("\t",@aTmpDt); push(@aDt,$sTmpDt); } } $cmd->finish; $db->disconnect; # return @aDt; return wantarray ? @aDt:$aDt[0]; } ## ************************************************ ## DB制御「SQL送信:戻りデータなし」: ##       insert文やupdate文など ## ************************************************ sub f_SQL_Exec{ local $cc = $_[0]; local $db = DBI->connect($SQL_Access,$uSQL_ID,$uSQL_PW); local $cmd = $db->prepare($cc); local $st = $cmd->execute; if(not $st){ print "Content-type: text/plain\n\n"; print "SQLエラー!\n"; print "$cc\n"; exit; } $cmd->finish; $db->disconnect; } ## ************************************************

  • sakusaker7
  • ベストアンサー率62% (800/1280)
回答No.1

自分の力だけで解決できたとしても、 MSN相談箱 mySQLへのデータ接続全般について http://questionbox.msn.co.jp/qa3765471.html MSN相談箱 DBIモジュールのインストール http://questionbox.msn.co.jp/qa3766865.html この辺の回答も無視して質問を連発するのはどうかと思いますが。 初心者かどうかという以前の問題です。

関連するQ&A