大文字をどこに置くかを知ることは不可能です。確かにいくつかの推測が役立つかもしれません。ただし、確認するには、値を手動で確認する必要があります
このスクリプトは、すべてのフィールドとテーブルでキャメルケースを提供します。
select b.table_schema + '.'+a.table_name+'.'+column_name tablecolumn,
upper(left(column_name, 1))+ lower(stuff(column_name, 1,1,'')) newcolumn
into #t
from INFORMATION_SCHEMA.COLUMNS a
join
INFORMATION_SCHEMA.TABLES b
on a.table_name = b.table_name
and b.table_type = 'base table'
insert #t
select table_schema + '.' + table_name tablecolumn,
upper(left(table_name, 1))+ lower(stuff(table_name, 1,1,'')) newcolumn
from INFORMATION_SCHEMA.TABLES
ここでは、このスクリプトの最後の部分を実行する前に、#tから*を選択し、必要に応じて値を操作できます。
-- here is an example how you can replace columns like
-- SYSTEMNAME to SystemName, and EMPLOYEEID to EmployeeId in the temporary table
update #t set newcolumn = replace(replace(newcolumn, 'name', 'Name'), 'id', 'Id')
--loop cursor
Declare @tablecolumn as nvarchar(500)
Declare @newcolumn as nvarchar(500)
Declare SqlCursor CURSOR FAST_FORWARD FOR
SELECT tablecolumn, newcolumn FROM #t
OPEN SqlCursor
FETCH NEXT FROM SqlCursor
INTO @tablecolumn, @newcolumn
WHILE @@FETCH_STATUS = 0
BEGIN
-- This is the actual renaming
EXEC sp_rename @tablecolumn, @newcolumn
FETCH NEXT FROM SqlCursor
INTO @tablecolumn, @newcolumn
END
CLOSE SqlCursor
DEALLOCATE SqlCursor
drop table #t