2014年6月28日土曜日

GPSも、調べ物も、ガチ仕事まで何でもこなせる!! やはり小型Windows 8.1タブレットは最高に素晴らしい

休日出勤の一環で、全く知らない場所にクルマを走らせる必要があったんですが、8インチWindows 8.1タブレットのGPSと地図「gMaps」を使ったら、余裕で全然OKでした。

gMapsは、ナビゲーション等はしてくれないのですが、クルマで走行する際に、地図をノーズアップ(進行方向を常に上にしてくれる)で表示してくれるし、出発地点から目的地までのルートに色を塗ってくれるから、この2つの要素があれば全然OK。

しかも、地図をローカルにキャッシュしてくれるのも嬉しい(帰り道とか)仕様。

8インチだと、画面もそれなりにデカくて見やすいし、ギリギリ片手で握れるし、なんというジャスト・サイズ。

まさかのインターネット・エクスプローラー復活の狼煙を上げた「IE11」は、ストア・アプリもデスクトップ版もどっちも素晴らしいし、ストア・アプリを使うと、スマホ系に決して劣らない手軽なツールとしてめちゃくちゃ使える。

しまいには、デスクトップにして、何の妥協もしない、ガチ仕事がこなせてしまう。

Windows 8.1タブレットは、凄いとかそういうレベルではおさまらず持ってなかったらヤバかった・・・!!級です。

心からありがとう、マイクロソフト。
あと、やっぱり、インテルのAtom Z3740あってのこの威力だと思うんで、インテルも負けじとありがとうです。

ホント、あなたたちは、マジすげぇぜ!!

このタブレットの技術を応用した、日本独自のミニパソの復活も望んでいるんだけど、ちょっと無理かなぁ。

ちなみに、昼休みの時間は、プレイステーション・ヴィータもやっぱり女神ですな。

ミスタードリラーGとか、デッド・オア・アライブ5 PLUSとか、気軽にバシバシ遊べて、そのリフレッシュ・パワーは果てしない。
午後の仕事の効率もアップするってもんだ。

Windows 8.1タブレットとヴィータさん、どっちも手放せんです!!

IPv4のIPアドレスの優先順位を、IPv6よりも高く変更する方法

IPアドレスというと、192.168.1.1みたいな32bit方式のIPv4がおなじみですが、ご存知の通りアドレスの数が枯渇しているので、(Windowsで言えば)7の世代からは、128bitのIPv6も併用されていますね。

しかし、実は、併用ではあるのですが、IPv4よりもIPv6を処理する優先順位の方が高いようになっているんですね。

たとえば、
PING LOCALHOST
ってすると、ループバックアドレスはIPv4の「127.0.0.1」ではなくて、IPv6で返されるのが分かります。

たとえば、仕事なんかで、過去のアプリケーションを最新のシステム上で実行しなければならない・・・というような時、そのアプリケーションの設計が、「取得されるIPアドレスは絶対にIPv4である」という前提でガチガチに固められていたりすると、結構きつい。

しかし、じゃあって言って、安易に(もはや標準になっている)IPv6を無効にしてしまうのも、何が起きるか分からずに怖い。

そこで対策としてIPv4の優先順位を、IPv6よりも先に変更して対策しよう、というのが今回の記事の主旨であります。


■優先順位の確認
優先順位の確認は、以下のコマンドで確認出来ます。
NETSH INTERFACE IPV6 SHOW PREFIXPOLICIES
↓結果
優先順位   ラベル  プレフィックス
----------  -----  -------------------------------
        50      0  ::1/128
        40      1  ::/0
        30      2  2002::/16
        20      3  ::/96
        10      4  ::ffff:0:0/96
         5      5  2001::/32

この「優先順位」10、「ラベル」4の、「プレフィックス」::ffff:0:0/96というがIPv4を示しているんですね。

これを最優先位置の優先順位50,ラベル0に移動させるようにすればOKというわけです。


■優先順位の変更コマンド
優先順位の変更には、かなり長いコマンドが必要なので、バッチファイルを作りました。

一回作っておけば、あとはONEDRIVEからでも実行出来るので便利かなぁと。

