Fedoraで日本語manページを確認する

自分はデフォルト言語をen_USと使っているため、manページを見るときにはすべて英語になってしまう。以前は

env LANG=ja_JP.UTF-8 man xxx

コマンドで日本語manページが見れたが、最近は英語のままになっている。

いろいろ調べたら、LANGではなく、LC_ALLと設定すべきだった。

またいつの間にか「ja_JP.UTF-8」が「ja_JP.utf8」になっている。そのため、コマンドは

env LC_ALL=ja_JP.utf8 man xxx

とすべきだった。

DB2インポート時SQL3550Wになったとき

エクスポートしたデータをインポートするときが来ました。

hanaokaiwa.hatenablog.jp

以前このようにエクスポート時SQL2473Nエラーのときの対処法を記録したが、インポート時も同じエラーになり、同じ

modified by implicitlyhiddeninclude

 オプションを付ければ、動いた。

しかし、また以下のエラーが発生した。

SQL3550W 行 "1"、列 "16" のフィールド値は NULL
ではありませんが、ターゲット列は GENERATED ALWAYS として定義されています。

インターネットでいろいろ調べたら、以下のサイトが参考になった。

Generated(生成)列が定義されているDB2テーブルのデータ移動についての解説

identityignore はIDENTITY項目を無視するオプション

generatedignore はGENERATED項目を無視するオプション

今回自分の場合は「generatedignore」を使う。ちなみに、「identitymissing」と「generatedmissing」はエクスポート時にあらかじめIDENTITY項目かGENERATED項目を除外したデータをインポートするときに使うオプションです。

最終的にインポート文は

import from file.csv of del modified by generatedignore implicitlyhiddeninclude replace into table

 になった。青字は適宜に変更する。

SQLでN労働日後の日付を計算

SQLでN労働日後の日付を計算してみたため、記録のためやったことをまとめた。

前提となるテーブルは以下

CREATE TABLE CALENDAR (

DATE DATE NOT NULL,

IS_WORKING CHAR(1) NOT NULL WITH DEFAULT '',

PRIMARY KEY ( DATE ) )

 CALENDARテーブルに日付と労働日かどうかのIS_WORKINGが定義されている。

1. 指定された日付のN労働日後の日付を取得するSQL

SELECT MAX(DATE) FROM (

     SELECT DATE

     FROM CALENDAR

     WHERE

        DATE > '基準日付'

        AND IS_WORKING = '1'

     ORDER BY DATE ASC

     FETCH FIRST N+1 ROWS ONLY)

 2. 直近5年分の日付一覧とそのN労働日後の日付のペアを取得するSQL

SELECT T1.DATE AS BEFORE_DATE, T2.DATE AS AFTER_DATE 

FROM CALENDAR AS T1

INNER JOIN CALENDAR AS T2

    ON (T2.IS_WORKING = '1'

        AND T2.DATE > T1.DATE)

INNER JOIN CALENDAR AS T3

    ON (T3.IS_WORKING = '1'

        AND T3.DATE > T1.DATE

        AND T3.DATE <= T2.DATE)

WHERE

    T1.DATE <= CURRENT_DATE

    AND T1.DATE > CURRENT_DATE - 5 YEARS

GROUP BY T1.DATE, T2.DATE

HAVING COUNT(T3.DATE) = N+1

ただし、このSQLが重すぎるため、私のローカルでは実行時間が455秒以上になってしまう。

いろいろ調べて、ROW_NUMBER()を利用した改善版SQLは以下

SELECT T21.DATE AS BEFORE_DATE, T22.DATE AS AFTER_DATE

FROM

    (SELECT T01.DATE, MIN(T02.ROW_NUMBER) AS ROW_NUMBER

    FROM CALENDAR AS T01

    INNER JOIN (SELECT DATE, ROW_NUMBER() OVER (ORDER BY DATE ASC) AS ROW_NUMBER FROM CALENDAR WHERE IS_WORKING = '1') AS T02
        ON T02.DATE > T01.DATE
    GROUP BY T01.DATE) AS T21
