假设我在SQL数据库中有一个名为Table_T
的表,它包含6列(column1
,column2
,...,column6
)。
以下代码将数据库中的所有列填充到dataGridView
:
private void button1_Click(object sender, EventArgs e)
{
SqlConnection cn = new SqlConnection(
"Data Source=PCN-TOSH;Initial Catalog=mydb;Integrated Security=True");
cn.Open();
SqlCommand cm = new SqlCommand("SELECT *FROM Table_T");
cm.Connection = cn;
SqlDataAdapter da = new SqlDataAdapter(cm);
DataTable dt = new DataTable();
da.Fill(dt);
cn.Close();
dataGridView1.DataSource = dt;
}
但我怎样才能选择column3& column5并将它们填充到dataGridview1
?
答案 0 :(得分:3)
SELECT column3, column5 FROM Table_T
为什么不起作用?
答案 1 :(得分:1)
如果您不需要表格中的所有内容,则应使用
where
如果您需要条件,请使用foreach(var item in dt.Rows)
{
var colValue0 = item[0].ToString()
var colValue1 = item[1].ToString()
var colValue2 = Convert.ToIn16(item[2])
}
条款
但是,如果确实需要获取所有数据但在某些时候只显示某些信息,我会使用类似的foreach循环
var bindableDt = new Datatable();
bindableDt.Columns.Add("colName1")
bindableDt.Columns.Add("colName2")
foreach(var item in dt.Rows)
{
bindableDt.Row.Add(dt.Rows[0], dt.Rows[1]);
}
gridview.Datasource = bindableDt;
----编辑----
重新审视您的问题,如果您将此绑定到gridview并且只想要某些信息,则应将这些值添加到新数据表中,然后仅显示新数据表
因此您需要执行类似
的操作from numba import jit
@jit
def rownowaga_numba(u, v):
wymiar_x = len(u)
wymiar_y = len(u[1])
f = [[[0 for j in range(wymiar_y)] for i in range(wymiar_x)] for k in range(9)]
cx = [0., 1., 0., -1., 0., 1., -1., -1., 1.]
cy = [0., 0., 1., 0., -1., 1., 1., -1., -1.]
w = [4./9, 1./9, 1./9, 1./9, 1./9, 1./36, 1./36, 1./36, 1./36]
for i in range( wymiar_x):
for j in range (wymiar_y):
for k in range(9):
up = u[i][j]
vp = v[i][j]
udot = (up**2 + vp**2)
cu = up*cx[k] + vp*cy[k]
f[k][i][j] = w[k] + w[k]*(3.0*cu + 4.5*cu**2 - 1.5*udot)
return f
答案 2 :(得分:0)
[此答案最初由@capricorn发送评论
SqlCommand cm = new SqlCommand("SELECT column3,column5 FROM Table_T")
这段代码运作得很好。感谢大家的帮助 。尊重和问候。