110,534
社区成员
发帖
与我相关
我的任务
分享
for (var i = 0; i < rd.FieldCount; i++)
{
var value = rd.GetValue(i);
if (value != DBNull.Value)
{
var name = rd.GetName(i);
var value = rd.GetValue(i);
................................
}
}
USE tempdb
GO
IF OBJECT_ID('t') IS NOT NULL
DROP TABLE t
GO
CREATE TABLE t(
id INT IDENTITY(1,1) PRIMARY KEY,
a INT,
b INT,
c INT
)
GO
SET NOCOUNT OFF
INSERT INTO t(a,b,c) VALUES (1,2,3);
INSERT INTO t(a,b,c) VALUES (1,4,5);
SELECT * FROM t
/*
id a b c
1 1 2 3
2 1 4 5
*/
--------- 以上为测试表及测试数据 --------
SELECT
CASE WHEN aa.a!=bb.a THEN 'a 字段不相同: '+LTRIM(aa.a)+'=>'+LTRIM(bb.a)+';' ELSE '' END
+
CASE WHEN aa.b!=bb.b THEN 'b 字段不相同: '+LTRIM(aa.b)+'=>'+LTRIM(bb.b)+';' ELSE '' END
+
CASE WHEN aa.c!=bb.c THEN 'c 字段不相同: '+LTRIM(aa.c)+'=>'+LTRIM(bb.c)+';' ELSE '' END
FROM (
SELECT * FROM t AS a WHERE id=1
) AS aa
FULL JOIN
(
SELECT * FROM t AS a WHERE id=2
) AS bb
ON 1=1
/*
b 字段不相同: 2=>4;c 字段不相同: 3=>5;
*/