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

SQL Azure データベースのインデックス削除エラー:キーワード 'ON' 付近の構文が正しくありません (ユーザー コンテキスト =dbo)

    問題は、インデックス名の前にスキーマがあったようです (ただし、私が読んだ多くの例がまさにそれを行っていることを誓います)。

    したがって、正しいスクリプト構文は次のとおりです。

    declare @sql nvarchar(max);
    set @sql = N'';
    select @sql = @sql + N'DROP INDEX ' + i.name + N' ON ' + OBJECT_SCHEMA_NAME(i.OBJECT_ID) + '.' + o.name + ';
    '
    FROM sys.indexes AS i INNER JOIN sys.tables AS o ON i.[object_id] = o.[object_id]
    where i.name is not null and o.name is not null and i.type_desc like '%COLUMN%'
    PRINT @sql;
    EXEC sp_executesql @sql;
    



    1. string_agg()からの結果をソートする方法

    2. get_headers()よりも速いもの

    3. テーブル名が別のテーブルのフィールドであるMySQL結合テーブル

    4. インデックスを使用してクエリのパフォーマンスを向上させる例