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

SQLServer単一の挿入ステートメントに挿入できる最大行数

    INSERT INTO ... VALUES...を使用する場合、1つのステートメントに挿入できる最大行数は1000です。 つまり、

    INSERT INTO TableName( Colum1)
    VALUES (1),
           (2),
           (3),...... upto 1000 rows. 
    

    ただし、SELECTステートメントを使用してテーブルに行を挿入している場合は、その制限はありません。たとえば、...

    INSERT INTO TableName (ColName)
    Select Col FROM AnotherTable
    

    次に、2番目の質問に移ります。挿入中にエラーが発生するとどうなりますか。

    複数値構成を使用して行を挿入する場合

    INSERT INTO TableName( Colum1)
    VALUES (1),
           (2),
           (3)
    

    上記のシナリオでは、行の挿入によってエラーが発生した場合、ステートメント全体がロールバックされ、どの行も挿入されません。

    ただし、行ごとに個別のステートメントを使用して行を挿入する場合、つまり...

    INSERT INTO TableName( Colum1) VALUES (1)
    INSERT INTO TableName( Colum1) VALUES (2)
    INSERT INTO TableName( Colum1) VALUES (3)
    

    上記の場合、各行の挿入は個別のステートメントであり、いずれかの行の挿入によってエラーが発生した場合、その特定の挿入ステートメントのみがロールバックされ、残りは正常に挿入されます。



    1. 2つの値のみを受け入れるように列を制限する

    2. ODBC接続を介して取得された絵文字データは疑問符として表示されます

    3. 実行が完了した後、SSISパッケージジョブの結果を確認するにはどうすればよいですか?

    4. MySql 5.7関数UUID()のデフォルトの照合-照合の不正な組み合わせ