コマンドは以下の通りで、「IPV4.BAT」(何でも良い)という名前にでもすればOKです(もちろん、コマンドを一つ一つ入力してもOKです)。

NETSH INTERFACE IPV6 SET PREFIXPOLICY ::ffff:0:0/96 50 0
NETSH INTERFACE IPV6 SET PREFIXPOLICY ::1/128       40 1
NETSH INTERFACE IPV6 SET PREFIXPOLICY ::/0          30 2
NETSH INTERFACE IPV6 SET PREFIXPOLICY 2002::/16     20 3
NETSH INTERFACE IPV6 SET PREFIXPOLICY ::/96         10 4
NETSH INTERFACE IPV6 SET PREFIXPOLICY 2001::/32      5 5
NETSH INTERFACE IPV6 SHOW PREFIXPOLICIES
PAUSE IPv4の優先順位をIPv6よりも先になるよう変更しました。



■コマンドの実行
作ったバッチファイルはどこに(ONEDRIVEにでも)保存してOKなのですが、念のため、実行する時は「管理者として実行する」ってしないといけません。

すると、C:\Windows\System32で実行される形になりますね。


コマンド実行後に、再び
PING LOCALHOST
ってすると、今度はループバックアドレスがIPv4で返されるようになりました。

IPv4の優先順位を上げる事で何か弊害があるかも知れない・・・という心配はありますが、IPv6を無効にしているわけではないし、いざとなれば、また優先順位を変えてあげれば良いだけ(だと思う)ので、このまま行ってみようかなと思います。
この設定を、8インチのWindows8.1タブレット「東芝dynabook tab VT484」でもやってみました。


IPv4を優先に変更したら、妙にネットの閲覧がサクサクし始めて、CPUのクロックでも上がったような感覚になっているんですが・・・気のせいではないと思う。

2014年6月22日日曜日

PS Nowサービスから漂う、ヴィータさんの足を引っ張った「3G通信プラン」と同じ危険な香り

まだまだ確定ではないらしいですが、ついに、ソニーのクラウドゲーミングサービス「Playstation Now(PS Now)」の料金が判明しました(北米)ね。

結論から言うと、今のところ、あくまでも今のところですが、定額遊び放題は無しで、ソフトタイトル個別に課金という、ちょっとやばい結果になっています。

料金プランは、4時間、7日間、30日間、90日間に分かれています。

たとえば、一番料金の高いソフト(ファイナルファンタジー13-2)だと以下のようになっています。


■一番高いソフトの料金表(※あくまでも現時点)
期間 料金 日本円換算
4時間 4.99ドル 約510円
7日間 7.99ドル 約807円
30日間 14.99ドル 約1531円
90日間 29.99ドル 約3062円
※レートは本日現在の1米ドル=102.072063(Google調べ)


うぅうぅ・・・どうなんでしょうね。

嫌でもヴィータさんの足を引っ張った3Gプランと同じ香りが漂う感じがする。

考え方は最高に良いのに、 現実のお金儲けの段階でソニーが負けてしまう悪夢パターン。

ヴィータさんの3Gモデルは、ハードウェアは本当に良いものであり、携帯ゲーム機初の3G通信内蔵モデルとしては、歴史に残る快挙を成し遂げた名機というのは間違いないです。

問題は、ごく単純にdocomoの料金プランが悪かった(使い方と合わなかった)だけだと思う。

もちろん、現実のお金儲けを考えたら、何でも激安な夢のような事ばっかりできるわけないだろ!!と言いたい気持ちはよく分かるのですが、そこを何とかしない限りは、GoogleやAppleにはなれないんだろうな、という気はします。

ただ、このサービスは、テレビ等のゲーム機ではない機器でも使う事が出来るのです。

普通のテレビであるブラビアとか。

そういう、全くゲームをしない層から、ゲームの料金をゲットする目的なら、確かにまぁ、どうなるかチャレンジしてみる価値はあるかな?という気もします。

ゲームやらない層は、ゲームに500円なんて「大金」は頼まれても使わない気がするけど。

