2017/03/26

sql_modeは悪魔の設定

なぜそのSQL文がエラーにならないのか?

久しぶりにMySQLを使ったシステムのお仕事。INSERT文でnot null制約の付いたカラムが書かれていないのに、エラーにならずに実行されていて???となったが、これ、sql_modeに STRICT_ALL_TABLES も STRICT_TRANS_TABLES もセットされていないからだった。

STRICT_ALL_TABLES と STRICT_TRANS_TABLES

MySQL :: MySQL 5.6 リファレンスマニュアル :: 5.1.7 サーバー SQL モードの「厳密な SQL モード」にSTRICT_ALL_TABLES と STRICT_TRANS_TABLES の説明がある。厳密モードが有効でない場合、MySQL は無効または欠落した値に対して調整された値を挿入し、警告を生成します とあり、not null制約のカラムに値がセットされない場合は「調整された値を挿入」して辻褄を合わせてくれる。まさに、「小さな親切大きなお世話」な仕様だ。

デフォルト設定はどうなっているのか?

5.6, 5.7ではSTRICT_TRANS_TABLESがセットされる。
5.5以前にはSTRICT_TRANS_TABLESはない

5.6になってまともになったようだ。

AWS RDS MySQL 5.6にはSTRICT_TRANS_TABLESはない

ちゃんと設定しましょう。

今の設定はどうなっている?

my.cnfを確認。なのだが、

  • MySQLのサーバはインフラチームが管理していて、ログインできない
  • RDS MySQLなのでmy.cnfを見れない
といったケースもある。何のことはない。mysqlなどクライアントプログラムから繋いで
SELECT @@GLOBAL.sql_mode;
とすればOK。

sql_modeを変更するときの影響範囲は?

sql_modeはmy.cnfで設定する。ので、Server全体に影響する。だが、session単位(接続単位)で変更することができる。

SET SESSION sql_mode='設定したいmode';
複数のmodeを設定する場合も
SET SESSION sql_mode='STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION';
とすればよい。
いちいち書くのが面倒?当然Connectionを管理するライブラリ使っているでしょうから、そのライブラリをよーく調べてみましょう。SpringFrameworkなら、AOPでさっくりと。



2017/02/25

リクルートカードの繰上返済をWebで申し込む

楽Payの上限は10万円

1.2%のポイントがたまるリクルートカード。いいのだが、支払いが楽Payというリボ払いになり、毎月の支払いが10万円までになってしまう。リボで翌月以降に支払いがまわってしまうと、せっかくの1.2%が台無しになってしまうので、繰上返済を絶対にしなければならない。

コールセンターに電話してオペレーターに繋いでもらって繰上返済の手続きを依頼…。面倒だし時間はかかるし、1.2%の価値が全部吹き飛んでしまう。もっとスマートに申し込めないものかと、ググってみた。

繰上返済の手続きはWebからもできる

あっさりヘルプが引っかかった。
ショッピングリボルビング払いの繰上返済(一部・全額)をしたいときはどうすればいいですか?
リクルートカードもこの(3)の手順でOK。端数が揃わないだろうけど、残高を上回るように増やす分の金額を設定すれば、調整してくれる。

ヘルプにはATMで払う方法も書かれているけど、限度額まで使ったのではなければ、繰上返済だけで十分かな。

ポイントはPontaに交換

リクルートカードでたまるのはリクルートポイント。これはPontaに等価交換できるので、Pontaがたまるカードと考えて問題ないだろう。ローソンで買い物をすることはあまりないのだが、色々な商品の取り扱いがあるポンパレモールで使えるので、無駄になることはない。



2017/01/20

情報処理安全確保支援士の申請書類

情報処理安全確保支援士の申請

情報処理安全確保支援士の最初の登録の申請期限が迫っている。1/31までに申請したものは4/1に登録、7/31までに申請したものは10/1に登録されるのだ。
試験は今年からなので、今は経過処置対象者(情報セキュリティスペシャリスト試験orテクニカルエンジニア(情報セキュリティ)試験合格者)からの申請だ。

「登記されていないことの証明書」を入手する

