access2016のバージョンを戻す

頻繁にバージョンが更新されますがバグは改善されませんので古いバージョンに戻します。
cmd.exeで
C:\Program Files\Common Files\microsoft shared\ClickToRun>officec2rclient.exe /update user updatetoversion=16.0.8201.2102

8201.2102がバージョン
バージョンは
https://support.microsoft.com/ja-jp/help/2770432/how-to-revert-to-an-earlier-version-of-office-2013-or-office-2016-clic
で調べる

サロゲートペア文字

フロントエンドAccess2016バックエンドmysql5.7の
DBアプリで「通称つちよし」という漢字を入力保存するとフリーズ
はて?何年か前もそういう漢字に遭遇したような・・
mysqlはuft8でだいたいの環境依存文字は問題ないはず。
Google先生に聞いてみると
土の下に口、で通称つちよし サロゲートペア文字というらしい
一文字で4バイトあり、スマホの絵文字と同じ。
つまり絵文字が入らないならこの字も入らない。
uft8は3バイト文字までしか格納できない。
uft8mb4にすれば良いらしい。
mysqlの文字コード、参照を変更
テーブルも変更して入力すると・・エラー
コンソールからinsertすると文字表示はできないけど
query OK 
でもAccessからは入力できない。

そういえば検索してもうまくいってるのはweb系ばかり
ということはODBC周りが変換できないのかな?

どうしてもできないのでサロゲート文字をトラップしたら
2バイトずつコード化してmysqlに格納
Accessにはコードで持ってきて変換することにした。

サロゲートペア文字のコードは2バイトずつ
上の句、下の句で構成されていて
それぞれサロゲートという領域のコードらしい。
2日ほど悩んでました。

この掲示板も表示できない

Accessのバグ

もう一つ書いておきます
7月のOffice updateでフォームなどのテキストボックスで
反転と実際の文字選択がずれるというバグ
こんなひどいバグすぐ修正されるだろうと思ったらまだ放置
Accessのバグはよく放置されます。
VB.NET移行も考えようかなあ 

mysqlのdescribe SQLServerでは?

mysqlのdescribe = SQLServerのsp_help

sp_help ‘テーブル名’

だけどSQLServerはSQLServer Management Studioという優秀な
管理ツールがあるので起動させて構造とか見た方が早い
最初はsqlcmd起動させてmysql の\Gはどうすれば?goは面倒くさいとか思ったけれど
Management Studio の使い方を覚えれば苦にならない

コンソールはmysqlが使いやすいが官製管理ツールはSQLServerの勝ちで痛み分けかな