Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

SQL सर्वर परिवर्तन तालिका त्रुटि को नहीं पकड़ सकता

आस्थगित नाम समाधान के बाद बैच पुनर्संकलन के परिणामस्वरूप होने वाली त्रुटियाँ उसी स्तर पर पकड़ी नहीं जा सकतीं जो त्रुटि उत्पन्न होती है। DDL को डायनेमिक SQL में लपेटना एक वैकल्पिक समाधान है:

BEGIN TRY
    EXEC(N'ALTER TABLE [dbo].[my_table_name] ADD PRIMARY KEY ([id]);');
END TRY
BEGIN CATCH
    IF ERROR_NUMBER() = 1779
    BEGIN
        --handle expected errors
        PRINT 'Primary Key already exists. ';
    END
    ELSE
    BEGIN
        --raise other unexpected errors
        THROW;
    END;
END CATCH;


  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 केस स्टेटमेंट Sql IN के भीतर

  2. SqlParameter तालिका नाम की अनुमति नहीं देता है - sql इंजेक्शन हमले के बिना अन्य विकल्प?

  3. SQL सर्वर पूर्ण-पाठ खोज के साथ उत्पाद विश्लेषण करना सीखें। भाग 2

  4. SQL Server 2000 में उपलब्ध मैजिक टेबल क्या हैं?

  5. SQL सर्वर फेलओवर क्लस्टर इंस्टालेशन -2