VB 配列の初期化

VBで配列の初期化をしようと以下のようにしたところ Public Sub Main() Dim index As Integer Dim dSample() As Double dSample = Array(1.1, 1.2, 1.3) 'UBoundが参照することで「型が一致しません。」というコンパイルエラー For index = 0 To UBound(dSam…

VBで省略可能な引数の注意点

引数省略は便利なんだが、見た目がいまいちという場合は避けたいところ。 Sub subfunc(ByVal arg1 As String, Optional ByVal arg2 As String = "TEST2", Optional ByVal arg3 As String = "TEST3") .... End Sub .... subfunc("test1", , "test3") こう書か…

Excelのファイル同士の比較

ExcelにInquireというCOMアドインを入れることでExcel同士のファイル比較ができるらしい。 参照は以下。 https://kokodane.com/2013_waza_087.htm 「ファイル」ー「オプション」から「アドイン」を選択し、「管理:」からCOMアドインの設定をする。 「Inquir…

VBA(VBS)で複数行を一行に書くには、一行を分割するには。

複数行を一行で書くには コロン「:」を使う。 Sub debug(): MsgBox("テスト"): End Sub 一行を分割するには アンダースコア 「_」を使う。 Sub debug() MsgBox("テスト",_ vbYesNo) End Sub VBの文字チョイスのセンスが分からない。。。

where, group by, havingとかの評価(優先)順位

DB

where -> group by -> having -> select -> order by の順で評価するのでhavingにはselectでつけた別名を指定できない。order byには指定できる。 例:年が2010以降で名前ごとの件数が1より大きいものを大きい順で表示。 select name, count(*) cnt from TBL…

NULLがある場合のSQLのWhere句の条件に注意

DB

OracleのSQLでハマったんで備忘録(というか知らなかっただけ)。 テーブルTBL_Aが、 ID SEI MEI 1 鈴木 太郎 2 鈴木 二郎 3 NULL NULL 4 佐藤 一郎 で、SELECT文が select * from TBL_A where SEI <> '佐藤'; だと結果は以下。 ID SEI MEI 1 鈴木 太郎 2 鈴…

認証(authentication)と認可(authorization)

いつもどっちがどうなのか忘れちまうので備忘録。以下のサイトが詳しい。 OAuth 2.0 + OpenID Connect のフルスクラッチ実装者が知見を語る 意味 認証(Authentication) 誰であるか。 Who one is. 認可(Authorization) 誰が誰に何の権限を与えるか。 Who gran…

SQL*Plusの日付表示の変更

デフォルトだとYY-MM-DDしかでないSQL*Plusでは以下を表示前に実行しておく。 SQL> ALTER SESSION SET NLS_DATE_FORMAT = 'YYYY/MM/DD HH24:MI:SS'; SQL*Plusってほかにもいろいろ使い勝手が悪いんだけど、コマンドラインで使う人があまりいないのかもしれな…

Windows10でのディスク容量拡大方法

仮想環境のWindows10で、更新アシスタントからアップグレードするとCドライブの容量が足りねーってことでアップグレードできず、また、仮想環境の設定をみても容量は自動で拡大するようにしているのだがそう言われてしまう。どうも、以下のサイトの通り、回…

セッションのタイムアウト

セッションのタイムアウトはtomcatならデフォルト30分。以下のファイル。 conf/web.xml (共通) webapps/foobar/WEB-INF/web.xml (アプリごと) <session-config> <session-timeout>30</session-timeout> </session-config> 参考サイト http://natsumisane.sakura.ne.jp/blog/2017/10/11/post-118/ http://d.hatena.ne.jp/zabadaq/20…

リロードしてもウィンドウオブジェクトを保持しておく方法(javascript)

ウィンドウをリロードするとグローバル変数に保存していた子供のウィンドウオブジェクトがわからなくなる(当然)。 その場合は、以下の方法が考えられる。 そのウィンドウ(W2)に親ウィンドウ(W1)がいる場合 その親にグローバル変数を持たせて以下のようにす…

SQLでのマルチバイト(全角)のワイルドカード(%, _)

動かないであろうと思った以下のselectがちゃんと動いた。 select * from table where TO_MULTI_BYTE(UPPER(COLUMN_NAME)) like TO_MULTI_BYTE(UPPER('%test%')); http://metroit.hatenablog.jp/entry/2017/05/12/095949 を見ると Oracle のバージョンが11.2…

PL/SQL配列・ループテスト

PL/SQLの配列=コレクション型 に詳細がある。配列は1オリジン。配列のメソッドについては、 配列で使用可能なメソッド が詳しい。 /* * C:\> C:\ORACLE\PRODUCT\XX.Y.Z\CLIENT_1\bin\sqlplus.exe USER/PASSWORD@SCHEMA * SQL> SET SERVEROUTPUT ON */ DECLA…

Windows Modules Install Workerがとてつもなく重い件

Windows10 on VM(Memory4GBの1Core)で動かしていて、Windows Modules Install Workerが起動しちゃうと重くてどうしようもない。 WindowsModulesInstallWorker爆食い 終了するまでほっとくしかないらしいが、CPU一人で食べまくりって。。。リミッター付けらん…

eclipse 4.8 Photon(pleiades)へのTomcat Pluginインストール

eclipse 4.8 Photon(pleiades)にはTomcat Pluginがインストールされていない。 なので、メニュー「ヘルプ」の「Eclipseマーケットプレース」からインストールする。 通常 Eclipseマーケットプレース画面で、tomcatで検索すると Tomcat Pluginが表示されるの…

