注册 登录
编程论坛 C# 论坛

如何将查询结果赋值变量

kent73 发布于 2015-07-04 11:47, 2778 次点击
正在学习C#,请教一个问题
如VB的操作方式,将sql的值赋予变量
sql = "select id from 表 where……"
rs.open,sql,cnn,1,1
变量=rs!id

那么C#怎么样将sql语句取得的值,赋予变量,ID是int,数据库是sql server 2000

谢谢
4 回复
#2
over12302015-07-04 12:54
string sql="select * from [use] order by ID";

创建查询:
方法1:(处于连接状态的查询)
   SqlCommand cmd = con.CreateCommand();
    =sql
   SqlDataReader sdr;
   con.Open();            //打开数据库连接
   sdr=cmd.ExecuteReader();
   while(sdr.Read())
  {
     Console.WriteLine(sdr["ID"]+"  "+sdr["Name"]); //此处也可以写 sdr[0],通过索引取值
   }
  cmd.Clone();
  con.Close();           //关闭连接

方法2:(处于非连接状态的查询,查询出的结果存在了dataset里面)
    SqlDataAdapter sda=new SqlDataAdapter(sql,con);
    DataSet ds=new DataSet();
    sda.Fill(ds,"use1");       //将查询到的表追加到ds数据集合的use1表里面
    foreach(DataRow i in ds.Tables["use1"].Rows)
    {
       Console.WriteLine(i["ID"]+"  "+i["Name"]);    //此处也可以写 sdr[0],通过索引取值
     }
#3
kent732015-07-04 13:52
回复 2楼 over1230
谢谢回复
不解的是,既然已经取到了值,为什么还要保存到表里,而不是直接赋予变量。
#4
smart07212015-07-05 22:49
select * from [use] order by ID
因为从数据库select出来的是一个表数据库 你只能将这个表中某行某列的数据在赋值给变量
#5
wangnannan2015-07-06 10:41
C#操作数据库遍历赋值的问题 这个该看书
1