2009/10/30

SQL Serverの高精度時刻

SQL Server2008 から日時の型にDatetime2(n) が加わりました。高精度版です。
併せて、getDate()の高精度版はSYSDATETIME()になります。
100ナノ秒単位の値が格納されます。DBの更新処理の所用時間より小さい単位なので、期待して試行しました。
ところが、従来通り、mSec単位しか設定できない。資料を手繰っていくと、精度はOSに依存すると書いてあります。
Vist,Win7のクライアント系はどうも、低精度のようです。Winodows 2008 Server だと、しっかり100ナノ秒単位まで格納されてました。
stopwatchは高精度で動作するので、不可能ではないのでしょうが、こんな所にも、差別化を図っているのですね。

2009/10/28

RDBのデータ型

所用があって、.net上で走るRDBのデータ型をピックアップしました。
SQL Server 2008, DB2.9.5,MDB(Oledb4.0),Oracle10g,MySQL5.1,PostgreSQL8.4,SQLite3,FireBird2.1
のData型の比較表を作成しました。
他に、ADABAS, BerkeleyDBが .net上で走行可能なようですが、試行版のADABASが見つかりませんでした。
BerkeleyDBはミドルウェアーが使用するモジュールのリンクが上手く構築できず、放棄しました。orz。

最近のインストーラは親切なので、殆どのRDBが悩むことなく動作させることができます。
各RDBの思想が感じられて面白かったです。DB2とSQLServerはローカルにぶら下がっているRDBを探してくれるので助かります。
Oracleは接続子等を理解しないと駄目なので、プロ志向が高い。他は、理解しなくても動作してくれます。どちらがいいかは意見が分かれそうですが、私は、動作させてから理解するほうが良いと思います。
デフォルトのUser名とPassword名は、判りにくいDBもあり、単純な箇所で躓きます。

PostgreSQLには 、Point,Box,Circle等の型があり、他と差別化が顕著でした。
こうやってリストにすると、シノニムって多そうですね。
SQL Serverの{TimeStamp}はDataTable単位の永久連番で排他用なんですが、他のRDBは日付項目のようです。
これは、誤解を生みやすいと思っていますが、RowVersion型のシノニムで廃止予定だとか。
SQL Server2008にはVarDecimal型があります。(見落としてました。)


抜粋

2009/10/27

CSVとTSV

CSV:Comma separated value


TSV:tab separated value

です。したがって、「タブ区切りのCSV File」というのは用語として矛盾しています。

しかし、現場では普通に交わされています。

ExcelやAccessのインポート・エキスポートの資料でも、 CSV出力の項目でカンマかタブの指定があるので、CSVの配下にタブとコンマがあると認識されているのでしょうね。

このテーマでググってみると、結構ヒットします。

http://kzworks.at.webry.info/200808/article_24.html

http://www.google.com/search?q=%E3%82%BF%E3%83%96%E5%8C%BA%E5%88%87%E3%82%8A%E3%81%AECSV+&rls=com.microsoft:ja:IE-SearchBox&ie=UTF-8&oe=UTF-8&sourceid=ie7&rlz=1I7ADRA_ja

逆に、「TSV-fileで作成してね」と言っても通じないのが現実なんでしょうね。

2009/10/24

IEのMailto:

クライアントのMailerを呼び出して、メール送信を連動させるのに便利な句です。

クライアントの好みでメーラーは様々です。FirefoxなどのBrowserは任意のメーラーとMailToを関係付けることが可能です。ところが、IEは Outlook系のメーラしか関係付けできないようなのです。

(*)私が知らないだけだったらごめんなさい。

outlook系は何かと評価が分かれるので使ってないのですが、IEを使っていて、Mailtoに関連する項目をクリックすると、Outlook系の初期設定を要求する画面が起動します。

 なんか融通が利かない仕様の感じがして、IE離れをして

他のブラウザーも頑張っていますが、大半はIEのようなので、それだけメーラーはOutLook系が多いということなのでしょうか。

2009/10/23

携帯サイトアプリのリンク

携帯サイトアプリで画面遷移は、<a href="xxx">で行います。


HyperLinkや LinkButtonは使えません。(Full BrowserはOK?)

「戻る」や「次へ」の画面遷移をボタンでなくリンクでしたい仕様もあります。

サーバープログラム(.net語)がクリックされたことを認知できません。

HyperLinkやLinkButtonのように、イベント駆動にできません。これは、辛かったりします。



複数の画面から呼び出される共通的な画面は多々あります。



例: 3画面からなるアプリがあるとします。

商品紹介の画面(A)は、注文画面(B)から呼ばれるし、カタログ画面(C)からも呼ばれます。

・(B)から呼ばれた(A)の戻るリンクは(B)に戻る

・(C)から呼ばれた(A)の戻るリンクは(C)に戻る

これらの動作は、イベント処理で分岐させると楽なのですが、a href=xxx での画面遷移になるので、サーバー側処理はできません。