じゃあどうすればいいのかって言われると、やっぱり、タイトル個別に課金しなければならないのであれば、4時間はフリープレイで、気に入ったそのまま購入出来るパターンじゃないと、最低限無理かなぁと。

そんなのとっくに会議で却下されとるわ!!とかいう話なら、まぁ、その会議を突破できないと未来は明るくないのかなぁ・・・。


PS Nowというのは、そのものずはりゲームソフトのレンタルなんですね。

ただ、レンタルと言っても、「ストリーミング」のレンタルというのは、後には本当に何にもなーんにも残らないから、時間が経って遊んだ記憶が薄れたら最後、何も無かったのと同じになるんで、個人的には絶対に依存はしたくない。

ストリーミングレンタルに500円払うくらいなら、DL版のゲームソフト購入に2500円払いたい。

それが正直な気持ちなのです。

2014年6月21日土曜日

MILAN CAPSULE 1.3mm オレンジ

今回の記事では、スペインMILAN社の極太シャープペン「MILAN CAPSULE 1.3mmオレンジ」について書かせて頂きたいと思います。


見た目からして極太芯らしい、ふくよかな砲弾型フォルムに、サンキスト・オレンジのようなフレッシュで鮮やかなカラーを身にまとったペンシル。


芯の繰り出しには、ペン尻ノック方式ではなく、軸ノック方式を採用しています。

中間の可動部分には、MILANのロゴが刻印されていて遊び心も感じられて良いですねー。


このシャープペンシル最大の特徴が、透明カバーを外すと現れるビッグサイズの消しゴム。

シャープペンシルに内蔵されている消しゴムの中では最大クラスのサイズであろうと思われます。

実用性とデザイン性を見事に両立させた手法には感服するばかり。

消しゴムにもMILANロゴがプリントされていて、ちょっと嬉しいですね。


1.3mm芯なので、大きな文字がとても書きやすい。

もちろん、砲弾型フォルムの本体も非常に握りやすくて、常用したくなる魅力に溢れています。

メッセージボードやメモ用途だけでなく、選挙の投票用紙に候補者の名前を書くためのマイ・ペンシルとしても良いかも。

1.3mmは、シャープペンシルは苦手という方にもオススメ出来ます。

ちなみに、「1.3mm芯って買いにくいのではないか?」と心配される事もありましょうが、コクヨの鉛筆シャープが置いてあるお店なら、100円ショップでも替芯として1.3mmが買えるようになっているので、入手性にほぼ不安は無いと言えるでしょう。

使いやすくて楽しいスペインの太芯シャープペンシル「MILAN PL1 touch 0.9mmブルー」

今回の記事では、スペインはMILAN社の太芯シャープペンシル「MILAN PL1 touch 0.9mm ブルー」について書かせて頂きたいと思います。


握るだけで楽しくなるカラフルなボディ!!

先日、グリーン軸を購入させて頂きましたが、あまりにも使いやすい上に楽しくて、短期間のうちにもう一筆、ブルー軸を購入させて頂きました。


心が浮き立つような配色ばっかりでなく、全体が軟質素材でコーティングされているため、どんな角度で握ってもグリップに不安が無いのもまた美点。


このシリーズは消しゴムが大きなポイントになっていまして、ピンク色のクリップパーツ部分をクルクル回すと、ペン尻部分から消しゴムが繰り出されてきます。

消しゴムは完全に収納可能なので、破損の危険性は少ないのですが、筆記しているうちにクリップパーツが軽々と回ってしまうので、気がついたら消しゴムが意図せず繰り出されてしまう事がありました。


0.9mmは、確かに細密な文字を書くという用途には向かないのですが、シャープペンらしいカッチリ感と、鉛筆の柔らかい書き味が中間で共存していて、常用しても気持ち良い芯径ですね。


ちなみに、一緒に、同社の1.3mmのシャープペンシル「MILAN CAPSULE 1.3mm」と、カラフルな消しゴム(ドイツはステッドラー社製)も購入させて頂きました。

カラフル文具も良いものですねー。

2014年6月18日水曜日

DOA5 PLUSの完成度の高さに大きな衝撃を受ける

