SQL Server のテーブル定義書を SQL で出力する

SQL で SQL Server のテーブル定義書を出力する

テーブル定義書をいまあるテーブルから起こしたいとき、SQL コマンドでサクッと出力して Excel に貼ると便利です。

DECLARE @tableName NVARCHAR(50); 
SET @tableName = 'Customer';

SELECT
    obj.name AS テーブル名
    ,col.name AS 列名
    ,type_name(user_type_id) AS データ型
    ,CONCAT(type_name(user_type_id), '(', max_length, ')') AS データ型
    ,CASE
        WHEN is_nullable = 1 THEN '○'
        ELSE ''
    END AS NULLを許可
FROM
    sys.objects obj
    INNER JOIN
        sys.columns col
    ON  obj.object_id = col.object_id
WHERE
    obj.type = 'U'
	AND obj.name = @tableName
ORDER BY
    col.column_id

SQL 自体はそのままにしたいので、テーブル名は変数 @tableName で定義しています。
お好みで、文字列の部分を直接 書き換えてもよいです。

出力した内容をすべてコピー

SQL を実行した後、全選択します(Ctrl + A か、左上をクリック)。

ヘッダー付きでコピー

右クリックで「ヘッダー付きでコピー」を選択。

コピーした内容を Excel に貼り付け

出力内容がクリップボードにコピーされるので、Excel に貼り付けます。納品物の元ネタづくりにどうぞ。

サクラエディタのインストールができない場合は常駐していないか確認

セットアップは実行中のサクラエディタを検出しました。
開いているアプリケーションをすべて閉じてから「OK」をクリックしてください。「キャンセル」をクリアすると、セットアップを終了します。

サクラエディタをバージョンアップしようと思ってインストーラーを実行したら、このメッセージ。え? 実行してないけど。。

常駐しているうサクラエディタ

サクラエディタが、知らない間に常駐しています。
ウィンドウをすべて閉じても常駐している場合、以下の設定からサクラエディタの常駐を解除することができます。

  1. 設定 - 共通設定を開く
  2. 全般タブを開く。
  3. タスクトレイの「タスクトレイに常駐」のチェックを外します。

Excel で一部の図形だけ固定する

Excel で一部の図形(オブジェクト)だけを動かないように固定したいことがあります。

シートの保護でロック

Excel で複数のオブジェクトをロックする設定

このように重なっている図があったとします。
ここで、後ろ側の菱形の図を固定したい場合の方法です。

図形の書式設定

固定しない図を選択して右クリック、図形の書式設定をクリックします。(メニューの図形の書式でもこの設定を出せます。後述)

サイズとプロパティ(一番右のアイコン)の中にあるプロパティを展開し、「ロック」のチェックを外します。ロックのチェックを外した図がいじれる図(固定しない図)になります。

次に、メニューの「校閲」にある「シートの保護」をクリック。
シートの保護で、「ロックされたセル範囲の選択」のチェックを外します。

これで先ほど「ロック」を外した図以外は固定(クリックできなくなる)されます。
解除したい場合、校閲、シートの保護でロックされたセル範囲の選択のチェックを入れれば戻ります。

複数の図形に対して書式設定を行う

図形の書式設定

図の固定を行う場合、おそらく複数の図形に対して設定が必要になります。

この場合、Shift キーを押しながら図をクリックしていくと複数の図を選択できます。
図が選択できたら、メニューの「図形の書式」の中にある「サイズ」の右下の矢印アイコン(赤枠で囲った所)をクリックします。

Mac の ATOK で入力モードの追加や削除をする

ひらがな入力だけで十分なんですけど……

使用する入力モードの選択

ATOK で使用する入力モードを選択するには、システムの環境設定ではなく、ATOK の環境設定から行います。

  1. ATOK の環境設定を開きます(Shift + control + F)
  2. 左下にある、使用する入力モードの選択ボタンをクリック。
  3. チェックで使用する入力モードを選択できます。

なお、この操作で入力モードを消したとしても、ショートカットキーを押すと、他の入力モードに変わってしまいます。

