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

SQLに複数の行を挿入しようとすると構文エラーが発生しますか?

    まず、列を一覧表示します:

    INSERT INTO CATEGORY (<colname1>, <colname2)
        VALUES ('BUS','BUSINESS'), ('CHN', 'CHILDREN'), ('COK', 'COOKING'), 
               ('COM', 'COMPUTER'), ('FAL', 'FAMILY LIFE'), ('FIT', 'FITNESS'), 
               ('SEH', 'SELF HELP'), ('LIT', 'LITERATURE');
    

    すべてのデータベースがVALUESをサポートしているわけではありません 複数の行があります。 できた 問題の原因になります。

    たとえば、これをサポートしていないOracleを使用している場合は、UNION ALLを使用できます。 :

    INSERT INTO CATEGORY (<colname1>, <colname2)
        SELECT 'BUS', 'BUSINESS' FROM DUAL UNION ALL
        SELECT 'CHN', 'CHILDREN' FROM DUAL UNION ALL
        . . .
        SELECT 'LIT', 'LITERATURE' FROM DUAL;
    


    1. サブクエリSQLから最大データを選択しますが、サブクエリからのすべての結果が表示されます

    2. PostgreSQLの接続管理:ガイド

    3. Oracleでセッションの通貨記号を変更する方法

    4. Mysql:不明な変数、mysqlアプリケーションを実行できない、my.cnfとは関係がないようです