2020-01-01から1年間の記事一覧

VBの配列の大きさ

配列を大きさを初期化するときって配列の要素数を指定するものだと思ってた(知っている言語がすべてそうだった)が VBでの配列の初期化は配列の最終index値を指定するらしい。 Public Sub Main() Dim index As Integer '配列の大きさをDimやReDimで指定するが…

jquery セレクタの"@"について

jQuery 1.3 Released | Official jQuery Blog jQuery日本語リファレンス によると1.3からはSizzleを使うことになりXPath?由来の"@"は使用しないことになったらしいが、 昔のソースを眺めていたらまだ使われていた。 そのソースではjqueryは1.3なんだけど動作…

Oracleでユーザまるごと削除しようとしたときのエラーについて

ユーザまるごとオブジェクトを削除しようとして、 SQL> DROP USER FOO CASCADE 行1でエラーが発生しました。 ORA-01940: 現在接続中のユーザを削除することは出来ません。 となるときがあり、もちろん接続しているユーザを確認してから実行したのだけれどな…

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ドライブの容量が足りねーってことでアップグレードできず、また、仮想環境の設定をみても容量は自動で拡大するようにしているのだがそう言われてしまう。どうも、以下のサイトの通り、回…