Sqlserver
 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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL सर्वर में मान () के साथ xml कॉलम से कई रिकॉर्ड प्राप्त करना

  2. एसक्यूएल सर्वर में डिफ़ॉल्ट बाधा निर्भर अन्य कॉलम कैसे बनाएं

  3. एकल परिणाम तालिका में दो प्रश्न?

  4. SQL सर्वर में फ़ोरैच कैसे लिखें?

  5. मैं एसक्यूएल सर्वर में एक चर के लिए सम्मिलित आउटपुट मान कैसे निर्दिष्ट कर सकता हूं?