久しぶりに購入した格闘ゲーム「デッド・オア・アライブ5 PLUS (以後DOA5+)」ですが、あまりの完成度の高さ、想像を超える様々な仕様の実装を目の当たりにして、良い意味で大きな衝撃を受けています。

やはり、操作しているだけでも常に楽しいという見事な造りになっているし、格闘ゲーム素人ウェルカムな設計なのが瞠目ポイント。

老舗格闘ゲームのシーズン5ともなると、もはや従来のファンやプレイヤーしかついて来られないテクニカルな設計になってたりするかな?と思ったら、そうじゃない。

アーケードモードなんて、難易度を下げれば、格闘ゲームの素人でも普通に勝ち進めて日常のストレスを発散する、健康ツールに早変わり出来るレベルなんです。

トレーニングモードも親切だし、戦闘中に表示される技のコマンド表も、どこまで入力したかが分かるようになってたり、現在入力中の技に近いコマンドを検索して自動表示とか、これだけでもプログラム大変だったろうに・・・すげぇなと感心させられてしまう。

全体的に、開発のチームニンジャの格闘ゲームへの深い造詣や技術力って、やっぱり最強クラスだなぁと感心されられる事ばかり。


ステージも単なる背景だったり、オブジェクトが動いて凝っているね、でとどまっていません。

傾いたり・・・。


爆発したり、ステージの一部が破壊されて次のステージに移行したり、とにかくダイナミック。

こういう演出は、確かにドリームキャストの時代(DOA2)から実現してはいたものの、手のひらの携帯機ヴィータさんでガンガン動かされると、やはり格別感はありますね。


圧倒的なのは、メモリカードに保存したプレビューをリアルタイムで自由な角度から眺めたり静止したり出来る機能です。

なんだそれは!!と思わず目がポポポポーン状態。

秒間60フレームでバンバン動いている戦いを、アナログスティックで自由な角度から見られるんですが、ちょっとビビる。


一瞬で決まって終わる技のシーンも、ストップかけられる!!

スクリーンショットの撮影も楽々です。

もしかしてPS4のリアルタイム・ゲーム動画録画よりすげぇ・・・かも。

こっちはヴィータの演算能力でぐりぐり動かせてしまうわけだし。


それと、ゲーム中のポリゴンモデルはやや粗いとか思っていたけど、プレビューで拡大してゆくと、実はかなり精密なのもよく分かります。

ヴィータのスクリーンショットは960x544ドットだから、PCの大画面で見ると荒く感じてしまうかも知れないですが、実際は5インチの有機ELにギュッと押し込まれるため、実機はホントに綺麗。

ヴィータに関しては実機で見ないと画質の評価が不可能という状態が継続してますねー。


それと、リアルタイム・デモシーンになると、秒間60フレームで激しくバトルしなくて良い分、えっ何でこんなに描けるの?

というくらいの高画質タイムになります。


エフェクトもしっかりかかってて、やりますのぅ・・・


さらに、ただ見ているだけーではなくて、アナログスティックでグリグリ角度を変えられます

どんだけ凝りまくりなのか。


DOA5+は、最初から全キャラクターが使える仕様みたいで、ボス格の「Alpha 152」というキャラもいきなり使えるのですが、これがとてつもなく人の道に外れた鋭い動きと強さで、ゲームらしくて非常にオススメです。

空中でギュンギュン回転したり、浮遊したり、遊び心満載な所が何と言ってもイイ。

半透明の表現もバッチリで、やっぱり技術力とヴィータの性能が噛みあった時の爆発力はスゴゴゴ。


海外の技術力の前に、日本のゲームメーカーはもう歯が立たなくなった・・・みたいに言われる事が多くなってるし、実際、大規模なオープンワールドのゲームとかではそうなっているのかなぁと思わされる点も多いですが、DOA5+を見ていると、なんか日本だって、負けてないんじゃないか?とか言いたくなるなぁ。

いや、個人的には格闘ゲームは日本のしかやらない気がするし。


DOA5+は、女性キャラに異様に気合が入っているのが有名ですが、どっこい、男性キャラクターも海外ドラマばりにシッカリと作られていたりします。


この度を越して軽いノリの「ザック」ですが、実はかなり好き。

