客先へ。
昨日持って帰った資料だけだと、今日の客先デモの進行上支障がでそうってことで30分早く部屋を出て会社によっていくことにする。資料をひっくり返して(←PC上のデータだけど)関係資料をコピー。いやー、前の資料使えば新しく作らなくても大丈夫でしょと言っておきながら、その前の資料のことをすっかり忘れていた。まあ適当にデモはうまくいったんじゃないかと。1回ハードウェアエラーとか出たけど。なんて本番に弱い機械だ。
昼に帰ってきて別の仕事。Excelで作られたDBテーブル仕様書からAccessにテーブルを作成する、と。もちろん運用環境でAccessをデータベースに使うってわけではないのだが。まあいろいろと。こんなもの手打ちしてたら日が暮れるわけで。とりあえず仕様書にはSQLスクリプトを作るマクロが書いてあったので、適当にAccess方言に適合するように改造。が、なんかAccessってOracleで言うところの「@hoge.sql」ってないのな。あと、2つ以上のSQL文を同時に実行できないとか。こういうときはVBAが書ければさくっといけるんだろうけど、かじっただけでそういう肝心のところがわかってない俺としては手動でやったほうが早いという判断に。うーん。WSHとかExcel-AccessあたりのマクロとかVBAとかはもうちょっと体系立てて勉強したいなあ。それでも意外と早く終わったのでいろいろ調べてると、直接mdb作ってテーブルを作るマクロとか見つけた。あー確かにWSHExcelオブジェクト作ってどうこうってやったことあるから、それのAccess版をVBAで出来れば終わりだよなあ。ただちょっとマクロのコードが長くて全部読む気はしなかった。また次の機会に。
さすがに定時ちょうどに会社をでるのもアレな感じなので30分くらい時間をつぶしてから帰る。いや、遊んでたんじゃなくて上のようなことをやってた(それが「遊んでる」のか)んだけど。
実はOracleが入ってる適当なテストサーバにつないでテーブルを定義したあと、ODBC経由のリンクテーブルを作ってそれをテーブル構造だけ(空だから別にデータごとでも一緒か)コピーするってのが最速の解だったんじゃないかって気がしてきた。
ところでAccessでクエリ(Select into 〜ではなく、Create table 〜な)からテーブル作って、テーブル右クリックから削除した場合って、もう一度テーブル作成クエリを実行しようとするとそのテーブルはもうある的なエラーが出てどうしようもない気がする。Drop文実行しても駄目(エラーが出なかったのでDropは成功してると思うんだけど)。いわゆるロールバック領域みたいなところに入ってるのかな。DROPってDDLじゃないのか。よくわからんね。
家PCを再起動させようとしてうっかりシャットダウンしてしまった。あーこれで次帰省するまでもう触れないじゃんかorz。と思ったが、考えてみれば毎日定期的に起動する設定にしてるじゃないか。まあ今日の起動時刻は過ぎてるので明日までは触れないけども。まあそれくらいなら別に。
このレオパレスのネットワークは20kb/sくらいしか速度が出ないと前書いた気がするけど、(平日は知らないが休日でも)朝は下りが200kb/sくらい出てるらしい。んー。まあ概ね問題はないんだけど時々ちょっとなんかやると不便にぶつかったりするんだよなあ。リモートデスクトップのレスポンスが悪かったりさあ。