sql >> データベース >  >> RDS >> Oracle

パラメータPL/SQLとして指定されたYYYYMMDD日付を検証する方法

    convert(varchar(10), pdate(), 111) SQLServerのconvertを使用しようとしているようです 関数。これはOracleでは機能しません。

    のようなことをしたいだけです
    DECLARE
      l_dt date;
    BEGIN
      l_dt := to_date( pdate, 'yyyymmdd' );
    EXCEPTION
      WHEN others
      THEN
        raise_application_error( -20001, pdate || ' is not a date in the format YYYYMMDD' );
    END;
    

    もちろん、長さが正しくない場合に別の例外をスローできるように複数のチェックを実行する場合、または日付が妥当であることを確認するためにいくつかのチェックを追加する場合(つまり、過去100年以内または100年以内である必要があります)将来など)to_dateの後にそれを行うことができます 変換。



    1. Laravelのデータに影響を与えずにテーブルスキームを更新する

    2. MySQL結合クエリの書き方

    3. MongoDBを使用する場合

    4. データベースモデリング:Amazonのような製品を分類する方法は?