動くコード図鑑技術記事現場の渡り方キャリア論すべての記事About

みんなの現場、全部ここに。

図鑑・記事・現場メモ・キャリア論。タブで部屋を切り替えて読める。

C# の yield return で大量データを遅延評価で返す(メモリを食わないイテレータ)
技術記事C#IEnumerable

C# の yield return で大量データを遅延評価で返す(メモリを食わないイテレータ)

C# の yield return の使い方を、大量データを List に全部詰めずに1件ずつ遅延評価で返す仕組みから解説。遅延評価ゆえに DB 接続を開いたまま回すと閉じるタイミングがずれる落とし穴、ToList() での使い分けまで、コ

1ヶ月前8 min
もっと読む
SQL Server の MERGE で UPSERT する時に業務SEがハマる3つの罠(同時実行・HOLDLOCK・削除誤爆)
技術記事HOLDLOCKMERGE

SQL Server の MERGE で UPSERT する時に業務SEがハマる3つの罠(同時実行・HOLDLOCK・削除誤爆)

SQL Server の MERGE で UPSERT する時に業務SEが踏む3つの罠 — 同時実行での一意キー違反(HOLDLOCK 不足)、WHEN NOT MATCHED BY SOURCE の削除誤爆、source の重複キーで出る

1ヶ月前12 min
もっと読む
SQL Server の TRY_CONVERT / TRY_CAST で変換失敗を NULL にしてバッチを止めない
技術記事SQL ServerTRY_CAST

SQL Server の TRY_CONVERT / TRY_CAST で変換失敗を NULL にしてバッチを止めない

SQL Server の TRY_CONVERT / TRY_CAST で、変換できない値を例外ではなく NULL にしてバッチを止めない方法を実テーブルで解説。CAST は失敗でステートメント全体が落ちる違い、2012以降の制約、NULL

2ヶ月前13 min
もっと読む
SQL Server の窓関数 LAG / LEAD / 累計 (SUM OVER) を業務帳票で使う3パターン
技術記事LAGSQL Server

SQL Server の窓関数 LAG / LEAD / 累計 (SUM OVER) を業務帳票で使う3パターン

SQL Server の窓関数を業務帳票で使う3パターンを、OVER 句の考え方から積み上げて解説。LAG で前月比、SUM() OVER で累計、LEAD で翌月比較。カーソルや自己結合で書いていた前月比・累計を窓関数一本で。ROWS B

2ヶ月前12 min
もっと読む
C# の IDisposable を正しく実装する(Dispose パターンと using / ファイナライザ)
技術記事C#Dispose

C# の IDisposable を正しく実装する(Dispose パターンと using / ファイナライザ)

C# の IDisposable を実装する Dispose パターンを、単純版・Dispose(bool) 版・using との関係で整理。マネージドだけなら単純版で足りる落としどころと、ファイナライザ / GC.SuppressFina

2ヶ月前18 min
もっと読む
PowerShell で退職者の AD アカウントを棚卸しして自動 disable する(情シス1人運用)
技術記事Active DirectoryDisable-ADAccount

PowerShell で退職者の AD アカウントを棚卸しして自動 disable する(情シス1人運用)

PowerShell で Active Directory の退職者・休眠アカウントを棚卸しして無効化する手順を、情シス1人運用の業務SE向けに。lastLogonTimestamp の複製遅延で現役社員を誤って止める事故を避ける、CSV

2ヶ月前15 min
もっと読む
PowerShell の Import-Csv / Export-Csv で業務SEが踏む5つの罠 — 文字コード・区切り・型・改行・BOM
技術記事Export-CsvImport-Csv

PowerShell の Import-Csv / Export-Csv で業務SEが踏む5つの罠 — 文字コード・区切り・型・改行・BOM

PowerShell CSV 読み込みで業務SEが踏む5つの罠を実体験ベースで。Import-Csv / Export-Csv の文字コード(Shift_JIS / UTF-8 BOM)、#TYPE 行、全カラム文字列化、区切り文字を、対処

2ヶ月前10 min
もっと読む
C# の delegate / Action / Func を TypeScript の関数型に翻訳する(型推論の違いで詰まらない)
技術記事C#delegate

C# の delegate / Action / Func を TypeScript の関数型に翻訳する(型推論の違いで詰まらない)

C# の delegate / Action / Func を TypeScript の関数型 ((x: T) => U) に翻訳する対応表を、C# 出身の業務SE向けに。TypeScript の関数型は Func とほぼ同じに見えて、引数

2ヶ月前13 min
もっと読む
WinForms の入力チェックを ErrorProvider でスマートに — Validating と e.Cancel の落とし穴
技術記事C#ErrorProvider

WinForms の入力チェックを ErrorProvider でスマートに — Validating と e.Cancel の落とし穴

WinForms の入力チェックを ErrorProvider と Validating イベントでスマートにする方法を解説。入力欄の横に赤アイコンとツールチップでエラーを出す実装から、e.Cancel=true でフォーカスが抜けられなく

2ヶ月前14 min
もっと読む
SQL Server の PIVOT / UNPIVOT で業務帳票のクロス集計表を作る
技術記事PIVOTSQL Server

SQL Server の PIVOT / UNPIVOT で業務帳票のクロス集計表を作る

SQL Server の PIVOT の使い方を、月×商品の売上を帳票用クロス集計表に変換する実例で解説。UNPIVOT で横→縦に戻す方法、列が増える時の動的 SQL、GROUP BY + CASE との比較まで、コピペで動く T-SQL

2ヶ月前9 min
もっと読む
PowerShell でファイルを一括リネーム・仕分け・古いファイル自動削除する(ログ/帳票整理)
技術記事Move-ItemPowerShell

PowerShell でファイルを一括リネーム・仕分け・古いファイル自動削除する(ログ/帳票整理)

PowerShell でログや帳票ファイルを一括リネーム・仕分け・保持期間で自動削除する手順を、1人運用の業務SE向けに。Get-ChildItem でフィルタ → Rename-Item / Move-Item → LastWriteTi

2ヶ月前13 min
もっと読む
SQL Server の TRY…CATCH エラー処理 — バッチを安全にロールバックする落とし穴5選
技術記事ROLLBACKSQL Server

SQL Server の TRY…CATCH エラー処理 — バッチを安全にロールバックする落とし穴5選

SQL Server の TRY…CATCH エラー処理でバッチを安全にロールバックする型を、業務SEが踏む落とし穴5選で解説。CATCH で自動ロールバックされない・XACT_STATE(-1) の doomed 判定・THROW 再スロ

2ヶ月前16 min
もっと読む