VMware Fusion上のWindows10でのALT+Print Screenはどうするのか

Windows10 on VMware Fusion でのALT + Print ScreenはOption + F13のようです。 Macに慣れているとデスクトップにファイルが出来るつもりでいますが、Windowsではクリップボートに コピーされるだけなので自分でペイントなりに貼り付けてあげます(Option+F…

明示的なカーソル

DB

参考は以下。 https://www.shift-the-oracle.com/plsql/cursor-loop.html -- -- 指定行数だけ昇順IDを表示 -- SET SERVEROUTPUT ON DECLARE -- 引数なしの場合は()もいらない CURSOR cX(MAX NUMBER := 100) IS SELECT ROWNUM, A.* FROM (SELECT ID FROM B WH…

VBAではできるがVBScriptではできないこと

VBScriptを修正してたら以下のエラーダイアログが表示した(Javascriptでエラーになったときと同じダイアログ)。 エラー: ステートメントがありません。 VBScriptでGoToを記載していたためらしい(VBAではできる)。 <script language="VBS"> .... For i = 1 To 10 .... If 条件 Th</script>…

OracleでDDLを実行するとその前のDMLがコミットされる件

DB

表題のとおりなんだけどマニュアルに書いてありました。 様々な種類のSQL文 Oracle Databaseは、暗黙的にすべてのDDL文の前後で現在のトランザクションをコミットします。

gmailのログイン失敗について続き

chromeでgmailにログインしようとするとすぐにログアウトしてしまう件。 69でこっそり入れられたchromeログインの機能が原因だったのかも。 http://www.itmedia.co.jp/news/articles/1809/26/news132.html https://japan.cnet.com/article/35127110/ に書い…

Microsoft Compatibility Telemetryの停止

Windows10 Professional (64bit) Memory 4GBという環境で CPUを100%まで食いつぶしてくれて、Excelのカレントセルの矢印キーでの移動すら待たさせるため停止した。 詳細は、以下のサイトを参照。 Microsoft Compatibility Telemetryの概要と無効化する方法 …

Oracle SQLでのコメントの書き方

DB

OracleのSQLファイルに以下のようにコメントを書いていたら動かなかった。 UPDATE MYTABLE SET COL1='TEST' WHERE ID='FOO'; -- これはテスト これってよくある間違い?

TortoiseSVNで、あるリビジョンを比較して追加変更したファイルを見る

リポジトリ配下のパスを右クリックして[Show log] 比較したいリビジョンをCTRLクリックで2つ選択してから右クリックして[Compare revisions] ActionにAdded/Modified/Deletedが表示してあるので何をしたのかがわかる 欲しいファイルを選択して右クリックし…

SI Object Browser for Oracleで実行計画でのエラー

DB

SI Object Browserで実行計画ボタンをクリックしてSQL実行をクリックすると、 ORA-00911: 文字が無効です。 のダイアログが表示される。実行計画なしだと問題がないのに。 どうも、最後のセミコロン";"を削除すると動作するようだ。それこそ(;o;)な感じ。 こ…

eclipseで複数ファイルの一括置換

左ペインで一括対象のフォルダを選択 「検索」->「ファイル」を選択 置換したいテキストを入力(正規表現あり・なしも選択する) 「ファイル名のパターン」に該当パターン(.java, .jspとか)を入力 「スコープ」で「選択されたリソースを選択」を選択して「置…

GoogleMaps APIもhttpsに

htmlでGoogleMaps API(v3 Keyなし)を使用しているけど、サイトをhttpsにしたところエラーになっていて表示できなくなっていた。 script要素でhttpで指定したためでこいつもhttpsに変更することで表示できるようになった。 <script type="text/javascript" src="https://maps.google.com/maps/api/js?sensor=false&language=ja"></script>

Cortanaを無効にしてWindows検索に

作業端末としてWindows10を使用しているとタスクバーのCortanaが邪魔だったりする。 ただ単にPC内を検索したいだけなのにね。 なので無効にする。 スタートボタンを右クリックして「ファイル名を指定して実行」を選択。 gpedit.mscを入力してリターン。 ロー…

SQLでFOR UPDATEを使って更新する例

DB

セレクト結果の1レコードずつ更新したい場合の例。 以下を参照して作成。 SQL を繰り返し実行する 【ORACLE】日付の加算減算、時刻の加算減算 SET SERVEROUTPUT ON DECLARE cursor CUR is SELECT ID,NAME,UPDATE_TIME FROM テーブル名 WHERE '1000' <= ID A…

PL/SQLのFORループで指定IDのデバッグ表示

DB

テーブルのIDカラムが4桁(0000 .. 0009)の場合。 SET SERVEROUTPUT ON DECLARE vID テーブル名.ID%TYPE; vName テーブル名.NAME%TYPE; vUpdateTime テーブル名.UPDATE_TIME%TYPE; BEBIN FOR i IN 0 .. 9 LOOP vID := TO_CHAR(i, 'FM0000'); -- 4桁 SYS.DBMS_…

javascriptで幅高さを取得する方法

参考サイト https://so-zou.jp/web-app/tech/programming/javascript/window/ var width = window.innerWidth || document.documentElement.clientWidth; var height = window.innerHeight || document.documentElement.clientHeight; 参考サイト http://blo…