Kum*_*mar 6 sql t-sql sql-server
我有一个包含600多列的表,这些列是从列名中CSV
带有特殊字符的文件导入的% _ -
.有没有办法更改列名以删除这些特殊字符?
代码可以在T-SQL中.
EXEC sp_rename 'table.[Oh%Dear]', 'OhDear', 'COLUMN';
Run Code Online (Sandbox Code Playgroud)
工作示例([ ]
在sp_rename中不确定)
CREATE TABLE foo ([Oh%Dear] int)
EXEC sp_rename 'foo.[Oh%Dear]', 'OhDear', 'COLUMN'
EXEC sys.sp_help 'foo'
Run Code Online (Sandbox Code Playgroud)
您可以查询INFORMATION_SCHEMA.COLUMNS并生成sp_rename脚本以重命名列.
SELECT 'EXEC sp_rename ''' + TABLE_NAME + '.' + QUOTENAME(COLUMN_NAME) + ''', ''' + REPLACE(COLUMN_NAME, '%', '') + ''', ''COLUMN''; '
FROM INFORMATION_SCHEMA.COLUMNS
WHERE COLUMN_NAME LIKE '%[%]%'
Run Code Online (Sandbox Code Playgroud)
你能用这个吗?
sp_RENAME 'Table.ColumnName%', 'NewColumnName' , 'COLUMN'
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1103 次 |
最近记录: |