如:
DataTable dt = ds.Table[0]
int cols = dt.Columns.count
int rows = dt.Rows.count
for(int i = 0i <rowsi ++)
{
for(int j = 0j <colsj ++)
{
//遍历每一行每一列;
if(j == cols - 1) //列索引为最后一列;
{
dt.Rows[i][j] = "你要赋的值!"
}
}
}
---找出这个表中所有类型为varchar型的字段---不知道你的str型需要对应哪几种类型,只以varchar型为例,其他类型可以查找systypes
---将所需要的type添加到最后的type筛选语句中
select t2.name from
(
---找到主键为aaa,并且与表中aaa字段的外键相对应的表
select b.id
from
(
---找出表1中aaa外键所对应的主表和主键
select rkeyid,rkey
from
(
---找出表1中的所有外键
select a.id,b.* from sysobjects a inner join sysforeignkeys b
on a.id=b.fkeyid
where xtype='U' and name='表1'
)c
inner join
(
---找出aaa字段所在的所有表
select id from syscolumns
where name='aaa'
)d
on c.id=d.id
)a
inner join
(
---找出aaa字段所在的所有表
select id from syscolumns
where name='aaa'
)b
on a.rkeyid=b.id
)t1
inner join syscolumns t2
on t1.id=t2.id
where t2.type=39
回答修改:
根据需求,修改如下
declare @name varchar(255)
---找出主表的名字
set @name=
(select t2.name from
(---找出SampleDetails中的lngYyGlAID外键所对应的主表
---有可能SampleDetails中不只有一个外键
---如果确定只有一个外键,不用和d相交
select rkeyid
from
(
---找出SampleDetails中的所有外键
select a.id,b.* from sysobjects a inner join sysforeignkeys b
on a.id=b.fkeyid
where xtype='U' and name='SampleDetails'
)c
inner join
(
---找出lngYyGlAID字段所在的所有表
select id from syscolumns
where name='lngYyGlAID'
)d
on c.id=d.id)t1
inner join
sysobjects t2
on t1.rkeyid=t2.id)
---从主表中查出strcode字段的所有信息
declare @sql varchar(255)
set @sql='select strCode from '+@name
exec(@sql)
如果不设置class或者id,那么用each是最好的了,基本就是用你现在这个方法。至于为什么只有第1行第3列,是你搞错了,用你的写法来做,tr td,就是将table里所有的td都获取了,而不是你想的每一行的第3个,仔细想一下,你应该能明白,比如每行5个td的话eq(8),就是第2行的第4个。
如果要取每行第3个,应该是这个思路
$("#divResult table tr").children("td:eq(2)")
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)