数据访问——封装类
为了使代码编写更加规范,让界面更加美观简洁,需要对类进行封装。
分为以下几个步骤:
1,造DBConnection,做一个链接字符串的常量
class DBConnection
{
public const string CONNSTRING="server=.;database=mydb;uid=sa;pwd=123";
}
2,造实体类,把数据库的表封装类,把数据库的字段都封装成成员变量和属性
class Nation
{
private string code;
public string Code
{
get{return code;}
set{code=value;}
}
private string name;
public string Name
{
get{return name;}
set{name=value;}
}
}
3,造数据访问类
a,声明三个成员:SqlConnection,SqlCommand,SqlDataReader
b,在构造函数中把SqlConnection和SqlCommand实例化。
c,做一系列增删改查的方法
class NationDA
{
private SqlConnection _conn;
private SqlCommand _cmd;
private SqlDataReader _dr;
public StockDA()
{
_conn = new SqlConnection(DbConnection.CONNSTRING);
_cmd = _conn.CreateCommand();
}
public void Insert(string code,string name)
{
}
。。。。。。。。。。。
public List<Nation> Select() //查询多条数据出来,放在一个List集合中,集合中的每个元素都是一个Nation对象,都有code和name属性
{
}
public Nation Select(string code)//根据code查询最多查出一条数据出来,用一个Nation对象来接收
{
}
}
4,Main函数:界面显示
(1)调用查询的方法
a,调用数据访问类,获得数据
List<Nation> st=new NationDA().Select(); //调用NationDA类中的Select方法 ,返回一个List<Nation>对象
b,用for循环读取数据
for(i=0;i<st.count;i++)
{
console.writeline(st[i].code+st[i].name);
}
(2)调用增删改的方法
a,从界面上获得输入的数据,存在变量中
b,调用数据访问类,把变量传到相应的增删改的方法中,实现数据库的相应的操作(先实例化出该类,然后调用其中的方法)