ドリームキャストのDOA2で最初見た時は、これはネタキャラか?と思ったけど、このノリがブレず飽きず続けられ、しっかり定着しているのが偉い。

この「リグ」も良いですねぇ。

作業着で戦う(コスチュームは変更可能)のがまた新鮮。


海外ドラマ見ていると、リグとザックあたりのコンビで、何かミニゲームとかやりたいなぁとか思えてしまう。

それと、DOA5+は、なんとゲームだけでなくて音楽もハイグレードなんです。

「Gotta Move on」などなど、聞き惚れてしまう曲が豊富。

残念ながら、正式なミュージック・プレイヤーは実装されていませんが、キャラクターのBGMを自由に変更出来るモードがあって、そのモードの中で(操作は不便だけど)音楽を試聴出来るので嬉しい。

カーオーディオにヴィータさんを有線接続して、かけまくり。

ヴィータさんは、さすが音楽のソニーが設計した機体だけあって、こういう使い方すると内蔵音源と部材の配置の良さも実感出来て二度美味しいです。

DOA5+は、個人的には携帯機最高の3D格闘ゲームに昇格してますよー。

二番目はPSPの鉄拳DRかな! あれも大したものだった。

2014年6月14日土曜日

ヴィータ版のデッド・オア・アライブ5 PLUSがナチュラルに面白い

ヴィータ版の「デッド・オア・アライブ5 PLUS」(DL版)を購入してみました!!

私は格闘ゲームは最弱レベル(超よわい)なんですが、手軽に技術の進化やストーリーを楽しめる稀有な分野として、格ゲーそのものは好き。

特に、ドリキャスでDOA2、XboxでDOA3にかなりハマってたんですよね。

だったらもっと早く買っておけよという話ですが、デッド・オア・アライブ5 PLUS(以後DOA5+)、色々あって今日購入です。

ちなみに、PSストアって「あいうえお別」になってますが、「た」のグループでは見つからなくて焦りました。
で、なぜか「か」のグループにありました。

そう、「コーエーテクモ デッドオアアライブ5 PLUS」だからなんですねー・・・。


ダウンロードするゲームファイルの容量は約2.5GBもあるんですが、PS4買った後だと、なんかやけにスリムに感じてしまって時代を感じてしまう。

ただ、2.5GBと言っても、最近はファイルの圧縮技術がかなり進んでいるみたいなんで、昔とは中身の詰まり方が違うかも。


DOA5+ですが、さすがのヴィータさんでもかなり辛いのではないか?と心配していたのですが、ナチュラルにかなり面白い!!

なんか、操作してて気持ち良いんですね。
DOA2やDOA3やってた記憶がほぼ消失してしまった状態なんですが、あの時に感じた熱いワクワク感がヴィータさんからバンバン発散されて来ます!

スクリーンショットで見ると、解像度が粗く見えますが、例によってヴィータさんの5インチ有機ELで見ると全然キレイ。
しかも、秒間60フレームは当然として、操作に対する反応の良さ、演出等の滑らかさが見事に噛み合っていて、プレイ中はむしろコリャーやるなぁ!!って感想ですねー。


ステージの一部が破壊され、次のステージに移行するシーンとか、あらゆる動きや演出がド派手。
とか、とか、ヴィータさんスゲェ的な話も沢山あるんですが、DOA5+の良さは、細かい設定や、ゲーム・モードやチュートリアルとかが妙に充実していて、全体的に初心者を歓迎してくれる親切設計が光るのに感心してしまった。

ネットでは、最初のDOAとしてもオススメです、みたいな評価もあったけど、なるほど確かに。


60フレームでギャリギャリ動かないといけないプレイ中画面は、さすがにキャラクターモデルがちょっと粗い(有機ELモニタでは気にならないけど)ですが、リアルタイム・デモになると、さすがうおっ!となるくらいキレイですね。

あと、個人的に大期待していたストーリーモードですが、予想外のシステムで期待以上のデキ。

なんか、キャラ別のアーケードモードの合間にデモシーンが追加される形だろうと思ってましたが、全く逆で、1本のストーリーの中に色々なバトルが組み込まれている感じなんですね。

