約 143,092 件
https://w.atwiki.jp/ce00582/pages/2236.html
?php require("calldata.php"); $sql = "SELECT * FROM data68"; $result = mysql_query($sql, $link); $n=1; while( $row = mysql_fetch_row( $result ) ){ $matrix[$n][1] = $row[0]; $matrix[$n][2] =$row[1]; $n=$n+1; } $maxn=$n; for ($n=1; $n $maxn; $n++) { $a[$n] =$matrix[$n][1]; $b[$n] = $matrix[$n][2]; } for ($year=5; $year 30; $year++) { for ($age=15; $age 70; $age++) { $n = floor($age / 5) - 2; $wife[$year][$age] = $a[$n] + ($b[$n] - $a[$n]) * ($year - 5) / 25; } } for ($year=30; $year 100; $year++) { for ($age=15; $age 70; $age++) { $n = floor($age / 5) - 2; $wife[$year][$age] = $b[$n]; } } $sql = "truncate eli68"; $exe= mysql_query($sql,$link); $maxn=94*55+1; for ($year=5; $year 100; $year++) { for ($age=15; $age 70; $age++) { $x=0.01*$wife[$year][$age]; $sql = "insert into eli68 values($year,$age,$x)"; $exe= mysql_query($sql,$link); } } $close_flag = mysql_close($link); print("68 有配偶率 計算終了"); ?
https://w.atwiki.jp/ce00582/pages/415.html
?php require("calldata.php"); $sql = "SELECT * FROM pgdata05"; $result = mysql_query($sql, $link); $n=1; while( $row = mysql_fetch_row( $result ) ){ $matrix[$n][1] = $row[0]; $matrix[$n][2] =$row[1]; $matrix[$n][3] =$row[2]; $matrix[$n][4] =$row[3]; $n=$n+1; } for ($n=1; $n 5501; $n++) { $year =$matrix[$n][1]; $age =$matrix[$n][2]; $m2[$year][$age] = $matrix[$n][3]; $f2[$year][$age] = $matrix[$n][4]; } $sql = "SELECT * FROM pdata10"; $result = mysql_query($sql, $link); $n=1; while( $row = mysql_fetch_row( $result ) ){ $matrix[$n][1] = $row[0]; $matrix[$n][2] =$row[1]; $matrix[$n][3] =$row[2]; $matrix[$n][4] =$row[3]; $n=$n+1; } for ($n=1; $n 56; $n++) { $age =$matrix[$n][1]; $gamma[$age] = $matrix[$n][2]; $alpha[$age] = $matrix[$n][3]; $beta[$age] = $matrix[$n][4]; } $sql = "SELECT * FROM pdata11"; $result = mysql_query($sql, $link); $n=1; while( $row = mysql_fetch_row( $result ) ){ $matrix[$n][1] = $row[0]; $matrix[$n][2] =$row[1]; $matrix[$n][3] =$row[2]; $n=$n+1; } for ($n=1; $n 46; $n++) { $age =$matrix[$n][1]; $theta[$age] = $matrix[$n][2]; } $sql = "SELECT * FROM pdata13"; $result = mysql_query($sql, $link); $n=1; while( $row = mysql_fetch_row( $result ) ){ $matrix[$n][1] = $row[0]; $matrix[$n][2] =$row[1]; $matrix[$n][3] =$row[2]; $n=$n+1; } for ($n=1; $n 2201; $n++) { $age =$matrix[$n][1]; $car = $matrix[$n][2]; $startmis[$age][$car]= $matrix[$n][3]; } $sql = "SELECT * FROM pdata14"; $result = mysql_query($sql, $link); $n=1; while( $row = mysql_fetch_row( $result ) ){ $matrix[$n][1] = $row[0]; $matrix[$n][2] =$row[1]; $matrix[$n][3] =$row[2]; $n=$n+1; } for ($n=1; $n 2201; $n++) { $age =$matrix[$n][1]; $car = $matrix[$n][2]; $startmos[$age][$car]= $matrix[$n][3]; } For ($year = 5;$year 100;$year++){ For ($age = 15;$age 69;$age++){ $byear=$year-$age+2000; $m2by[$byear][$age]=$m2[$year][$age]; } } For ($byear = 1941;$byear 1990;$byear++){ $startage =2005-$byear; For ($car=1;$car 50;$car++){ $mis[$byear][$startage][$car] = $startmis[$startage][$car]; $mos[$byear][$startage][$car] = $startmos[$startage][$car]; } For ($age = $startage+1;$age 65;$age++){ $z1 = (1-$gamma[$age-1]) * $m2by[$byear][$age-1]; $z2 = $m2by[$byear] [$age] - $z1; If ($z2 0) { $z2 = 0; } $z3=(1-$theta[$age])*$z2; $z4 = $theta[$age]*$z2; $mis[$byear][$age][1]=$z3; $z5 = 0; For ($car=1;$car 50;$car++){ $z5 = $z5 + $mos[$byear][$age-1][$car]; } If ($z5 == 0){ $z5 = 1; } $v = $z4 / $z5; If ($v 1){ $v = 1; } For ($car=2;$car 50;$car++){ $mis[$byear][$age][$car] = (1-$gamma[$age-1]) * $mis[$byear][$age-1][$car-1] + $v * $mos[$byear][$age-1][$car-1]; } For ($car=1;$car 50;$car++){ $mos[$byear][$age][$car] = ($gamma[$age-1] - $alpha[$age-1] - $beta[$age-1]) * $mis[$byear][$age-1][$car] + (1- $v) * $mos[$byear][$age-1][$car]; } } $z1 = 0; For ($car=1;$car 25;$car++){ $z1 = $z1 + $mis[$byear][64][$car]+$mos[$byear][64][$car]; } $mnew[$byear] = $z1; } $sql = "truncate pgdata12"; $exe= mysql_query($sql,$link); for ($byear=1941;$byear 1990;$byear++){ $x=$mnew[$byear]; $sql = "insert into pgdata12 values($byear,$x)"; $exe= mysql_query($sql,$link); } $close_flag = mysql_close($link); ?
https://w.atwiki.jp/ce00582/pages/395.html
?php require("calldata.php"); $sql = "SELECT * FROM pgdata05"; $result = mysql_query($sql, $link); $n=1; while( $row = mysql_fetch_row( $result ) ){ $matrix[$n][1] = $row[0]; $matrix[$n][2] =$row[1]; $matrix[$n][3] =$row[2]; $matrix[$n][4] =$row[3]; $n=$n+1; } for ($n=1; $n 5501; $n++) { $year =$matrix[$n][1]; $age =$matrix[$n][2]; $m2[$year][$age] = $matrix[$n][3]; $f2[$year][$age] = $matrix[$n][4]; } $sql = "SELECT * FROM pdata12"; $result = mysql_query($sql, $link); $n=1; while( $row = mysql_fetch_row( $result ) ){ $matrix[$n][1] = $row[0]; $matrix[$n][2] =$row[1]; $matrix[$n][3] =$row[2]; $matrix[$n][4] =$row[3]; $n=$n+1; } for ($n=1; $n 56; $n++) { $age =$matrix[$n][1]; $gamma[$age] = $matrix[$n][2]; $alpha[$age] = $matrix[$n][3]; $beta[$age] = $matrix[$n][4]; } $sql = "SELECT * FROM pdata11"; $result = mysql_query($sql, $link); $n=1; while( $row = mysql_fetch_row( $result ) ){ $matrix[$n][1] = $row[0]; $matrix[$n][2] =$row[1]; $matrix[$n][3] =$row[2]; $n=$n+1; } for ($n=1; $n 46; $n++) { $age =$matrix[$n][1]; $theta[$age] = $matrix[$n][2]; } $sql = "SELECT * FROM pdata13"; $result = mysql_query($sql, $link); $n=1; while( $row = mysql_fetch_row( $result ) ){ $matrix[$n][1] = $row[0]; $matrix[$n][2] =$row[1]; $matrix[$n][3] =$row[2]; $n=$n+1; } for ($n=1; $n 2201; $n++) { $age =$matrix[$n][1]; $car = $matrix[$n][2]; $startmis[$age][$car]= $matrix[$n][3]; } $sql = "SELECT * FROM pdata14"; $result = mysql_query($sql, $link); $n=1; while( $row = mysql_fetch_row( $result ) ){ $matrix[$n][1] = $row[0]; $matrix[$n][2] =$row[1]; $matrix[$n][3] =$row[2]; $n=$n+1; } for ($n=1; $n 2201; $n++) { $age =$matrix[$n][1]; $car = $matrix[$n][2]; $startmos[$age][$car]= $matrix[$n][3]; } For ($year = 5;$year 100;$year++){ For ($age = 15;$age 69;$age++){ $byear=$year-$age+2000; $m2by[$byear][$age]=$m2[$year][$age]; } } For ($byear = 1941;$byear 1990;$byear++){ $startage =2005-$byear; For ($car=1;$car 50;$car++){ $mis[$byear][$startage][$car] = $startmis[$startage][$car]; $mos[$byear][$startage][$car] = $startmos[$startage][$car]; } For ($age = $startage+1;$age 65;$age++){ $z1 = (1-$gamma[$age-1]) * $m2by[$byear][$age-1]; $z2 = $m2by[$byear] [$age] - $z1; If ($z2 0) { $z2 = 0; } $z3=(1-$theta[$age])*$z2; $z4 = $theta[$age]*$z2; $mis[$byear][$age][1]=$z3; $z5 = 0; For ($car=1;$car 50;$car++){ $z5 = $z5 + $mos[$byear][$age-1][$car]; } If ($z5 == 0){ $z5 = 1; } $v = $z4 / $z5; If ($v 1){ $v = 1; } For ($car=2;$car 50;$car++){ $mis[$byear][$age][$car] = (1-$gamma[$age-1]) * $mis[$byear][$age-1][$car-1] + $v * $mos[$byear][$age-1][$car-1]; } For ($car=1;$car 50;$car++){ $mos[$byear][$age][$car] = ($gamma[$age-1] - $alpha[$age-1] - $beta[$age-1]) * $mis[$byear][$age-1][$car] + (1- $v) * $mos[$byear][$age-1][$car]; } } $z1 = 0; For ($car=1;$car 25;$car++){ $z1 = $z1 + $mis[$byear][64][$car]+$mos[$byear][64][$car]; } $mnew[$byear] = $z1; } $sql = "truncate pgdata12"; $exe= mysql_query($sql,$link); for ($byear=1941;$byear 1990;$byear++){ $x=$mnew[$byear]; $sql = "insert into pgdata12 values($byear,$x)"; $exe= mysql_query($sql,$link); } $close_flag = mysql_close($link); ?
https://w.atwiki.jp/ce00582/pages/394.html
?php require("calldata.php"); $sql = "SELECT * FROM pgdata05"; $result = mysql_query($sql, $link); $n=1; while( $row = mysql_fetch_row( $result ) ){ $matrix[$n][1] = $row[0]; $matrix[$n][2] =$row[1]; $matrix[$n][3] =$row[2]; $matrix[$n][4] =$row[3]; $n=$n+1; } for ($n=1; $n 5501; $n++) { $year =$matrix[$n][1]; $age =$matrix[$n][2]; $m2[$year][$age] = $matrix[$n][3]; $f2[$year][$age] = $matrix[$n][4]; } $sql = "SELECT * FROM pdata10"; $result = mysql_query($sql, $link); $n=1; while( $row = mysql_fetch_row( $result ) ){ $matrix[$n][1] = $row[0]; $matrix[$n][2] =$row[1]; $matrix[$n][3] =$row[2]; $matrix[$n][4] =$row[3]; $n=$n+1; } for ($n=1; $n 56; $n++) { $age =$matrix[$n][1]; $gamma[$age] = $matrix[$n][2]; $alpha[$age] = $matrix[$n][3]; $beta[$age] = $matrix[$n][4]; } $sql = "SELECT * FROM pdata11"; $result = mysql_query($sql, $link); $n=1; while( $row = mysql_fetch_row( $result ) ){ $matrix[$n][1] = $row[0]; $matrix[$n][2] =$row[1]; $matrix[$n][3] =$row[2]; $n=$n+1; } for ($n=1; $n 46; $n++) { $age =$matrix[$n][1]; $theta[$age] = $matrix[$n][2]; } $sql = "SELECT * FROM pdata13"; $result = mysql_query($sql, $link); $n=1; while( $row = mysql_fetch_row( $result ) ){ $matrix[$n][1] = $row[0]; $matrix[$n][2] =$row[1]; $matrix[$n][3] =$row[2]; $n=$n+1; } for ($n=1; $n 2201; $n++) { $age =$matrix[$n][1]; $car = $matrix[$n][2]; $startmis[$age][$car]= $matrix[$n][3]; } $sql = "SELECT * FROM pdata14"; $result = mysql_query($sql, $link); $n=1; while( $row = mysql_fetch_row( $result ) ){ $matrix[$n][1] = $row[0]; $matrix[$n][2] =$row[1]; $matrix[$n][3] =$row[2]; $n=$n+1; } for ($n=1; $n 2201; $n++) { $age =$matrix[$n][1]; $car = $matrix[$n][2]; $startmos[$age][$car]= $matrix[$n][3]; } For ($year = 5;$year 100;$year++){ For ($age = 15;$age 69;$age++){ $byear=$year-$age+2000; $m2by[$byear][$age]=$m2[$year][$age]; } } For ($byear = 1941;$byear 1990;$byear++){ $startage =2005-$byear; For ($car=1;$car 50;$car++){ $mis[$byear][$startage][$car] = $startmis[$startage][$car]; $mos[$byear][$startage][$car] = $startmos[$startage][$car]; } For ($age = $startage+1;$age 65;$age++){ $z1 = (1-$gamma[$age-1]) * $m2by[$byear][$age-1]; $z2 = $m2by[$byear] [$age] - $z1; If ($z2 0) { $z2 = 0; } $z3=(1-$theta[$age])*$z2; $z4 = $theta[$age]*$z2; $mis[$byear][$age][1]=$z3; $z5 = 0; For ($car=1;$car 50;$car++){ $z5 = $z5 + $mos[$byear][$age-1][$car]; } If ($z5 == 0){ $z5 = 1; } $v = $z4 / $z5; If ($v 1){ $v = 1; } For ($car=2;$car 50;$car++){ $mis[$byear][$age][$car] = (1-$gamma[$age-1]) * $mis[$byear][$age-1][$car-1] + $v * $mos[$byear][$age-1][$car-1]; } For ($car=1;$car 50;$car++){ $mos[$byear][$age][$car] = ($gamma[$age-1] - $alpha[$age-1] - $beta[$age-1]) * $mis[$byear][$age-1][$car] + (1- $v) * $mos[$byear][$age-1][$car]; } } $z1 = 0; For ($car=25;$car 50;$car++){ $z1 = $z1 + $mis[$byear][64][$car]+$mos[$byear][64][$car]; } $mnew[$byear] = $z1; } $sql = "truncate pgdata11"; $exe= mysql_query($sql,$link); for ($byear=1941;$byear 1990;$byear++){ $x=$mnew[$byear]; $sql = "insert into pgdata11 values($byear,$x)"; $exe= mysql_query($sql,$link); } $close_flag = mysql_close($link); ?
https://w.atwiki.jp/nicepaper/pages/66.html
前回記事MySQLでテーブル作成1ではテーブルを作成しました。今回はそのテーブルに対して色々な操作をし、理解を深めていきたいと思います。6月1日記事 目次 テーブルの情報を取得する テーブルがまずあるか確認する。 テーブルの構造を見てみる。 テーブルにフィールドを挿入してみる。 挿入 確認 違った値を挿入してみる。 確認 フィールドを削除してみる。 削除 確認 値や文字列の情報を変更してみる。 変更 確認 テーブルの情報を取得する テーブルがまずあるか確認する。 データベースを選択していなければ。 mysql use データベース名; データベースを選択後 mysql SHOW TABLES; すると次のように表示されるはずです。 mysql show tables; +-----------------------+ | Tables_in_nicepaperdb | +-----------------------+ | information | +-----------------------+ 1 row in set (0.00 sec) テーブルの構造を見てみる。 mysql DESC information; すると以下のように出てきます。 +-----------+--------------+------+-----+------------+----------------+ | Field | Type | Null | Key | Default | Extra | +-----------+--------------+------+-----+------------+----------------+ | id | int(11) | NO | PRI | NULL | auto_increment | | info_date | date | NO | MUL | 0000-00-00 | | | title | varchar(255) | NO | | | | | type | tinyint(1) | NO | | 0 | | | info_text | text | NO | | NULL | | | url | varchar(255) | NO | | | | | status | tinyint(1) | NO | MUL | 0 | | +-----------+--------------+------+-----+------------+----------------+ 7 rows in set (0.01 sec) テーブルにフィールドを挿入してみる。 挿入 本来、phpや他のプログラムの方でMySQLのクエリを実行するので、コマンドラインで挿入することはないです。ただ、値がちゃんと格納されるか等の確認をし、検索もできるかを確認したいと思います。 mysql INSERT INTO information (info_date, title , type ,info_text , url ,status) VALUES ( 2015-06-01 , サイトオープンしました , 1 , サイトオープンしました。今後ともよろしくお願い致します。 , http //www63.atwiki.jp/nicepaper/pages/1.html , 1 ); 文法:INSERT INTO テーブル名(カラム名1,カラム名2,カラム名3...) VALUES (値1,値2,値3....);と書いていきます。値に関してはシングルクオーテーションを付けていきます。また、idの宣言および挿入値の宣言は必要ないです。 確認 mysql SELECT * FROM information; コピペすると、形がかなり崩れるので、表示しません。ご了承ください。アスタリスク(*)はフィールドの全情報を取得するという意味です。 違った値を挿入してみる。 違う型を入れたデータを挿入してみる。typeの部分は数値型なのですが、文字列を入れてみます。typeの部分に「ニュース」というものを入れてみます。 mysql INSERT INTO information (info_date, title , type ,info_text , url ,status) VALUES ( 2015-06-01 , サイトオープンしました , ニュース , サイトオープンしました。今後ともよろしくお願い致します。 , http //www63.atwiki.jp/nicepaper/pages/1.html , 1 ); Query OK, 1 row affected, 1 warning (0.00 sec) 確認 確かに挿入はできるのですが、テーブルを見てみるとどうでしょうか。 mysql SELECT * FROM information WHERE id = 2 ; するとtypeの値がデフォルトの0になっていることが確認できると思います。 数字入れてどうするの?と思いがちな方もいらっしゃると思いますが、プログラムでデータベースの値を読み取って、値が1ならニュース、値が2ならIR情報などと表示させるようにプログラムさせればいいだけです。 フィールドを削除してみる。 削除 設計でstatusの数値に関して公開は2、下書きは1、削除は0と設計しています。履歴を残す場合statusの部分を0にすれば、データベースには残り、フロントエンド側には表示されずにすることができます。なので以下の行為はあまり意味ないですが、やってみましょう。 mysql DELETE FROM information WHERE id = 2 ; 無事削除ができました。 確認 再び挿入してみるとidはどう変化するのでしょうか?確認してみます。 mysql INSERT INTO information (info_date, title , type ,info_text , url ,status) VALUES ( 2015-06-02 , 新しい商品入荷しました , 1 , 新しい商品のnicepaperが入荷しました。 , http //www63.atwiki.jp/nicepaper/pages/1.html , 1 ); するとidが3になっていることがわかります。 値や文字列の情報を変更してみる。 続いては情報の変更です。 変更 mysql UPDATE information SET type = 2 , info_text = 商品はnicepaperを入荷し、10個限定販売です。 WHERE id = 3 ; 確認 mysql SELECT * FROM information; すると情報が変更できていることを確認することができます。 どうでしょうか。このように、データベースの設計をし、あとはプログラム側でクエリを投げるプログラムを書けば、データベースに挿入や削除や値の変更ができます。ここで使ったMySQLの文法を確認すると SELECT文(データベースからフィールド引き出し) INSERT文(フィールドの挿入) DELETE文(フィールドの削除) UPDATE文(フィールドの更新) WHERE句(フィールドの検索) です。 続いては、phpでMySQLへフォームを使って挿入を作っていきます。
https://w.atwiki.jp/party_hara/pages/81.html
<<SGAとPGA>> ■共有プール:SHARED_POOL_SIZE ∟ライブラリキャッシュ 共有SQL領域、PL/SQL領域、LRUで管理 SQLをASCII変換しハッシュ関数を使って比較 ∟ディクショナリキャッシュ データディクショナリの結果レコード ∟UGA 共有サーバのセッション情報(ラージプールがないとき) ●サーバ的にはディクショナリキャッシュが優先される ⇒ライブラリキャッシュのチューニングが重要 ⇒具体的には「再解析を抑える」こと ①ユーザ間でSQLを共有(バインド変数) ②共有SQL領域の無効化防止(DDLの影響) ③文の割り当て解除の防止(領域拡張) ■DBバッファキャッシュ: ●バッファの状態 ―未使用:一度も読まれてない ―クリーン:ディスク=メモリorCRバッファ、上書き可 ―使用済:ディスク≠メモリ、フラッシュまで上書き不可 ―確保済:アクセス中、他セッションはアクセス不可 ●DBバッファキャッシュは2つのリストで管理される ∟LRUリスト 最近アクセスされたブロックを保持するためのリスト MRUとLRUで構成される ∟チェックポイントキュー ディスクに書き出すブロックを管理するリスト "使用済"のバッファが管理対象
https://w.atwiki.jp/atwikimyj/pages/33.html
Win32で動くmysqlクライアントソフトを探していた。 MySQL administratorというフリーソフトを使う。なんか純正っぽい。 MySQL administrator解説 http //honana.com/mysql_gui_tools (1)外部クライアントから接続できるユーザを確認、いない場合は 作成する [1]とりあえずサーバにログイン [2]mysqlにログインして確認(下記参照) # /usr/local/mysql/bin/mysql -u root -p********** mysql SELECT host, user FROM mysql.user; ----- ------ -------- ----+ host user ----- ------ -------- ----+ 192.168.0.% koko localhost localhost koko localhost root server.test.com server.test.com root ----- ------ -------- ----+ 6 rows in set (0.00 sec) mysql exit つまるところ、%のついているユーザは外部から接続できるみたい。 リモートホストから接続できるユーザー(上記の例では 192.168.0.%)が存在しない場合は、以下のように実行してリモートホストからサーバーへ接続するためのユーザーを作成します。 mysql GRANT ALL PRIVILEGES ON *.* TO koko@ 192.168.0.% IDENTIFIED BY ********** WITH GRANT OPTION; mysql exit
https://w.atwiki.jp/n-3104/pages/12.html
前提 特徴 とりあえず使ってみるiBATIS SQL Maps チュートリアル For SQL Maps Version 2.0 February 18, 2006 ibatis-2.3.0.677.zipに付属のsimple_example トランザクション iBATIS-SqlMaps-2_ja.pdf Abator概要 Eclipseプラグインインストール手順 使い方 前提 ibatis-2.3.0.677.zip j2sdk1.4.2_11 Microsoft SQL Server 2000 Eclipse SDK バージョン 3.1.1 Abator code generator for iBATIS 1.0.0 特徴 SQL文を記述するO/Rマッピングフレームワーク。参照系SQLの検索結果とJavaBeansのマッピングを設定ファイルで行うことが出来きる。SQLを直接記述できるためチューニングが容易であるが、特定のDBに依存してしまう。 SQL文を外部ファイルで管理できる。 動的SQL用の独自の構文をサポートしている。 検索結果のJavaBeansのキャッシュ機能がある。 あるBeanのプロパティのBeanについてもまとめて検索できる。この際の方法は以下の2通り。遅延ローディング join とりあえず使ってみる iBATIS SQL Maps チュートリアル For SQL Maps Version 2.0 February 18, 2006 iBATISのサイトで配布されている「iBATIS-SqlMaps-2-Tutorial_ja.pdf」を参考にとりあえず動かしてみようとした。だが、チュートリアルの時点で以下の点で誤植(?)があった。 クラス名は MyAppSqlConfig だが使用例では MyAppSqlMapConfig で、Mapが増えている。 MyAppSqlConfig の resource の値が com/ibatis/example/sqlMap-config.xml となっているが、それまで紹介されたものは examples/sqlmap/maps/SqlMapConfigExample.xml である。 しかも、SQLServer2000の場合は、JDBCドライバのコネクションURLに SelectMethod=Cursor を追加する必要があり、これに気付かず1時間近く嵌ってしまった。まぁ、これもiBATIS-SqlMaps-2_ja.pdfに明記されてはいたが。 http //support.microsoft.com/default.aspx?scid=kb%3Ben-us%3B313181 そして、setBirthDate(null)にするとエラーとなってしまう。newPerson.setBirthDate(new java.sql.Date(new Date().getTime()))とかすればエラーにはならなかったが。 Person newPerson = new Person(); newPerson.setId(12); // you would normally get the ID from a sequence or custom table // newPerson.setBirthDate(null); newPerson.setBirthDate(new java.sql.Date(new Date().getTime())); null を指定できるようにするには、xmlファイルにおいてjdbcTypeを指定する必要がある。前述のガイドでも触れられているが、null値を指定する場合はjdbcTypeを明示的に指定しないとエラーになる場合があるらしい。具体的にはPerson.xmlのinsertPersonにおいてbirthDateにjdbcTypeとしてDATEを追加すればよい。 #birthDate# → #birthDate DATE# ibatis-2.3.0.677.zipに付属のsimple_example チュートリアルがうまく動かなかったので、zipファイルに付属している使用例を使ってみようとしたが、Account.xmlの insertAccount で values の前に ) がついていなかった。。 トランザクション SqlMapClient+startTransaction をしなければ、オートコミットの挙動になった。以下のソースでstartTransactionメソッドを呼ばなければ、insertについてもコミットされていた SqlMapClient sqlMap = MyAppSqlMapConfig.getSqlMapInstance(); sqlMap.startTransaction(); // トランザクションの開始 Person person = new Person(); ... sqlMap.delete ("deletePerson", person); sqlMap.commitTransaction(); // この時点で一旦コミット sqlMap.insert("insertPerson", person); sqlMap.endTransaction(); // insertについてはロールバックされる また、dataSourceのJDBC.DefaultAutoCommitプロパティの値はstartTransactionでトランザクションを開始した場合には有効であるが、開始していない場合は無視された。 transactionManager type="JDBC" dataSource type="SIMPLE" property name="JDBC.Driver" value="${driver}"/ property name="JDBC.ConnectionURL" value="${url}"/ property name="JDBC.Username" value="${username}"/ property name="JDBC.Password" value="${password}"/ property name="JDBC.DefaultAutoCommit" value="false"/ /dataSource /transactionManager iBATIS-SqlMaps-2_ja.pdf 短いが、非常に良くまとまっている。不明点があれば参照すべきガイドである。 Abator 概要 iBATIS用の設定ファイルとソースコードを自動生成してくれるツール。Eclipse用のプラグインも存在する。 Eclipseプラグイン インストール手順 http //ibatis.apache.org/abator.html を参照。更新アクセス先サイトを追加するだけで簡単に追加できる。 使い方 新規メニューの中に "Abator For iBATIS Configuration File" が追加されるので、それをクリックすると abatorConfig.xml の雛形が生成される。この中身を適切に設定すれば自動生成できる。 abatorConfig.xml abatorConfiguration abatorContext jdbcConnection driverClass="com.microsoft.jdbc.sqlserver.SQLServerDriver" connectionURL="jdbc microsoft sqlserver //localhost 1433;databaseName=test;SelectMethod=Cursor" userId="???" password="???" classPathEntry location="C /workspace/iBatis/msbase.jar" / classPathEntry location="C /workspace/iBatis/mssqlserver.jar" / classPathEntry location="C /workspace/iBatis/msutil.jar" / /jdbcConnection javaModelGenerator targetPackage="hoge.bean" targetProject="iBatis/src" / sqlMapGenerator targetPackage="hoge.map" targetProject="iBatis/src" / daoGenerator type="IBATIS" targetPackage="hoge.dao" targetProject="iBatis/src" / table tableName="PERSON"/ /abatorContext /abatorConfiguration ポイントは以下の通り。細かい情報は http //ibatis.apache.org/docs/tools/abator/ を参照。 classPathEntryは絶対パスが無難 targetProjectはEclipseのプロジェクト名+ソースフォルダ名 tableにschema属性をつけたらうまく動かなかった。 また、生成されたDAOは iBATIS DAO framework を前提としているためコンパイルエラーになる。iBATISは 2.3 から DAO framework 廃止し、Spring framework に移行することを推奨しているが、Abatorはまだ対応していないようだ。
https://w.atwiki.jp/tm-mura/pages/44.html
直積するSQLではTEMP表領域を大量に消費する。 そんなSQL発行中に下記SQLを発行すればTEMP使用量がわかる。 SELECT BLOCKS FROM V$TEMPSEG_USAGE;
https://w.atwiki.jp/ce00582/pages/378.html
?php require("calldata.php"); $sql = "SELECT * FROM pgdata03"; $result = mysql_query($sql, $link); $n=1; while( $row = mysql_fetch_row( $result ) ){ $matrix[$n][1] = $row[0]; $matrix[$n][2] =$row[1]; $matrix[$n][3] =$row[2]; $matrix[$n][4] =$row[3]; $n=$n+1; } for ($n=1; $n 5501; $n++) { $year =$matrix[$n][1]; $age =$matrix[$n][2]; $mh[$year][$age] = $matrix[$n][3]; $fh[$year][$age] = $matrix[$n][4]; } for ($year=0;$year 100;$year++){ for ($age=15;$age 70;$age++){ $m4[$year][$age] = 5*$mh[$year][$age]/37; $f4[$year][$age] = 5*$fh[$year][$age]/37; } } $sql = "truncate pgdata04"; $exe= mysql_query($sql,$link); for ($year=0;$year 100;$year++){ for ($age=15;$age 70;$age++){ $x1=$m4[$year][$age]; $x2=$f4[$year][$age]; $sql = "insert into pgdata04 values($year,$age,$x1,$x2)"; $exe= mysql_query($sql,$link); } } $close_flag = mysql_close($link); $today = date("H i s"); print($today); print(","); for ($year=0; $year 99; $year++) { for ($age=20; $age 70; $age++) { print($m4[$year][$age]); print(","); print($f4[$year][$age]); print(","); } } $year=99; for ($age=20; $age 69; $age++) { print($m4[$year][$age]); print(","); print($fh[$year][$age]); print(","); } $age=69; print($m4[$year][$age]); print(","); print($f4[$year][$age]); ?