• ベストアンサー

データの更新

 失礼いたします。 JAVA初心者のjavateaです。 フォームからデータを入力してDBの更新を行いたいと思い、次のような計画を立てています。 1、フォームを作る 2、PHPでのMySQLへの接続法に倣い(PHPの参考書のみあるので)javaで接続。 3、フォームから値の受け渡しを作り、それに応じたSQL文を発行させる。 4、recurseし、自動的に更新する。 ここで、一番問題になるのは2番です。 タグ文章にjavaを埋め込む形でPHPと同じようにいくものなのでしょうか?javaでDBに接続を行いテーブルを表示することは出来ますので、データそのものを書き換える方法を教えていただければと思います。 よろしくお願いします。。('-'。)(。'-')。

  • Java
  • 回答数3
  • ありがとう数1

質問者が選んだベストアンサー

  • ベストアンサー
noname#25358
noname#25358
回答No.2

 補足見ました。  ここでいうクライアント/サーバーアプリケーションとは、Apach Tomcat のことです。  JSPはPHPと同じプログラム直埋め可能型のHTML言語なので、通常のJDBC接続で対応可能です。  ただし、MySQLのページからJDBCドライバーをダウンロードしてくる必要があります。(もうお済ですか?)  ヤフーで、キーワード "java mysql 接続" 等で検索してみてください。  JSPファイルの中に <% Connection conn = DriverManager.getConnection("wwwww"); %>  などと直書きすることでSQLを発行できるようにする方法があるはずです。

javatea_1985
質問者

補足

Apach Tomcat はアプリケーションの一つなのですね。 ありがとうございます。(≧∇≦)/ えと、<% Connection conn = DriverManager.getConnection("wwwww"); %> の書式でドライバへコネクションし、データは取れていますのでJDBCドライバーをすでにダウンロードしているのだろうと思います。

その他の回答 (2)

  • tom11
  • ベストアンサー率53% (134/251)
回答No.3

こんにちは、 参考ホームページです。 http://www.hellohiro.com/jspdb.htm

javatea_1985
質問者

補足

ありがとうございます。 今やっていることにかなり近い内容が書かれていますね。参考にさせて頂き、課題を進めていこうと思います。(* ̄∇ ̄*)

noname#25358
noname#25358
回答No.1

 補足をお願いします。  JSPなどのクライアント/サーバーアプリケーションが必要ですが、それは何をお使いですか?

javatea_1985
質問者

補足

 クライアント/サーバーアプリケーション自体よく分からないのですが、 言語はjava ファイル形式はjsp 送信プロトコルはSMTP サーバーはApach Tomcatを使っています。 単語の意味とか使い方間違っていたらご指摘ください。o(^∇^)o