デモシーンに見入っていたら、半シームレス(?)にその流れでバトルが始まってしまい、相手にバキッと殴られて初めて「えっ、操作すんの!?」みたいなとんでもない間抜け状態になってしまった私・・・。

このシリーズ、キャラゲーとしても良いし、3D格闘ゲームとしてもレベル高いし、何気に携帯ゲーム機用3D格闘ゲームとしては最高完成度かも知れないし、今後もシリーズ続いてくれって願ってしまいます。

というかPS4でDOA6出たらすぐ買うと思いますよ。

2014年6月12日木曜日

(32bit限定)SQL-Server 2000でも、関数の中でシステム日付を取得する方法

まだまだ現役かと思う、マイクロソフトの古いRDBMSの「SQL-Server 2000」ですが、何と、関数の中でシステム日付を求める事が出来ません。

GETDATE()のような、実行のたびに結果が変化する関数は使えないという謎の仕様になっています。

システム日付を使いたい場合は、関数の外側で求めて、それをパラメータとして関数に引き渡して中で使う・・・というやり方がセオリーなんですが、既存の関数のインターフェースを絶対に変えたくないし、仕様変更等で内部でシステム日付使いたい・・・みたいな時には、結構困るかも。

そこで、ちょっと無理やりなのですが、32bit限定で、関数の中で使える、システム日付を求める関数を作ってみました。

この関数を、自分で作った関数の中から呼び出せばOKです。

やり方は、OLEオートメーションプロシージャを使って、スクリプトエンジンを呼び出し、JScriptで記述したシステム日付取得関数を間接的に呼び出してしまう・・・というものなんです。

32bit限定というのは、呼び出しているスクリプトエンジンが64bit対応してないんですね。

ちなみに、手のひらタブレットの東芝dynabook tab VT484で作りました。

SQL-Server 2014 EXPRESS(32bit版)なんですが、SQL-Server 2000でも使えます。

コードは以下のようになります。


CREATE FUNCTION F_GETDATE()
RETURNS DATETIME
AS
BEGIN
   DECLARE 
   @oOLEAP INT, --OLEオートメーションインスタンス化用
   @iHR    INT, --OLEオートメーションプロシージャ実行結果
   @sRES   VARCHAR(8000), --文字列型の結果格納エリア
   @dtRES  DATETIME,      --日付型結果格納エリア
   @sJS    VARCHAR(8000)  --JScript格納エリア
   ;
   
   --スクリプトエンジンのインスタンス化
   EXEC @iHR= 
   sp_OACreate 'MSScriptControl.ScriptControl',@oOLEAP OUT;

   IF @iHR <> 0
   BEGIN
      RETURN CAST(0 AS DATETIME);
   END;
   
   --言語の決定
   EXEC @iHR=
   sp_OASetProperty @oOLEAP,'Language','JScript';
   IF @iHR <> 0
   BEGIN
      RETURN CAST(0 AS DATETIME);
   END;
   
   --初期化
   EXEC @iHR=
   sp_OAMethod @oOLEAP,'Reset'
   IF @iHR<>0
   BEGIN
      RETURN CAST(0 AS DATETIME);
   END;
   
   --JScriptで日付取得関数作成
   SET @sJS =
   'function JS_GETDATE()' +
   '{'                     +
   'var oDATE = new Date();' +
   'var sDATE = "";'         +
   'sDATE += new String(oDATE.getFullYear()) + "-"; ' +
   'sDATE += new String(oDATE.getMonth()+1)  + "-"; ' +
   'sDATE += new String(oDATE.getDate())     + " "; ' +
   'sDATE += new String(oDATE.getHours())    + ":"; ' +
   'sDATE += new String(oDATE.getMinutes())  + ":"; ' +
   'sDATE += new String(oDATE.getSeconds())  + "."; ' +
   'sDATE += new String(oDATE.getMilliseconds());   ' +
   'oDATE = null;                                   ' +
   'return sDATE;                                   ' +
   '}';
   
   --JScriptで作った関数をメソッド登録
   EXEC @iHR=
   sp_OAMethod @oOLEAP,'AddCode',NULL,@sJS;
   if @iHR<>0
   BEGIN
      RETURN CAST(0 AS DATETIME);
   END;
   
   --JScript関数を実行して戻り値を文字列で取得
   EXEC @iHR=
   sp_OAMethod @oOLEAP,'Run',@sRES OUT,'JS_GETDATE';
   IF @iHR<>0
   BEGIN
      RETURN CAST(0 AS DATETIME);
   END;
   
   --日付型に変換
   SET @dtRES = CAST(@sRES AS DATETIME);
   
   --メモリ解放
   EXEC @iHR=
   sp_OADestroy @oOLEAP;
   if @iHR<>0
   BEGIN
      RETURN CAST(0 AS DATETIME);
   END;
   
   --結果の返却
   RETURN @dtRES;
