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

データベース内のすべてのフィールドの照合をオンザフライで更新します

    これを見ている人がSQLServer2008を使用している場合に備えて、いくつかの変更を加える必要がありました。

    SELECT 'ALTER TABLE [' + sys.objects.name + '] ALTER COLUMN ['
    + sys.columns.name + '] ' + sys.types.name + 
        CASE sys.types.name
        WHEN 'text' THEN ' '
        ELSE
        '(' + RTRIM(CASE sys.columns.max_length
        WHEN -1 THEN 'MAX'
        ELSE CONVERT(CHAR,sys.columns.max_length)
        END) + ') ' 
        END
    
        + ' ' + ' COLLATE Latin1_General_BIN ' + CASE sys.columns.is_nullable WHEN 0 THEN 'NOT NULL' ELSE 'NULL' END
        FROM sys.columns , sys.objects , sys.types
        WHERE sys.columns.object_id = sys.objects.object_id
        AND sys.objects.TYPE = 'U'
        AND sys.types.system_type_id = sys.columns.system_type_id
        AND sys.columns.collation_name IS NOT NULL
        AND NOT ( sys.objects.NAME LIKE 'sys%' )
        AND NOT ( sys.types.name LIKE 'sys%' )
    


    1. fatfreeフレームワークでmysql結果セットをループするにはどうすればよいですか?

    2. 最適化のしきい値–データのグループ化と集約、パート2

    3. MySQL/InnoDBで自動インクリメントをエミュレートする

    4. PostgresGISTとBtreeインデックス