関連するQ&A

  • Mysql関数でデータ更新に関する基本的な質問

    ■使用環境 FreeBSD 6.2 Mysql4.0.27 PHP5.2.3 Mysql関数 PHP5でMysqlデータベースの更新時に、現在のcolumnの内容に 新しく入ってきた数値を加算したいのですが、sum()という関数 がある事までは解ったのですが、この場合の使い方が解りません。 SQL自体、接続と検索処理しか使った事が無く、初心者と過程して、 教えていただけませんでしょうか。 ※sum()関数の使用が適切で無ければ、申し訳ありません。 ■補足 テーブル名:test カラム名 :ruikei 知りたい事。 入力フォームより送られてきた、新しい売り上げ'$uriage'を 'test'テーブル'ruikei'にPHP取得変数'$uriage'を加算する MySQL文を発行するPHPコード。

    • ベストアンサー
    • MySQL
  • Accessにてデータの更新

    Accessにて、フォームにボタンを作成し、クリックすると フォームのテキストボックスのデータを取得し、 テーブルのデータを更新するVBAを作りたいのですが、 mySQL = "UPDATE テーブル名 SET フィールド名 = '1234'" このようにすると、フィールドが1234のデータに更新されるのですが、 これを namae =Me!テキストボックス名 mySQL = "UPDATE テーブル名 SET フィールド名 = namae" とするとうまくいきません。 正しい書き方をお願いします。

  • 半角をいれるとうまくデータが更新されない

    PHP/MySQL/HTMLで、データを更新する画面を 練習として、作成しています。 保守するデータは、全国の都道府県名です。 都道府県には、番号がふられています。 MySQLのテーブルは、BANG(int 4) KNNA(varchar 40) のような感じです。 第1画面で、都道府県コードを入力し、 都道府県テーブルにデータがあった場合、 第2画面(データ変更画面)を表示します。 表示の際、テーブルから、都道府県名を画面にセットします。 データ変更画面は、 <tr><th>県コード</th> <td><?php echo($bang); ?></td> </tr> <tr><th>県名</th> <td><input type="text" name="KNNA" value=<?php echo($knna); ?>> </tr> というフォームです。 SUBMITボタンを押すと、画面の県名をSQLに接続し、テーブルにUPDATEします。 ここで、県名に東京1と、全角と半角を続けて更新すると、データに綺麗に値が落ちます。 再度、東京1を保守するために呼び出すと、 変更画面には東京1と表示されます。 しかし、東京 1と、京と1の間に半角のスペースを空けると、データには落ちますが、再度画面を呼び出したとき、県名には東京までしか表示されません。 原因が全くわからず、悩んでいます。 素人な質問で済みませんが、どなたか教えていただけたらと思います。

    • ベストアンサー
    • PHP
  • CGIによる、MySQLのデータの更新処理が出来きず困ってます。

    最近、perlの勉強をはじめ、 勉強がてら、 ユーザ管理フォームを作りたく CGIのソースを書いています。 データはMySQLに登録しています。 以下のプログラムを使用し、 データの更新をしたい際に、 更新作業を行うと、 エラーなどは出ず、 ソースにあるように、 「データを正常に更新しました」と表示されますが、 更新されたか?をMySQLで確認すると、 データが更新されておらず、 更新作業を行う前と何ら変わらない値が登録されています。 「update文」のあたりがおかしいのかな?と 感じたのですが、 どこが検討はずれなのか?が分からず、 前に進めないでいます。 アドバイスいただけると大変ありがたいです。 宜しくお願い致します。 ソースは以下の通りです。 ========================================= use CGI; use DBI; $form = CGI->new; print "Content-type: text/html\n\n"; print "<html><body>\n"; # DBに接続 $db=DBI->connect("DBI:mysql:dbname","username","pwd", {RaiseError => 0, PrintError => 1}); if(!$db){ print "失敗\n"; exit; } # UPDATE文作成 $sql = "update test20090702 set agent='$agent',attend='$attend',name='$name',sex='$sex',remarks='$remarks' where name='$name'"; # SQL実行 $sth = $db->prepare($sql); if(!$sth->execute){ print "SQL-fail\n"; exit; } # ステートクリア $sth->finish; # DB切断 $db->disconnect; print "データを正常に更新しました。\n"; print <<"HTML"; HTML ========================================= ■開発環境:Fedora9 ■MySQL:mysql-5.0.77-1

    • ベストアンサー
    • CGI
  • マスタデータ更新

    こんにちは。 システム開発の基礎的なところがわからないので、教えていただきたく、投稿させていただきます。 システム開発をほとんどやったことがないので、言葉が変なところもあるかと思いますが、宜しくお願いいたします。 サーバー上に、AというSQLServerのDBがあります。 今までは、システム管理者のみがAccessからA.DBのリンクテーブルを使い、マスタデータの更新/追加/削除を行っていましたが、今後、リーダークラスの人もできるようにしたい!という要望があり、そのインターフェース部分を作成しています。 いろいろと考え、フロントエンド側にAccessでB.mdbを作成し、そこには、A.DBと同じテーブル構造の一時TBLを作成し、B.mdbを開いた時にA.DBから全データを取得することにしました。(取得するところまではできています) ここから、設定するための画面作成をしますが、最終的に、更新/追加/削除されたデータは、どのようにA.DBにUPすればいいのでしょうか? 考えた方法として (1)B.mdb内に、一時テーブルとは別に、更に同じ構造の変更用テーブルを作成。 設定画面から更新/追加/削除されたデータは変更用テーブルに保存し、全ての処理が終了したら、変更用テーブルにあるデータを1つづつ見て、A.DBへ更新/追加/削除をかける (2)一時テーブルのデータを直接更新/追加/削除し、全ての処理が終了したら、全テーブルのレコードを1件づつ比較し、A.DBへ更新/追加/削除をかける というくらいしか思いつかないのです。 その他に思ったのが、一時テーブルもしくは変更用のテーブルに、レコード毎に「更新/追加/削除」がわかるようにフラグを設けて、そのフラグに従ったSQL文を発行する というくらいです。。。 根本的に、マスタデータに対する更新/追加/削除のやり方が間違っていたりしますか? 誰も聞ける人がいないので、どうぞ宜しくお願いいたします!!!

  • データが更新されたらブリングする

    javaとJavascriptとMysqlでシステム作ってみたいのですが、Mysqlのデータが更新されたらHPの文字をブリングするといったことは出来ますでしょうか 例えば、JAVAでTableを読む無限ループを走らせておいて、何かの信号をJavascriptに与えるようなことは出来ますか。 何分初心者ですので全然イメージがないので、参考になるようなHPの紹介も含めてお願い致します。

  • Access2019でMySQLデータ更新で障害

    初めてご質問します。 Access2019でMySQL(5.7.24)にODBC接続し、直接テーブルを更新したり、フォームからデータ挿入しようとすると、参照も更新もできるのですが、頻繁にAccessが強制終了してしまいます。 環境は以下の通りです。  OS:WindowsServer2016  Access:2019  MySQL:5.7.24  その他:Access、MySQLとも同じサーバー上にインストール  ODBCドライバー:mysql-connector-odbc-8.0.27-win32   MySQLは初の設定のため、ネットなどを参考にインストール、ODBCも無事に接続でき、Access上で作成していたデータを投入して、フォームからのデータ登録を試したところ、頻繁にエラーが発生してAccessが落ちてしまいます。 不思議に思い、AccessよりODBCでリンクを張っているテーブルを参照し、ごみデータの削除をすると同様にAccessが落ちることから、AccessとMySQLDBとの通信等等の障害と感じています。 OSのイベントビューワーでも、Applicationのエラーに複数のエラーが確認できました。 ・障害が発生しているアプリケーション名: MSACCESS.EXE、 ・Aborted connection 4 to db: ・障害バケット 1366483222980313419~ 当初はmysql_upgradeが発生していたので実行しました。 こちらを完了したところmysql_upgradeは表示されなくなりました。 同様にAccess2019も更新し、最新になっています。 AccessからODBC接続をさせ、安定して稼働させるには、どのようにしたらよいか、お知恵をお貸しいただけないでしょうか。

    • ベストアンサー
    • MySQL
  • データの持ち方について

    一般的に、DB(MySQL)へは、何を入れるのでしょうか? PHPで計算可能なものは、なるべく入れない方がいいのでしょうか? 例:年齢を表示させたい場合、DBへ入れておく値 1.誕生日(から計算) 2.年齢 3.何も入れない(別データからPHPで計算可能な場合) なるべくDBへデータを保持しない方がいいのかな? と思い、今回、3でやってみました。 具体的には、mysql_fetch_arrayとかで、データを取り出し、 そこから色々計算して年齢を割り出し、表示させてみたのですが、 DBとPHPを使って色々やるんだったら、 初めから素直にDBへデータを入れといて、 そこから、取り出した方が、 いいのかな? とも思いました。 一般的に、DBへ入れなくても、 (計算等によって)取得できる値については、 やはり、DBへ入れない方がいいのでしょうか? また、ちょっと別件なのですが、 例えば、DBからデータを取り出して、 ソートして表示させたい際、 3つぐらい方法を思いつくのですが、 一般的には、どんな感じで実装するのでしょうか? 1.SQL文でソートをかけて取り出す 2.SQL文で取り出した後、ソート部分はPHPで行う 3.SQL文で取り出した後、ソートはJavaScriptで行なう 特にパフォーマンスを気にしているわけではないのですが、 普通、一般的に、どういう風に実装するのか分からず、質問してみました。 MySQLとPHPを使っている限りは、 余程大規模なサイトでなければ、この辺はあまり気にしなくてもよい感じでしょうか?

    • ベストアンサー
    • PHP
  • データ検索について

    現在フォームに入力された日付を検索して、その値に紐付くデータを 表示させるといった、検索システムを作成しています。 しかしフォームの値が上手く渡りません。 現在の症状としては フォームの値 2008-01-01 × フォームの値 "2008-01-01" ○ 上記の様に値をダブルクォーテンションで囲むと上手く渡るのですが、 囲まないと上手く渡りません。 なぜこのような動作になってしまうのか分からず、解決できません・・・ この解決策をご教授頂けると幸いです。 開発環境は UI Flex DB接続 AMF PHP DB MYSQL 日付のフォーマットはyyyy-mm-dd dateフィールドの値はtext 以下がソースになります。 ************************************************************* //$date フォームの値 function SearchData($date = "") { GLOBAL $dbh; //DB接続 if($date) { $sql = " SELECT * FROM tDate WHERE date = \"".$date."\""; } else { $sql = " SELECT * FROM tDate"; } $result = mysql_query( $sql ); while( $val = mysql_fetch_assoc( $result ) ) { $res_list[] = array( "date" => $val['date'], ); } return $res_list; } ************************************************************* 以上よろしくお願い致します。

    • 締切済み
    • PHP
  • 更新時の文字化けに関して

    初歩的な質問で申し訳ありませんが、教えて下さい。 以下のようにSQL文を作成し、更新処理をしようとしたところ、 どうも文字化けして更新できませんでした。 そもそもの文字設定の基本を把握できていないのが問題ですが、、、 どこの何を設定すれば良いでしょうか? よろしくお願いします。 《DB内容 (MySQL)》 項目 name varchar(50) 照合順序 sjis_japanese_ci 《プログラム内容(phpで記述)》 //データベース接続 $con = mysql_connect("localhost", "root", "999999"); // php_dbデータベースへ接続する if (!$con) { die('接続できませんでした: ' . mysql_error()); } $str = 'あいうえお'; $sql = "UPDATE tbl_ABC set name = '$str'"; if (!mysql_select_db('db_abc', $con)) { echo 'Could not select database'; exit; } $result = mysql_query($sql,$con); mysql_query("set names sjis"); if (!$result) { echo "DB Error, could not query the database\n"; echo 'MySQL Error: ' . mysql_error(); exit; } mysql_close($con) ;

    • ベストアンサー
    • PHP

専門家に質問してみよう