2006-08-01から1ヶ月間の記事一覧

GMailを活用してみる

GMailにinviteしてもらったのはよかったのですが、変なメールが来るようになったらイヤだなぁ。と思いしばらくメインとしては使っていなかったのですが、ちょっと移行してみることにしました。 とりあえず、ローカルに保存していたメールを全部GMailに預けて…

対象DBだけが○の場合の対処方法

現行のSQLツールでは、SQL92が×で対象DBが○の場合にはテスト対象外としてしまいます。 そこで、「今の実行手順を変えずに」「結果は希望通りに」なるフローを考えます。

テストケースの不足部分

メモ SQL92の範囲 grant/revoke構文(構文はテスト対象独自の可能性) temporary tableの使用 以下の作成など domain character collation translation assertion SQL_sessionステートメント set_transactionステートメント テスト対象DB用の範囲 procedure/fa…

OracleのxだったSQLの傾向

メモ insertでカンマ区切りでたくさんinsertしているもの insert〜default values update以外でのビット(b'010101'など)の使用 サブクエリでunion any/all関数でhaving使用(whereならOK) 禁則ワードが含まれている comment uid

SQL抽出の手順(変更)

全SQLを対象にSQL92パース SQL92に準拠しないSQLを抽出 コンバートする パースする この中でSQL92に準拠しないSQLは利用不可SQL 全SQLを対象にコンバート コンバートしたSQLからAと一致するものを除去 これでSQL92に準拠したのテスト対象SQLが出来上がります…

0823の記事の追記

lock/unlockについて lockはテスト対象DBに含まれます。 対象の表がlock中の場合は失敗します drop tableの場合は対象の表がlock中の場合は解除されるまで待ち続けるので、drop実行前にlockをかけると良い。 unlockはテスト対象DBに含まれません。 ちなみにO…

SQLのフィルタ基準

SQLの列挙ファイルの各行に対して、以下のルールを上から順番に適用します 正規表現の先頭についている(?i)はignore caseを示します。 先頭の○×を除去(パース結果の除去) 正規表現 備考 ^.\t.\t.\t 先頭除去 型を変換 SQL92で使えない型は、テスト対象外にな…

経過

変換プログラムに以下の機能を追加しました。 Prefix 引数1 引数2 効果 空 正規表現 置き換え語 正規表現を置き換え語で置き換えます ! 正規表現 正規表現にマッチする行を削除します !! 正規表現 正規表現にマッチしない行を削除します !!! 正規表現1 正規…

新事実

descというテーブルは、PostgresのInsert分を生成するプログラムを間違えていたことから発生していました。 したがって、Postgresの生のSQL+命令から、全てのSQL文を作り直さなければいけません。 その後、このプロセスを実行する必要があります。これは大…

SQLの分類について

MySQL,PostgreSQLのテスト用SQLをSQL92に準拠したものだけ分類、および、ちょっとだけ修正して、SQL実行ツールで実行するプロセスを考えています。 そのプロセスは、 全部のSQLをひとつにまとめる SQL92に通らないSQLを抽出する 直せるSQLをSQL92に準拠する…

お盆!!

お盆は子守してました。 休んだ気分にならないです。 ちょっとだけ癒された感はあります。 ザビジョンが読み終わりません。どうしよう。。。

SQLのパース結果を○×判定するプログラムを作ってみました。

パーサがトライアル版で公開されていたのでそれを使いました。 ProGrammarというソフトウェアです。 どんなものかは来週書こうと思います。 http://www.asahi.com/life/update/0811/005.html こんなプールで泳いで見たいですね。 でもきれいなのは7分間限り…

C++

久しぶりにC++を書くことになりました。 さっぱり意味がわかりません。 普通のCであればもう少しわかると思うのですが、やっぱり新しいほうがよさそうなのでC++の機能も使ってみています。 ああ、もう、頭がこんがらがる。 http://www.kumei.ne.jp/c_…

PostgreSQLとMySQLのテストSQLについて

自分でSQLを生成するのは大変なので、 すでにテストSQLとして使われているSQLを利用することで、 より簡単に一般的なレベルのSQLの動作を保障できます。 どの程度の件数でテストしているのか? PostgreSQL・・・8247件 MySQL・・・44282件 ※MySQLのSQLにはデ…

面白そうな映画

http://www.finaldeadcoaster.com/ 見てたニュースの中に転がってました。 以前、「ファイナル・ディスティネーション」という映画があって、 それの仲間みたいな映画のようです。 「ファイナル・ディスティネーション」は、 パニックかホラーかどちらかの分…

ビールが飲みたい。

http://www.iza.ne.jp/news/newsarticle/life/cooking/13920 いや、ビールを注ぎたい。 ニュースの中から上の記事を発見しました。 いつもとちょっとだけ違う注ぎ方をするだけで、うまいビールが飲めるようです。 その前にビールサーバが必要か。。。 もう、…

お祭り!

昨日から夏祭りです。 でも今日はひどい雨が降って、雷が鳴って、うわわわわ! って感じになっていましたが、 明日は晴れるようです。 今日はちょっとだけお祭り行こう。

SQL生成ツールの入力ファイルの解析について

入力ファイルを解析する方法を考えてみます。 行単位での構文解析が必要になります。 構文解析に使えそうな方法は以下のようなものが見つかりました。 dW : Linux : 魅力的なPython: Sparkモジュールを使った構文解析 とても高機能で遅いらしいです JavaCC ※…

SQL生成ツールの入力ファイルについて

SQL生成ツールの入力ファイルには2つのファイルを用意します。 文法記述ファイル*1 テスト対象記述ファイル*2 テキストを2つに分ける理由は、 多くのテストパターンで共通に利用できる文法と、 テストパターン毎に入れ替わるDB、テーブルの情報を分離するた…