c#.net如何从数据库表中读取某一列的某一个值,再赋给Session对象?

比如从数据库A 表B
查询 ID=1的这条记录,并且把这条记录name这一列的值赋给Session["name"];

ado.net 本身提供了ExecuteScalar功能。ExecuteScalar执行查询,并返回查询所返回的结果集中第一行的第一列或空引用(如果结果集为空).忽略其他列或行.
示例如下:

using (SqlConnection cn = new SqlConnection())
{
cn.ConnectionString = App.U8DataConn;
cn.Open();

SqlCommand cmd = new SqlCommand();
cmd.Connection = cn;

string sql = "select cNumber From VoucherHistory with (NOLOCK) Where CardNumber=@OutBillCode and cContent is NULL";
cmd.CommandText = sql;
//因为不用创建行集、查找值并关闭行集,所以产生的系统开销非常小与使用 ExecuteReader方法,然后使用 SqlDataReader 返回的数据执行生成单个值所需的操作相比,此操作需要的代码较少
object maxNum = cmd.ExecuteScalar();
int newNum = 0;
//判断是否是空值
if (maxNum == System.DBNull.Value || maxNum == null)
{
newNum = 1;
}
else
{
newNum = Convert.ToInt32(maxNum) + 1;
}
Session["maxBillNO"]= newNum.ToString(); //赋给Session对象
}
温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2016-02-05
using System.Data.SqlClient;//引用

string StrSql,StrMyConn;
StrMyConn="Data Source=服务器地址;Initial Catalog=数据库A;User Id=数据库用户名;Password=数据库密码";//SQL连接字符串
StrSql="select name from 表B where id=1";//T-SQL语句

SqlConnection MyConn = new SqlConnection(StrMyConn);//连接数据库
SqlCommand MyCmd;
SqlDataReader dr;

MyConn.Open();//打开连接
MyCmd=new SqlCommand(StrSql, MyConn);
dr=MyCmd.ExecuteReader();
if(dr.Read())//读取数据
  Session["name"]=dr["name"].ToString();//赋值给Session["name"]
dr.Close();
MyConn.Close();追问

Session["name"] = cmd.ExecuteScalar().ToString();
这样不行吗?

追答

我查了下资料,这样也可以的,不过我习惯用read方法了

本回答被提问者采纳

在asp.net c#网页中,请问从数据库取出一个值,并选中相应的Input(radio...
在asp.net中控件分成html和服务器控件,你如果只是使用html控件的话,在后台代码中是无法访问到这个控件的,你可以在这个控件上右键选择在服务器运行,这样就可以在代码修改这个控件的值了。在页面的onload事件中加入代码,读取数据库的内容并设置那个控件的值(控件的ID.Text=值)当然,如果你坚持使用html...

c#怎么从从下拉框中取出条件的值添加给sql查询语句
这个是以前写的代码,通过字符串构造一部分SQL语句,传递到数据库操作代码中去 DropDownList控件有个属性是SelectedValue,里面的值是当前选中那项的Value值,通常情况下,如果没有单独设置ListItem.Value属性的话,Value和Text是相同的,通过DropDownList.SelectedValue 来获得DropDownList当前选中项,用这个来构造SQL语句...

C#中如何读取到数据库中的值,赋给自定义变量
private void tb_qpno_TextChanged(object sender, EventArgs e){ SqlConnection con = new SqlConnection(你的数据库连接字符串);con.Open();SqlCommand cmd = con.CreateCommand();cmd.CommandText = "select qp_no,convert(varchar(10),qp_dd,120) as qp_dd,usr,cls_id,bat_no,mrp_name,mr...

C# 如何把数据库内的数据读取出来并赋值给一自定义的变量
\/\/创建数据库连接 SqlConnection cnn = new SqlConnection("数据库连接字符串");\/\/构造查询字符串 string str = @"Select top * from A";\/\/新建SqlCommand对象 SqlCommand cmd = new SqlCommand(str, cnn);\/\/打开数据库连接 cnn.Open();\/\/返回dr对象 SqlDataReader dr = cmd.ExecuteReader(Comm...

c#如何获取数据库中某个表中的其中一个字段的值
\/\/\/从数据库中检索单个数值型数据 \/\/\/ \/\/\/ \/\/\/ <returns><\/returns> public static long GetLong(string strSQL){ long nRet;OleDbConnection objConn = new OleDbConnection(strConn);OleDbCommand objCmd = objConn.CreateCommand();objCmd.CommandText = strSQL;objCmd.CommandType = CommandTy...

C#中如何读取数据库中的某一列值,并将其逐条写入一个数组。
privateList<string>getGX(){ List<string>list=newList<string>();stringsql="select*fromCodeGX";DataTabledt=SqlHelper.getDataTable(sql);foreach(DataRowrowindt.Rows){ list.Add(row["GXName"].ToString());} returnlist;}

c#如何查询数据库中表的一列数据并赋值给一个数组
先把数据库中的那一列数据查询出来,用datatable存起来,然后循环这个datatable 把值一个一个的加到数组中,数组长度的定义可以用datatable.rows.count

C# 连接sqlserver数据库,获得某一条记录的某一个属性值。
通过ado.net得到dataset,你可以通过直接在数据库查询,也可以把数据取到dataset再查询,赋值的话一般就是txtbox.text = dataset.table[0].row[0]["Sname"].tostring()

C#连接ACCESS数据库。如何将表中的一列数值赋给一个数组,并调用
查询得到DataTable之后,给数组循环赋值.你执行查询语句之后,得到一个DataTable,你遍历这个Table的每一行,把你要的那一列取出来,赋给数组元素.OleDbDataAdapter adapter = new OleDbDataAdapter(command,connection);adapter.Fill(table);int[] array = new int[table.rows.count];for\/foreach ...后边不用...

ASP.net(C#) 从数据库提取数据 如何显示到网页指定位置
<\/asp:Repeater> 你看这个,最外层有个div,你可固定这个div的位置,然后里面是ul-li列表,还有个Repeater标签,在后台应该先绑定Repeater,然后<%# Eval("Title")%>这个是需要显示数据源中的某个字段,这里显示的是标题(Title),明白了嘛?你仔细想想,很好明白的!

相似回答