关于SqlDataReader的简单问题,请各位帮忙

knightzhou 2002-09-16 05:24:10
using System;
using System.Data;
using System.Data.SqlClient;
public class Employee
{
private string _EmpCode;
private string _Name;
private string _Department;
private string strConn;
.................
private DataSet MyDataSet;


public Employee(string ConnectString ,string EmpCode)
{
SqlConnection MyCon =new SqlConnection(ConnectString);
SqlCommand MyComd=new SqlCommand("Select * From RZ_Employees where EmpCode='" + EmpCode + "'",MyCon);
try
{
MyCon.Open();
SqlDataReader MyReader=MyComd.ExecuteReader();
//There one Record at most
if (MyReader.Read())
{
_Name=MyReader("Name");
_EmpCode=MyReader("EmpCode");
_Department=MyReader("Department");
..............
}

}
catch
{
......
}
}


}
这段代码主要是想新建一个Employee对象时,通过EmpCode从数据库中得到该Employees的信息,可编译时老是通不过,
_Name=MyReader("Name");
_EmpCode=MyReader("EmpCode");
_Department=MyReader("Department
“MyReader”表示“变量”,此处应为“方法”
我看见过有很多例子都是这样用的啊?
...全文
45 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
knightzhou 2002-09-17
  • 打赏
  • 举报
回复
不过若是int 类型的数据应该怎样处理?
如_EmpAge=MyReader["Age"].ToString()则会获得字符串,
难道要自己转换吗?
_Age=Convert.ToInt32( MyReader["Age"].ToString());
由于字段很多。不想用 MyReader.GetInt32(i)的方法。
knightzhou 2002-09-17
  • 打赏
  • 举报
回复
Thanks,给分
w18ily 2002-09-17
  • 打赏
  • 举报
回复
比较一下速度,
_EmpAge=MyReader[0].ToString()
_EmpAge=MyReader.GetString(0)
_EmpAge=MyReader["Age"].ToString()
速度是逐渐降低的,好象好取得速度和使用性的平衡,只能用第二种方法好点!
在字段很多的情况下,尽量用数字索引符号!
knightzhou 2002-09-16
  • 打赏
  • 举报
回复
Thanks!
w18ily 2002-09-16
  • 打赏
  • 举报
回复
C#是这样的!

Name=MyReader["Name"].ToString();
_EmpCode=MyReader["EmpCode"].ToString();
_Department=MyReader["Department].ToString()
“MyReader”表示“变量”,此处应为“方法”

那是VB的用法!
w18ily 2002-09-16
  • 打赏
  • 举报
回复
_Name=MyReader["Name"].ToString();
_EmpCode=MyReader["EmpCode"].ToString();
_Department=MyReader["Department].ToString()
“MyReader”表示“变量”,此处应为“方法”

那是VB的用法!
bigrongshu 2002-09-16
  • 打赏
  • 举报
回复
.............
Myreader = mycmd.ExecuteReader()
While Myreader.Read()
TxbMemId.Text = Myreader.Item(0).ToString
TxbMemName.Text = Myreader.Item(1).ToString
End While

1,979

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 其他语言讨论
社区管理员
  • 其他语言社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