在數據庫開發中,由於用戶錄入信息的隨意性,可能產生表內字符串類型的數據兩端存有空格,或大小寫不一致等現象,給以後數據應用過程中造成不必要的麻煩。這裡簡單使用了一個存儲過程來解決這些問題。
/* 整理系統數據*/
CREATE PROCEDURE pro_ClearupData
as
--第一部分 整理字符串類型的數據 去除兩端的空格
declare @tableName varchar(50) --表名
declare @columnName varchar(50) --列名
declare cur_find cursor for select so.name,sc.name
from syscolumns sc, sysobjects so, systypes st
where so.name <> 'dtpropertIEs'
and st.xtype=sc.xtype
and st.name='varchar'
and sc.id=so.id
and so.xtype='u'
--查找包含varchar類型字段的所有用戶表
open cur_find
fetch next from cur_find into @tableName,@columnName
while @@fetch_status=0
begin
--去掉字段的兩端空格
exec('update '+@tableName+' set '+@columnName+'=ltrim(rtrim('+@columnName+'))')
fetch next from cur_find into @tableName,@columnName
end
close cur_find
deallocate cur_find
GO