INNER JOIN (SELECT DATE, ROW_NUMBER() OVER (ORDER BY DATE ASC) AS ROW_NUMBER FROM CALENDAR WHERE IS_WORKING = '1') AS T22
    ON T21.ROW_NUMBER = T22.ROW_NUMBER - N

WHERE

    T21.DATE <= CURRENT_DATE

    AND T21.DATE > CURRENT_DATE - 5 YEARS

 こちらのSQLはローカルで1秒以内で終わっている。

p12ファイルをpemファイルとkeyファイルへの変換

p12ファイルをpemファイルとkeyファイルへ変換したいが、インターネットでやり方を見つかった。参考となるURLは以下:

command - Converting PKCS#12 certificate into PEM using OpenSSL - Stack Overflow

実行するのは以下のコマンドです。

openssl pkcs12 -in input.p12 -out output.pem -clcerts -nokeys
openssl pkcs12 -in input.p12 -out output.key -nocerts -nodes

覚えにくいコマンドだな。

gthumb起動するとフリーズするときの対応法

gthumbが起動するたびにフリーズしてしまう。いろいろリセットをしてみたが、解消されない。そのとき参考となるのは以下のURL

https://www.systutorials.com/241233/gthumb-hangs-at-startup-on-fedora/

URLの中ではiphoneと書いていたが、自分の場合はAndroid携帯だった。それを外すと、通常通りに起動できるようになった。

Thinkpad T460のBIOSをアップデートする

Thinkpad T460の使用中に急に画面が真っ暗になるため、とりあえずBIOSをアップデートしてみた。

私が使用しているのはFedoraなので、Windows用のファイルが使用できない。それ以外にはISOファイルもあるが、T460にはDVDドライブが付いていないため、USBメモリーにいれないといけない。ddコマンドで書き込んでみたが、うまく動かなかった。

結局以下のURLを参考にして、作業をした。

Update ThinkPad BIOS with Bootable Flash Drive | GeezBlog

1.BIOSアップデートのWindows用ファイルをダウンロード

2.上記1でダウンロードしたファイルをインストール、最後の手順の「Install ThinkPad BIOS Update Utility Now」のチェックをはずす(要Windowsマシン)

3.USBメモリーをFAT32FAT16でフォーマットしておいて、上記2のPCに差し込む

4.上記2でインストールしたフォルダーにある「Instruction US - BIOS flash USB memory key.txt」の記述に従い、BIOSアップデート用のUSBメモリーを作成する

自分の場合、

mkusbkey.bat D:

のコマンドを実行するだけだった。

5.上記2で作成したUSBメモリーでT460のBIOSアップデートを実施

注意事項:「Instruction US - BIOS flash USB memory key.txt」にも記述しているが、BIOS設定の Startup->UEFI/Legacy Boot 項目は "Both" か "UEFI Only" に設定する必要がある。自分もUSBメモリーから起動できなかった。上記の項目を確認したら、"Legacy Only" になっていた。

結局Windowsマシンを利用しないといけないが、しかたない。

3月25日放送林先生が驚く初耳学

林先生が認めた偉大なる日本人女性
8. デパ地下人気トマトを作った”素人”
目標から逆算して、やるべきことを論理的に遂行する
7. 真の食育!日本の唯一狩りをする女性ソムリエ
6. リアル大門未知子、失敗しない雑誌編集長
5. 女性皇族から信頼される帽子デザイナー
4. 世界絶賛のギャル姉妹
3. 世界でただ一人、「心を持つAI」で医療現場に挑む研究者
2. 大統領が絶賛!世界初のサミット女性料理長
1. まるで半沢直樹。”左遷”に負けなかった開発者

スキャンダル日本史
陸奥宗光は服役中、刑務所で働く女性と不倫

初耳学
1. 外来種のカミキリの被害を拡大させないため、桜が伐採されている