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

ストアド プロシージャ パラメータとしてファイル パスを一括挿入する

    動的 SQL を使用して、一括挿入ステートメントと sp_executesql を使用して、ファイル名変数を文字列に挿入します。 それを実行します。パスが有効であることなどを確認するために、いくつかのエラー チェックを追加することをお勧めします。

    CREATE PROCEDURE [importFile] (@filePath VARCHAR(MAX))
    AS
    BEGIN
        CREATE TABLE #Temp
        (
          row1 int,
          row2 varchar(5),
          row3 bit
        )
    
        DECLARE @SQL NVARCHAR(MAX) = ''
        SET @SQL = N'
        BULK INSERT #Temp
          FROM ''' + @filePath + '''
          WITH (
            FIELDTERMINATOR = '','',
            ROWTERMINATOR = ''\n''
          )'
    
         -- ...
    
         EXEC sp_executesql @SQL
    END
    
    -- to run it:
    EXEC importFile 'd:\test.csv'
    



    1. mysqlクエリを15分間隔でグループ化する

    2. 主キーを無視してPostgreSQLで重複行を見つける7つの方法

    3. t-sql クエリの実行にかかる時間を測定する

    4. エラー:文字46のスキーマuser1_gmail_comの権限が拒否されました