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

INSERT ... ON CONFLICT(id)DO UPDATE ...構文をシーケンスIDで使用するにはどうすればよいですか?

    うまくいきました。 Neil Conwayのこのすばらしい記事を読みました: http://www.neilconway.org/docs/sequences /

    彼がDEFAULTの使用法を示しているところ 列のシーケンス値を使用するようにDBに指示するキーワード。

    これが現在機能する更新された例です:

    INSERT INTO tbltest (
        tbltest_ID,
        tbltest_Name,
        tbltest_Description) 
    VALUES 
    (DEFAULT, 'new record','new record description'),
    (4, 'existing record name','existing record description')
    ON CONFLICT (tbltest_ID) DO UPDATE SET (
        tbltest_Name,
        tbltest_Description) = (
        excluded.tbltest_Name,
        excluded.tbltest_Description) RETURNING *;
    

    これが誰かに役立つことを願っています;-)




    1. プレフィックスが追加されたMYSQLテーブルから最大数を選択します

    2. エラー404がEM12cで見つかりません

    3. Oracle-一意のListagg値

    4. 2番目のテーブルのフィルター条件を使用したOracle外部結合