换系统或者换数据库的时候,需要经常做数据迁移……在一张有很多列的数据表中,想要找到我们想要的字段,对比数据字段,就显得非常重要!而在这么多的列中,想要知道有那些列一定需要去对比,非常困难;有个步骤,可以提高工作效率!就是先找到数据表中非空字段……排除掉这些,对比起来,效率更高!提供以下自己摸索出来的方法,供大家点评!呵呵!
Create PROCEDURE Getcolunmnlent_YX
@tablename NVARCHAR(200)
-- exec Getcolunmnlent_YX 'CURdUsers'
as
--CREATE TABLE Getcolumnlength_YX (ID INT IDENTITY(1,1),NAME nvarchar(100),lengthname int ) ---建议建立永久表,存储数据表中,每一列的实际耗用空间
--CREATE TABLE GetColumnlen_YX (A int) ----建议建立永久表,存储当列实际耗用空间大小
TRUNCATE TABLE Getcolumnlength_YX
INSERT INTO Getcolumnlength_YX
SELECT name ,lengthname=0 FROM SYS.all_columns WHERE object_id IN (
SELECT DISTINCT object_id FROM sys.tables WHERE name=@tablename/*'CURdUsers'*/) -----对比数据,取数据,待对比导入
ORDER BY column_id
--SELECT * FROM Getcolumnlength_YX
DECLARE @i INT,@a INT
S