href="xxx" の部分がハードコーディングになるので、戻り先が固定されることになる。これは嬉しくない。

(B)を呼び元ごとに複数枚作成するのは間が抜けています。

(B)を吐き出す前に、href=xxx の部分を動的に書き換えて、吐き出すようすれば、対処できます。



Webアプリと同様だと認識していたら、間違いでした。いろんな所で躓いて、工数が読めなくなりました。

2009/10/19

パスワードの厳格さ

パスワードの設定の基準が OSやアプリケーションによってバラバラです。


アプリは制作者が異なるので、設定基準が異なるのは不可避なのですが、 MSのOSでも異なっているような。



Client系のOS( XP,Vista,Win7)だと IDとPasswordの関係は問われないようです。

 ID="ABCDE" で PassWord が "ABCDE1" であっても OKです。

Windows2008 だと、PassWordに IDも文言が入っていると蹴られます。上記の例だと "ABCDE" がともに存在する。

その上、大文字小文字と数字が必須になっいます。 セキュリティ強化の面ではよいのですが、クライアントとサーバーでPassword基準が異なると、既に運用されているクライアントPCをWindows2008の下に紐付けようとすると、Windows認証がうまくないです。都度 ID/Paaswordの問い合わせ画面が開く事になったりします。ActiveDirectryを導入しても解決できる問題ではなさそうです。

Windows2008のユーザー設定の時にPassword設定し直して、端末に反映し直せば良いのですが、

同じ NT系のOSなのに基準が違うのは、なんかスッキリしません。

 「三ヶ月に一度パスワードを変えろとか、異なる接続先毎に違うパスワードにせよ」という職場もあるので、それに比べれば緩いかもしませんが、一人でいくつもパスワードを覚えられません。せめて、 IDとPasswordに同じ綴りがあってもOKとしてほしいものです。 <-- この感覚の甘さが、蟻の一穴になるのかも知れませんが。

2009/10/18

新幹線のゴミ集め周回

いつの頃か、新幹線車内で、ワゴンサービスの後に、ゴミ回収員がゴミ袋を抱えて回るようになりました。


至れり尽くせりなんですが、爺衆から見れば過保護に映ります。「自分が出したゴミは自分がゴミ箱に捨てる」のがマナーだと思うのです。

自分で出すのを能動的行動とするならば、座っていて、ゴミ袋が回ってくるのは受動的行動(?)なのかな。

 と考えていたら、昔は、紙くず屋さんが回って来てたなぁ。ということは、受動的行動とマナーは別次元のものなのね。

マナーの定義に絶対的基準は無く、時代によって左右されるということで、世代論争に過ぎない訳ね。

 至れり尽くせりの生活は、人を怠慢にするのは事実ですが、サービス業がそうするのは当然の気もします。

社会が至れり尽くせりになり、受動的人間が増えているように映るのも爺衆だからか。

うーん。結論が出せない。 優柔不断な私。

2009/10/17

携帯向けアプリは、通常のWebアプリで

「携帯向けアプリはMobile.Controlで作りましょう」的なガイドを目にします。それを鵜呑みにして、VS2008環境下でMobile.Controlを使えるようにトライして挫折しました。
VS2008には モバイルプロジェクトのテンプレートがありません。
モバイルフォームを使うために、モバイル用テンプレートを登録してあげる必要があります。
参考: http://techbank.jp/Community/blogs/mymio/archive/2009/09/07/3434.aspx
それでも、ToolBoxのモバイルコントロールは有効にならない。
IDEのデザインモードが使えないのは致命的な感じ。

普通のWebアプリで作成しても、不具合がないので、拘る必要があるのか疑問に感じ、BBSに聞いてみました。
「特に必要ない」との回答を得て一安心なのですが、モバイルコントロールの位置づけがハッキリしませんね。
うーん。モバイルControlの出番ってどのケースなのだろう。

携帯端末のシミレーターは、DoCoMo/ Softbankは生きているのですが、AU のは配信停止中のようです。
P1エミレータという有料エミレータもありますが、個別の実機に比べると若干動作が異なるようです。
携帯向けアプリは外観調整(レンダリングの結果)で時間を食うものだと実感した次第。最終段階に多くの時間を要するので、非携帯アプリと比べて、開発時間の配分は難しいですね。
フルブラウザー搭載機が増えてますし、メモリーも多くなっているので、アプリの対象とする機種の線引きが難しいです。
5年前の機種(2004年以前)は未対応としても良い気が少しします。
絵文字入力ソフト「i絵文字」が Windows7 で動作してくれないのは、私ローカル現象なのだろうか。

2009/10/16

本宅の具合が芳しくないので、こちらにミラーサイドを設置します。
本宅
こちらも宜しくお願いいたします。

(*)Google Bloggerの頁には「本人に連絡する」等の本人宛のメール欄設定はできないのでしょうかね。
他のblogにもついていない頁があるので、本宅の機能なのかなぁ。

祈願{サーバー回復} !!