憎きカナ入力を抹殺する方法はこちら。
Mac の ATOK でカナ入力のショートカットキーを無効にする

ATOK の環境設定
ATOK の環境設定で入力モードを選択する

Mac の ATOK でカナ入力のショートカットキーを無効にする

Mac の ATOK を使っていて一番イライラするのが、キーボードショートカットで意図せず「カナ入力」に変わること。
カナ入力のショートカットキーが、Control + Shift + X に割り当てられているため、とにかくミスタッチしてしまう。まぁ、ミスしているのが悪いとも言えますが……。

そもそもカナ入力なんてものは、使いたい人だけ追加機能でインストールすれば良い話。いまどきデフォルトでは不要だと思います。

ショートカットキーを削除する

  1. Mac の右上にある「あ」とか表示されている部分を右クリックするとメニューがズラッと表示される。
  2. キー・ローマ字カスタマイザを選択する。
  3. 設定変更していなければ、デフォルトでは ATOK スタイルが選択されているので、キー設定をクリック。
  4. カタカナ入力文字種(ア) の行を選択して、左下にあるマイナス記号(-)をクリック。
  5. 確認ダイアログが出るので、削除をクリック。
  6. OK をクリック。
  7. スタイルを変更すると、設定を保存するダイアログが表示されるので、名前を付けて保存する。
  8. ATOK キー・ローマ字カスタマイザに戻るので、いま保存した設定が選択されていることを確認して OK をクリック。
  9. システムを再起動する(再起動してから設定が反映されます)。
Mac の ATOK。カナ入力は邪魔。
キー・ローマ字カスタマイザ設定
キー・ローマ字カスタマイザ設定
ATOK スタイル
スタイルの保存
スタイルの保存

Mac のリモートデスクトップで、デュアルディスプレイ設定

Mac の「Microsoft Remote Desktop」で、接続しているモニタ全てを使用してリモートデスクトップ接続を行うための設定。

Microsoft Remote Desktop
Microsoft Remote Desktop
  1. 設定したい接続設定を選択したあと、右クリックで Edit をクリック。
  2. Edit PC が開くので、Display タブをクリック。
  3. User all monitors にチェックを入れる。

以上の設定後リモートデスクトップ接続を行うと、全てのディスプレイが使えます。

SSMS でテーブルの編集をする際に「変更の保存が許可されていません」

SSMS のエラーメッセージ

変更の保存が許可されていません。
行った変更には、次のテーブルを削除して再作成することが必要になります。
再作成できないテーブルに変更を行なったか、テーブルの再作成を必要とする変更を保存できないようにするオプションが有効になっています。

何を言っているのかわからない、MS 流エラーメッセージw

SSMS のオプションを変更する

テーブルの構成が変更されることにより、保存されているデータの欠損を防ぐためにこのようなメッセージが表示されます。(一応、便利機能)
開発時などはテーブルの変更もよくある話なので、以下の捜査を行うことでテーブルの変更ができるようになります。

  1. オプションを開く。
  2. 「デザイナー」にある、テーブルオプション「テーブルの再作成を必要とする変更を保存できないようにする」のチェックを外す

A5:SQL で書いた ER 図を画像として保存する

A5:SQL Mk-2 で描いた ER 図を画像として出力する方法です。

A5:SQL Mk-2 で ER 図を画像にする

ER 図を開いて、メニューの [ 編集 ] - [ 画像としてページをコピー ] を選択します。
ショートカットキーなら「Ctrl + Alt + C」です。

A5:SQL Mk-2 で ER 図を画像にする

画像にしたいのであれば、ビットマップが良いでしょう。
デフォルトサイズは 1024 ですが、これだと小さすぎて中身がよくわかりません。
私は 2048 をよく使います。
4096 は大きすぎますw

A5:SQL Mk-2 クリップボードへのコピー

クリップボードにコピーされました。
Excel に貼り付ければそのまま使えるし、画像として保存したいのであればペイントに貼り付けて、トリミングしてから保存すれば OK です。

A5:SQL の ER 図で文字サイズを大きくする

