نمایش نتایج 1 تا 3 از 3

نام تاپیک: حذف تمام relation های یک دیتابیس

  1. #1

    حذف تمام relation های یک دیتابیس

    یک دیتابیس با 500 تاجدول دارم که می خواهم تمام relationship های آن حذف شود و فقط جدول هایم را داشته باشم؟فوری فوری فوری کمکم کنید؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟ ؟؟؟

  2. #2

    نقل قول: حذف تمام relation های یک دیتابیس


    DECLARE @TableName nvarchar(257),
    @ForeignKeyConstraintName sysname,
    @SQLStatement nvarchar(4000)

    DECLARE TableList CURSOR
    LOCAL FAST_FORWARD READ_ONLY FOR
    SELECT
    QUOTENAME(TABLE_SCHEMA) +
    N'.' +
    QUOTENAME(TABLE_NAME) AS TableName,
    QUOTENAME(CONSTRAINT_NAME) AS ForeignKeyConstraintName
    FROM
    INFORMATION_SCHEMA.TABLE_CONSTRAINTS
    WHERE
    CONSTRAINT_TYPE = 'FOREIGN KEY' AND
    OBJECTPROPERTY
    (
    OBJECT_ID
    (
    QUOTENAME(TABLE_SCHEMA) +
    N'.' +
    QUOTENAME(TABLE_NAME)
    ),
    'IsMSShipped') = 0

    OPEN TableList
    WHILE 1 = 1
    BEGIN
    FETCH NEXT FROM TableList INTO
    @TableName,
    @ForeignKeyConstraintName
    IF @@FETCH_STATUS = -1 BREAK
    SET @SQLStatement =
    N'ALTER TABLE ' +
    @TableName +
    N' DROP CONSTRAINT ' +
    @ForeignKeyConstraintName
    RAISERROR (@SQLStatement, 0, 1) WITH NOWAIT
    EXEC sp_executesql @SQLStatement
    END
    CLOSE TableList
    DEALLOCATE TableList
    GO

  3. #3

    نقل قول: حذف تمام relation های یک دیتابیس

    نيازي به استفاده از كرسر نيست ، با يك كد ساده تر هم ميشه اين كار رو انجام داد
    Declare @Str varchar(max)
    Set @Str = ''
    SELECT @Str = @Str +'
    ALTER TABLE ' + QUOTENAME(TABLE_SCHEMA) + N'.' + QUOTENAME(TABLE_NAME) +
    ' DROP CONSTRAINT ' + QUOTENAME(CONSTRAINT_NAME)
    FROM
    INFORMATION_SCHEMA.TABLE_CONSTRAINTS
    WHERE
    CONSTRAINT_TYPE = 'FOREIGN KEY'
    AND
    OBJECTPROPERTY
    (OBJECT_ID
    (QUOTENAME(TABLE_SCHEMA) + N'.' + QUOTENAME(TABLE_NAME)
    ), 'IsMSShipped') = 0

    exec SP_SQLExec @Str

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •