Oracleデータベースで PL/SQL を扱っていると、「ORA-06512」 がセットで表示されるエラーに遭遇することがあります。 このエラー自体は “直接の原因” ではありませんが、「どこでエラーが発生したか(行番号)」を示す重要なヒ …



Oracleデータベースで PL/SQL を扱っていると、「ORA-06512」 がセットで表示されるエラーに遭遇することがあります。 このエラー自体は “直接の原因” ではありませんが、「どこでエラーが発生したか(行番号)」を示す重要なヒ …

SQLで集計処理を行う際に必ず出てくるのが WHERE句 と HAVING句 の違いです。どちらも「条件を絞り込む」ための構文ですが、役割が明確に異なります。この記事では、 HAVING句を使うべきケース と WHEREとの使い分け をわか …

はじめに Oracleで最もよく見るエラーの1つが ORA-00001:一意制約(UNIQUE制約)違反。INSERT/UPDATE で突然エラーになり、原因が分かりづらいケースも多いです。 本記事では、UNIQUE制約でハマりやすいポイン …

Oracleデータベースに接続しようとしたとき、「ORA-12154: TNS: 指定された接続識別子を解決できませんでした」 というエラーが出て焦ったことはありませんか? これはOracle初心者はもちろん、ベテランでも環境構築時によく遭 …

Oracle DBへ接続しようとした際にORA-03135: connection lost contact(接続が失われました)というエラーが発生することがあります。 特にバッチ処理中や、長時間実行するSQL、アプリケーション側からの接続 …

データベースを長く運用していると、アプリのバグやテストデータの混入、複数サーバ間複製のトラブルなどが原因で、重複データが発生することがあります。しかし、安易に DELETE を実行すると必要なデータまで消えてしまう危険があります。 そこで本 …

Oracle接続時に発生するエラー 「ORA-12638:資格証明の取出しに失敗しました。」 は、クライアント側の認証設定が原因で SQL*Plus やアプリケーション接続ができなくなるケースに多く見られます。特に Windows環境で O …

中央値を使う場面 中央値(MEDIAN)は、極端な値(外れ値)の影響を受けにくい指標として、業務システムやデータ分析でよく使われます。例:処理時間の中央値、売上の中央値、レスポンス時間の中央値など。 SQLではDBMSによって書き方が大きく …

大量データを扱うシステムでは、「DELETE文が異常に遅い」「1000件削除するだけで何分もかかる」という現象は珍しくありません。 実際、筆者の環境でも 1500万件のテーブル DELETE 1件 = 約1.2秒 DELETE 100件 = …

SQLで半角 全角 変換 SQL を実行したい場面は、顧客データの正規化・文字種統一・基幹システム間のデータ連携などで非常に多く発生します。カタカナ・英数字・記号などは半角/全角の表記ゆれが多く、SQLだけで統一できるとバッチ処理やETLの …