A5:SQL Mk-2 で ER 図を描くとき、文字サイズが小さすぎて困っていたのですが、これを大きくする方法です。

A5:SQL Mk-2 の ER 図

ER 図を表示します。

ER 図のプロパティ

右クリックして、ER図のプロパティを開きます。

ER 図のプロパティ

フォントと文字サイズの変更ができます。

VS Code の Prettier が効かずフォーマットできない

Visual Studio Code でソースコードを整形できる Prettier
これでコーディングがはかどるぜ! と思ったものの、動かない。。

なんでも整形できるわけではない

フォーマット

txt ファイルなど、フォーマットする決まりがない場合、フォーマットできません。
確かに、考えてみればそうですね。

フォーマッタはたくさんある

VS Code フォーマットを選択する
VS Code フォーマットを選択する

Prettier のような拡張機能をインストールした場合、すでにあるフォーマッタと競合してしまっている場合があります。

Editer: Default Formatter

設定メニューで、
Editer: Default Formatter
という項目があるので、インストールした Prettier を設定します。

保存時に自動整形

Editer: Format On Save

設定にある、
Editer: Format On Save
にチェックを入れると、保存するときに自動整形してくれます。

好みもあるかもしれませんが、チームで開発している時は必須だと思います。いちいちレビューで指摘するのも面倒です。

Brave の ダウンロード場所の確認ダイアログを出さなくする

Brave ブラウザでファイルをダウンロードする際、毎回ダウンロード場所を聞かれるのがうざいです。

Brave のダウンロード設定

Brave ブラウザの設定メニュー

Brave の設定を開きます(右上のハンバーガーメニューから)。

「詳細設定」をクリックすると、ダウンロードメニューがありますので、「ダウンロード前に各ファイルの保存場所を確認する」のトグルスイッチをオフにします。

これでダウンロード時に毎回 保存場所のダイアログが出るのを抑制できます。

Windows 10 のスクリーンショットの通知を止める

Windows 10 では、Windows キー + Shift + S でスクリーンショットを撮ることができます。これが手軽で便利。

切り取り & スケッチの通知

ただ、スクリーンショットを撮る度に右下に通知が出ます。
Excel やブラウザにエビデンスを貼りたいだけなのに、毎回通知が出るのはウザいですね。

通知を止める

Windows 10 の通知

設定メニューから「通知とアクションの設定」を開きます。

Windows 10 の通知とアクション設定

送信元ごとの通知の受信設定」から、「切り取り & スケッチ」の通知をオフにします。

これで通知を消せます。

VS Code で JSON ファイルが整形できない場合

VS Code で JSON を開く
VS Code で JSON を整形する

Visual Studio Code では、Ctrl + Shift + F を押してソースコードを整形できます。

整形できない

コンソールなどから貼り付けた JSON などでは、コマンドを押しても整形できない場合があります。

これは、言語モードが JSON になっていないから。

右下の言語モードをクリックするか、Ctrl + K → M を押すと、言語モードを設定できます。
(Ctrl + K を押した後、M を押せば開きます)

言語モードを json にすると、整形できます。

Mac の Edge で検索エンジンを Google に変更する

Chromium 版 Microsoft Edge は非常にパフォーマンスが高く、Mac でも使う価値があります。

ただ、ひとつ気になる点としては、デフォルトの検索エンジンが Bing だということです。

これを使い慣れた Google に変更するための方法です。

アドレスバーで使用する検索エンジン

設定( command + , )を開き、「プライバシー、検索、サービス」を選択。
一番下の方にある、サービスにある「アドレスバーと検索」をクリックします。

アドレスバーで使用する検索エンジンを「Google」に変更します。(Yahoo に設定することもできます。あまりいないかもしれませんが、百度に設定することもできます。。)

空白タブは Bing のまま。。

新しいタブを開いた時にあるテキストボックスから検索すると、Bing のままです。
これに関しては、拡張機能をインストールしないと修正できません(!)。

そして、せっかくインストールしても勝手に無効にされます。Microsoft らしい囲い込みですw

これは拡張機能の設定画面で、トグルスイッチをオンにすれば有効化します。