DB
AndroidプログラミングのTOPへ あなたは,自分のブログに対して,腹が立った事はあるか。 私は先日,「AndroidでのDB(スキーマ)の存在を確認する方法」を調べようと思った。そしてググった。 この有り様である。 「Android データベース "存在判定"」とい…
データベースへの接続を「強制的に切断」するには,どうしたらよいか。環境は,Linux上で,Ruby on RailsからPostgreSQLにつないでいる場合を想定。 考えうる方式は3通り。 ActiveRecord側から,DB接続を切断する PostgreSQL側から,DB接続を切断する OS側…
スキルチェックの目次へ リレーショナル・データベースを利用したシステム開発の,簡易スキルチェックのための調査表。印刷用。 データベース・エンジニアのレベルを測定する。レベルは,0から4までの5段階。 (0) 非エンジニア (1) 初学者(入門書…
Ruby on Rails 1.2.6 でWebアプリケーションを開発する際,はまった事のまとめ。既に世の中では Rails 3.x以降のバージョンが出ているが, この情報はレガシーRailsアプリケーションの保守・メンテに役立つだろう。 (1) プラグイン関連 (1−1) acts_as…
複数のINSERT文を「動的に」発行するには,どうしたらよいか? 例えば,都合のいいサンプルデータをDBに大量投入したいとか。その場合,INSERT文を大量に発行することになる。どうやって? (案1)SQLをExcelで大量生成 (案2)PREPARE文をExcelで大量生成…
資格「Oracle Master(Bronze)」を取得するための,学習用のリンク集。
以下の5ステップで,適切なインデックスを作成し,SQLを高速化できる。 (1) パフォーマンスを改善すべきSQL(もしくはカラム)を特定 (1−1) ログを閲覧し,実行秒数の大きいものを抽出する。 (1−2) 統計テーブルを閲覧し,よく利用されるテーブ…
データベースには,「トランザクション分離レベル」というものがある。 以下では,それが なぜ必要なのか? デフォルトのレベルでは,どうして駄目なのか? PostgreSQLでは,どうやってレベルを変更・確認するのか? などを取り上げる。 トランザクション分…
以下のRuby on Railsのコードが,意図した動作をしないのはなぜですか。(制限時間1分) やりたい事 2つのスレッドを同時に動かす。 スレッド1では,レコードを登録後,ロールバックする。 スレッド2では,レコードを登録後,コミットする。 タイミング…
SQLの「相関サブクエリ」がわかれば・・・ 巨大なSQLが,迷わずに読めるようになる。 「関数」のような,便利なサブクエリを書けるようになる。 以下では, 「相関サブクエリ」とは何か? 普通のサブクエリ(非相関サブクエリ)やJOIN操作とは何が違うのか?…
Ruby on Railsで,子モデルクラスに記述すべきメソッドの,分類済み一覧表。 「子モデル」とは, DBにアクセスするクラス。 そのクラスのインスタンスオブジェクトがアプリ全体で持ち回され,単一のレコードを扱う上で便利な働きをする。 これに対し,「親モ…
バッチのまとめTOPへ コマンドプロンプトのバッチから,ODBC設定を 新規作成 更新 一覧表示 する方法。接続先のDBMSの例としては,PostgreSQLの場合を取り上げる。 GUIだと,DSNを追加するためには コントロールパネル→管理ツール→データソース(ODBC) のダ…
PostgreSQLで,テーブルを使わずに,複数行のデータを取得する方法。 SQLの中で,大量の定数データを使う必要がある。(例えば,1ヶ月間の日付全部とか,1000までの素数全部とか) だが,それらのデータを,前もってどこかのテーブルに格納しておくことはで…
PostgreSQLで,システムテーブルを利用するための入門。 システムテーブルの使い方を覚えれば,自分が作ったテーブルの統計情報や,メタデータを取得する事ができる。DBそのものの理解も深まる。 (1)情報スキーマ(人間に理解しやすい。調べ物をするとき…
バッチのまとめTOPへ JScript/WSHで,CSVを.xlsファイルに変換するスクリプト。 実は,Excelには致命的なバグ(致命的な仕様)があり,CSVの扱いがひどい。 どれほど工夫しても,CSVをExcel上で開くと, 列がずれたり セルの表示形式を楽に制御できず,値が…
バッチのまとめTOPへ PostgreSQLをバッチで自動実行する方法。パスワード入力なし。 PostgreSQLをコマンドラインから利用するためには,通常はpsqlを経由する。psqlは実行時に必ずパスワードを聞かれるので,バッチによる自動運転は不可能。 技術的雑談-Post…
バッチ・マクロのTOPへ Excelワークシート上のデータを,そのまま直接DBに登録する。VBAだけで済ませる。(Excel以外のツールやAPIが不要) たとえばアプリケーションのテスト仕様書がExcelで,テスト項目の中に「特定のデータをインポート」というのがある…
下記の流れは,一度は体験しておきたい。 ER図を書く。 → 1 から,DDL文+テーブルを自動生成。 → 2 から,テーブル定義書を自動生成。 → 2 から,Webアプリを自動生成。 コーディングなし。 例として,複数人で利用できるブックマークアプリのようなものを生…
あるプロジェクトのDB構造を知りたい場合, テーブル定義書を見る。 ER図を見る。 これらはごく一般的なことだ。 だが,膨大なテーブル群の中で業務上重要なカラムは少ないかもしれない。また,「ビューにするほどではないけど取っておきたいSQL」が生じてく…
ExcelのDBテーブル定義書(.xlsファイル)を読み込んで, Javaのエンティティクラスのソースコードを出力するマクロ。 モデル層で,永続化クラスを手でコーディングしなくて済む。 ダウンロードできます 簡単なサンプルを下記からダウンロードできる。 http:…