申請の書類の中で一番手間取りそうなものが、これ。東京の場合、東京法務局 取扱事務一覧表(供託、成年後見登記、国籍、人権):東京法務局をみても取り扱っている場所が少ない。
先日、後見登録課に行ったのだが、結構混んでいたので、申請書類は事前に記入して収入印紙も貼っておくのがよさそう。法務省:登記されていないことの証明申請(後見登記等ファイル用)から、申請書類と記入例を入手できる。記入例には住所と国籍の両方が記入されているが、証明書の提出先から指示がない場合、どちらかでよい。

登録申請書の勤務先欄

登録申請書に勤務先欄がある。現在無職なのでどうすればよいか問い合わせたところ、任意入力欄なので空欄のままでよいとのこと。 必須項目か任意項目か、どこかに記載されているのかな?

メリットはあるのか?

手間と費用がかかるのだが、申請するメリットはあるのだろうか?会社であれば技術力のアピールとして使うのだろうが、申請者個人のメリットは何?ニーズがあれば転職時のアピールポイントになるかもしれないけど。



2017/01/18

ガラケーのnanacoモバイルはnanacoカードとして利用する

nanacoカードで代用する?

古いお財布ケータイのnanacoモバイルは使えないので、nanacoカードを入手する必要があるかと思ったのだが、アプリを使わなくとも、カードとしては使えるようだ。iアプリが起動しない状態でも、nanacoでの支払いはできていた。

iアプリで使っていた機能は

残高確認、クレジットカードからのチャージの機能を使っていた。が、nanacoカードではこれらの機能はない。電子マネー nanaco 【公式サイト】 で行うか、店舗、ATMで残高確認、現金からチャージを行う。

これらの操作はガラケーのnanacoモバイルでもできる。ということは、アプリが動かなくなったnanacoモバイルであっても、nanacoカードと同じ程度には使えるということだ。

公式サイトとATMでチャージする

アプリが使えないので直接チャージすることはできないが、公式サイトとATM・店舗を使ってチャージできる。nanacoモバイルで10万円まで簡単にチャージする方法 | nanaco*nanacoにもあるが

  • 公式サイトで「クレジットカードからチャージ」を行い、センターお預かり分として入金する。
  • ATMや店舗で残高確認を行い、センターお預かり分からチャージを行う。
とすればよい。足りなくなったらその場でチャージするという、モバイルの手軽さが失われてしまう。10万円分をnanacoで払おうと、直接5万円チャージして、センターお預かり分としても5万円入金する、という場合も、一度ATM・店舗で残高確認する手間が生じる。が、後者はnanacoカードの場合の手順であり、つまり、nanacoカードと同等ということである。

nanacoモバイル払いはできない

nanacoカードでできないことはできない。ガラケーのアプリがあれば、カードリーダーがなくてもnanacoモバイル払いを行えるのだが、アプリが動かないので払えない。ここは、無理せず素直にクレカ払いとする。

こういう状況であれば、nanacoカードを入手しなくてもなんとかなりそうだ。



2017/01/09

キーボードを掃除する

かなり汚れるキーボード

汚れたキーボード

使っているとかなり汚れるキーボード。思い切って掃除することにした。

分解せずに掃除する

ウェットティッシュで拭く、エアーダスターで吹き飛ばすといった、比較的手軽な方法がある。表面についたホコリや汚れは取れるのだが、キー(キートップ)とキー(キートップ)の間に溜まったものは難しい。キーボードの掃除方法|分解や水洗いしなくても綺麗にする方法いろいろによると、サイバークリーン PCP-135 ブルーがいいらしい。スライムみたいにぐにゃぐにゃなので、キーの間の隙間まで入り込んでホコリを取るようだ。

分解して掃除する

キーのすきまからコーヒーやカップ麺の汁が入ってしまった場合、あるいは、サボっていて汚れがこびりついてしまった場合、分解掃除を検討しても良い。ただ、キーボードの構造は何種類かあるので、事前に検索して同じように分解掃除した例を探しておくべきだろう。人柱となることは止めないが、いずれにしろ、分解するので自己責任で。始める前に予備のキーボードを用意しておいた方がよいかと。

HHK Liteを掃除する

今回分解掃除したのは、HHK Lite。Happy Hacking Keyboard Lite2 ではない。幸いなことに、キーボードを清潔に。HHKを分解掃除してみた。というページや動画も見つかった。