END


ちなみに、OLEオートメーションプロシージャは、最初は使えなくなっているかも知れません。 その場合は以下で使用可能になります。

sp_configure 'show advanced options', 1;
GO
RECONFIGURE;
GO
sp_configure 'Ole Automation Procedures', 1;
GO
RECONFIGURE;
GO

実行結果は以下の通りです。
GETDATE()と同じように動作し、自作関数からも動作します。




ただ、OLEオートメーションプロシージャって、どうなんだろう。

作っておいて今更ですが、業務システムとかで安易に使うと、リソースデッドロックとか、パフォーマンスの低下とか、色々問題が起きるかも知れないんで怖いかなぁと。

個人用途とかなら良いかも知れない。

ただ、OLEオートメーションプロシージャを使うと、確かに色々な事が出来るようになるので便利ではありますね。

2014年6月8日日曜日

手のひらタブレット・東芝dynabook tab VT484に、SQL-Server 2014 Expressをインストールしてみました

8インチの手のひらWindows 8.1タブレットである「東芝dynabook tab VT484」に、いよいよ「SQL-Server 2014 EXPRESS」をインストールしてみました。


マイクロソフトのサイトから、32bit版のファイルをダウンロード。
東芝dynabook tab VT484は、CPUそのものは64bitなんですが、OSであるWindows 8.1は32bit版なので、ソフトは全て32bit版(x86)を選択する必要があるので若干の注意が必要です。

2014年の秋・冬くらいには、CPUもOSも64bitに揃えたバージョンが発売されるかな?

Windows 7からは64bitが標準になってるので、個人的な環境も全て64bitに揃えて行きたいところですが・・・今は関係ない話ですね。


それにつけても、SQL-Server 2012の時も思いましたけど、毎日普通に持ち歩くモバイルマシンでSQL-Server 2014が動く時代になったんですよねー。
画期的だ。

ノートPCとデスクトップPCの垣根が無くなった時もそうでしたが、大げさでも何でもなく、この「世界が確実に変わる感じ」ってのは、もう何回味わっても良いもんですね。


インストール中、照合順序の指定はバイナリにしておきました。

これでシステムデータベースの照合順序が決定されるのですが、後から作るユーザーデータベースとここの照合順序が違ったりすると、クエリーによってはエラーでコケたりする羽目にもなるんで、少し慎重にしとかんとならんです。


8インチタブレットだからって、特に引っかかる点もなく、本当にスルスルとSQL-Server 2014 Expressがインストール完了。

このアッサリ感もたまらんです。

あと、起動してからプロバイダの一覧を見ると、最初から「Microsoft.ACE.OLEDB.12.0」が出て来て地味に嬉しい。

Microsoft Office 2013プリインストールマシンだからかな? やはり良いもんですねー。

ちなみに、32bit版OSの東芝dynabook tab VT484では関係ない話ですけれど、64bit版OSで、SQL-Serverよりも先に32bit版Microsoft Officeをインストールしてしまうと、このプロバイダが(普通のやり方では)インストールできなくなるトラップ(?)「32bit Officeを消さんとアカンで!!」に引っかかるんで注意が必要です。


インストール終了すると、スタート画面にSQL-Server 2014関連のショートカットが沢山作られますね。

Windows 7のスタートメニューと比べて、全画面を使うこっちのメニューは評判悪いみたいですが、個人的には、8インチのタブレットでは断然こっち方式が良いです。


