数据库表
Tbl_Teacher
数据字段名称
类型
说明
teaID
Int
自动编号
teaCode
Char(20)
教师员工号
teaName
Nchar(10)
?
teaGender
Bit
?
teaNation
Nchar(6)
?
teaAge
TinyInt
?
Tbl_Student
数据字段名称
类型
说明
stuID
Int
自动编号
stuCode
Char(20)
学生证号
stuTeacherCode
Char(20)
班主任的员工号
stuName
Nchar(10)
姓名
stuGender
Bit
性别
stuNation
Nchar(6)
民族
stuAge
TinyInt
年龄
stuClassID
Int
班级的ID
用以描述这两张表的XML文件,该XML文件存放的是这两种表的结构信息
假设该文件的名称位? DB.XML
Tbl_Teacher
Name
DBName
Type
Seed
Key
ID
teaID
Integer
1
1
Code
teaCode
String
0
0
Name
teaName
String
0
0
Gender
teaGender
Boolean
0
0
Nation
teaNation
String
0
0
Age
teaAge
Integer
0
0
Tbl_Student
Name
DBName
Type
Seed
Key
ID
stuID
Integer
1
1
Code
stuCode
String
0
0
TeacherCode
stuTeacherCode
String
0
0
Name
stuName
String
0
0
Gender
stuGender
Boolean
0
0
Nation
stuNation
String
0
0
Age
stuAge
Integer
0
0
ClassID
stuClassID
Integer
0
0
必须的类
clsSQLHelper:微软的数据访问辅助类
clsSQLBuilder:根据配置文件生成相应SQL语句的类 见轻松搞定数据访问层[续1]
clsDataAccessOper:所以操作类的父类,提供通用的数据操作方法 见轻松搞定数据访问层[续2]
clsDataAccess:暂时没有什么用
数据类和访问类
实体类clsTeacher 的属性(Property),与数据库字段一一对应
Property ID as Integer
Property Code as String
Property Name as String
Property Gender as Boolean
Property Nation as string
Property Age as integer
实体类clsStudent
Property ID as Integer
Property Code as String
Property TeacherCode as String
Property Name as string
Property Gender as Boolean
Property Nation as string
Property Age as Integer
Property ClassID as Integer
注意:上面两个类的具体代码就不用写了吧
访问类clsTeacherOper 从 clsDataAccessOper 继承
Public class clsTeacherOper
Public Function getAll() as ArrayList
Return clsDataAccessOper.Select((New clsTeacher).GetType)
End Function
Public Function getTeacherByCode(Code as string) as clsTeacher
sDataAccessOper.SelectKeys("Code") = Code
Return clsDataAccessOper.Select((New clsTeacher).GetType).Item(0)
End Function
'以下方法类似,实现的是一些如 getXXX by YYY 的查询
'据操作如添加/删除/修改全部从 clsDataAccessOper 中继承
'这里的查询方法都可以用 clsDataAccessOper.SelectKeys(“”)=… 实现
'只是为了提供更友好的接口,如果你时间紧迫可以把
' clsDataAccessOper.SelectKeys/Select 方法提交给逻辑层或表示层的程序员
End Class
访问类 clsStudentOper从 clsDataAccessOper 继承
(同 clsTeacherOper 类)
上篇<<轻松搞定数据访问层>>文章有人说我代码太少,看不懂。其实我只想说明一下道理。
现在,我贴出 cl