というわけで、さっそくキートップを外す。外す器具はないので、精密ドライバーで代用。外したキーはバケツに入れて、中性洗剤を少し入れたお湯に浸けておく。左のShiftキー、スペースキー、returnキーには金具がついていたので、バケツに入れずにウェットティッシュで綺麗に拭いておく。 

キートップを外すと、こんな感じ。
ウェットティッシュで拭いて、細かいところは水で薄めた中性洗剤を染み込ませた綿棒で汚れをこすりとる。

キートップは、30分くらいしたら一通りかき混ぜて汚れを落としたのち、お湯を交換してゆすぐ。その後、取り出すのだが、まだ汚れているようであれば、ウェットティッシュでふき取る。その後はじっくり乾かす。細長い部分があって乾きにくいので、ドライヤーで乾かしたり、一晩おいたりして、とにかく確実に乾かす。乾いた綿棒で1つずつ水分を拭き取っていくのは、数が多いからよっぽどのことがない限りはやめておいた方がよいだろう。

乾いたら、キートップを1つずつはめて、元の状態に戻す。記号の位置とか、覚えているようで結構覚えていないので、配置のわかる画像を見ながら戻す。必ず、キートップが乾いていることを確かめてからはめること。水分が残っていると、故障する可能性があるので慎重に。



2017/01/03

2017年年賀状

今年もよろしくお願いします。



白い封筒を探す

転職することにした

いろいろあって、転職することにした。働きながら情報収集するのは難しいため、転職エージェントの力を借りることにし、準備を進める。

白い封筒がない

採用面接では、履歴書や職務経歴書を持っていくことがほとんどだ。クリアファイルに入れ、白い無地の封筒にしまうのだが、問題はこの白い封筒。コンビニではなかなか売っていないのだ。文房具専門店に行ってもなかなかない。新宿西口のヨドバシカメラの文具コーナーでなんとか見つけたのだが、入手が難しい一品のようだ。

早めに通販で入手を

こういったものは応募先の企業に関係なく必要になるので、早めに通販で手配しておくのがよい。面接直前に、こういった形式的なものの入手で気をもむのは得策ではない。




2016/12/23

SourceTreeをアンインストールする

高機能Gitクライアント

SourceTree - Windows と Mac 対応 Git & Mercurial 無料クライアントGitのクライアントソフトはいろいろあるけど、これとコマンドラインで十分だろうと思っている。だから、アンインストールすることはないだろうと思っていたのだが、消す日が突然訪れた。

普通に消せない?

Windows7 64bitな環境でアンインストールしようと、コントロールパネルの「プログラムと機能」を開いてみた。あれ?SourceTreeがいくつもある。適当に選んで「アンインストール」してみたけど、エラーが表示される。インストール先のフォルダを見ると、ファイルが丸々残っていて、アンインストールできなかった模様。
プログラムと機能の画面に「SourceTree」がいくつもリストされるという時点で、怪しさ満点。

アンインストールする方法

ググってSourceTree version 1.6.12 by Atlassian - How to uninstall itというページを発見。若干バージョンが違うが C:\ProgramData\Caphyon\Advanced Installer\{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx} にある SourceTreeSetup_xxxx.exe をコマンドプロンプトから実行する とうまくいくらしい。

一度「プログラムと機能」の画面からアンインストールしようとすると、失敗した状態のままになってしまうので、最初にWindowsを再起動しておく。
次に、Windows Explorerで上記フォルダを開き、Shiftキーを押しながら何もないところを右クリック→コマンドウィンドウをここで開く を選択して、コマンドプロンプトを開く。
コマンドプロンプトに

SourceTreeSetup_1.9.10.0.exe /uninstall {xxxxxxxx-xxxx-xx}
と入力する。{xxxxxxx-xxxx-xx}の部分は、フォルダ名と同じ。{や}も入力する必要がある。

これでファイルが削除される。上記ページにあるように、いくつかのファイルは残ってしまうので、気になるようであれば手動で消す。レジストリは、まぁ、消しておいたほうが再インストール時のトラブルを防げそうな気がするけど、無理してやる必要はないかな?
「プログラムと機能」のリストには残っているけど、選んで「アンインストール」すると、「リストから消す?」と確認ダイアログが表示されるので、OKを選んで消せばOK。