SQL-Server 2014は、スタート画面の右上に中サイズでピン留め、という特等席を用意しました。
モバイルというけど、Excel 2013、SQL-Server、PowerShellが全部揃っているのはいざという時に救いの神ですよね。

簡単な事ならいいけど、ちょっと入り組んだ事に対処しようとすると、タッチで簡単ポン的な流行のモバイルアプリは地獄的になってしまう。
素直に何でもやれるデスクトップ・アプリと共存してるWindows 8.1は、本当に作ってくれてありがとうって事が多いです。

ちなみに、GPU管理ツールのManagement Studio 2014ですが、EXPRESS用の制限版ってのは無くて(!!)、何と製品版をそのまま無償で使わせてくれるという特大ボーナスになってます

まじかよMicrosoft・・・ずっとこの路線をやって下さるとありがたいです。


とりあえず、OpenRowset()関数でExcel2013のファイルの中身を読んでみよう!!

と思うと、最初は使えないんで、お約束の以下のコマンドで読めるように変更します。
ついでに、コマンドシェルのコマンドを実行出来るように、xp_cmdshellも許可しときます。

昔はこの手の設定するのに別の設定用ツール立ち上げてやらされてたんですが、今ってもう、全部コマンド叩いて設定変更する流儀に変わってるんですよね。
sp_configure 'show advanced options', 1;
RECONFIGURE;
GO

sp_configure 'Ad Hoc Distributed Queries', 1;
RECONFIGURE;
GO

sp_configure 'xp_cmdshell', 1;
RECONFIGURE;
GO



とりあえず、Excelファイルをc:\直下に置いてクエリー実行してみると、特に何の問題もなくテーブルとして読み込めました。
SELECT M.*
FROM OPENROWSET(
'Microsoft.ACE.OLEDB.12.0',
'Excel 8.0;DATABASE=C:\TEST.XLS',
'SELECT * FROM [Sheet1$]') AS M;
ちなみに、今やOSと一体化したオンラインストレージである「ONEDRIVE」に格納したExcelファイルからも、ちゃんと直接読み込む事が出来ます。
しかし、ローカルだと良いのに、ONEDRIVEだとエラーが出るって場合は、単純にアクセス拒否されている可能性が高いです。

何で自分なのにアクセス拒否食らうの?と思うかもしれないですが、Windows認証ではなく、SQL-Server認証でSQL-Serverに入っている場合は、ONEDRIVEに対するアクセスは、あくまでもSQL-Serverのサービスがバシバシかけてるんで、そっちに読み取り許可とか与えてないといけないです。

あと、MSDTC関連の設定とかもあるけど、手のひらモバイルでどこまでやるか?という問題もあるんで、まずはリソース消費を低く抑制する事を考えながら、ゆっくりやって行きたいと思います。

お土産に頂いた台湾ボールペン(2)「台湾ボールペン・ウェーブ彫刻」

なんと、お土産に台湾のボールペンを頂く事が出来ました。

しかも2筆目になります。
この場をお借りして心から感謝をいたします。
ありがとうございます。


台湾の加工能力スゲー!!

えーっ、これまじですか。

ウェーブ柄の彫刻が全面に入っているんですが、こんな手間のかかる加工したペン・・・。
見たくとも、簡単には見られないくらいのハイレベルっぷりに思えます。


しかもクリップには花の彫像まで付いている徹底ぶり。

こ、これは!!

こういうのもあるのか!!


しかも、メタリック・バイオレットの塗装と、ゴールドトリムの組み合わせも上品で、なんというか、ハイソサエティな香りというものを感じてしまうのでありました。


ペン先の繰り出しは回転方式。

ぬうっ、と適度な重みで滑らかに繰り出されます。


あまりにも軸が芸術的なんで、逆に書き味が心配になりますが、実に書きやすい!!

こんなに豪華絢爛な軸なのに良い意味で事務用ボールペン並みの書きやすさです。

飾っても良いですが、かなり高い実用性もあるので、会社とかでバンバン使ってもよろしかろうと思います!!

ボールペン道は奥深い!!