FrameCountry数据访问层架构配置文件说明

 
FrameCountry数据访问层架构配置文件说明(具体详见使用手册)
应用FrameCountry架构系统需要使用两种配置文件,即连接数据库配置文件和SQL语句配置文件,两种文件要求放置在FrameCountry.dll文件相同目录下,每种文件依据需求可创建多个文件,在程序中设定调用的文件名。
 
3.1数据库连接文件
        数据库连接文件主要设置连接数据库的信息以及其他相关信息:
3.1.1文件示例
在程序中设定连接数据库请参照FrameTown类说明,当不设定连接文件时,程序会连接默认文件FrameConnect.xml,下面列出示例中FrameConnect.xml的格式(数值部分由于页面原因采用换行,具体格式情参照示例):
        <?xmlversion="1.0"encoding="GB2312"?>
        <ConfigList>
            <!--Datebase :数据库连接设置信息;><!-- >
            <Datebase>
                <!--DBString :数据库连接字符串,信息如下;>
                    1.SQLServer2000
                        <DBString>User ID=sa;Data Source="127.0.0.1";Password=;
Initial Catalog=DateBaseName;Provider="SQLOLEDB.1"
</DBString>
                    2.Access
                        带密码驱动:
                        <DBString>PROVIDER=MSDataShape;Data Provider                                                =Microsoft.Jet.OLEDB.4.0;Data                                                       Source=D:/db1.mdb;Persist Security Info=False;
                                Jet OLEDB:Database Password=PSW
                        </DBString>
                        不带密码驱动:
                        <DBString>Provider=Microsoft.Jet.OLEDB.4.0;
                                Data Source=D:/db1.mdb;
                        </DBString>
                <!-- >
                <DBString>User ID=sa;Data Source="127.0.0.1";Password=;
                        Initial Catalog=Northwind;Provider="SQLOLEDB.1"
                </DBString>
                <!--DBTimeout :为连接超时时间(秒),0 表示无连接超时限制;><!-- >
                <DBTimeout>30</DBTimeout>
            </Datebase>
            <!--Debug :设置调试信息;><!-- >
            <Debug>
                <!--DebugType :运行记录记录等级;>
                    0 :无记录;
                    1 :错误信息;
                    2 :错误信息+回滚信息;
                    3 :错误信息+回滚信息+正确信息;
                    4 :错误信息+回滚信息+正确信息+正确执行SQL语句;
                <!-- >
                <DebugType>1</DebugType>
            </Debug>
            <!--Register :设置注册信息;><!-- >
            <Register>
                <!--RegisterString :注册码;><!-- >                                                  <RegisterString>[2999-12-31]W5dBN6YXQ8ks6xXCwPZKloxtB11Y9ExGn
                    G3WaSNCkWKZ6HP52XU47l2dT4GXrxdS4/v9LT7rTasYGoyDs4BwEPLbfM
                    SbCFGITZqLuJKbArLkLTnpmA5IPd27qfOiBhMnemzhMpYGk7+7dU4wbCc
                    rn0rssJf7kRd7HTaNJGHKNE5cHDtW3wUraC4bkyWhnNXcluyImPy555w=
                </ RegisterString >
                <!--RegisterExplain :注册信息描述;><!-- >
                <RegisterExplain>限时到 2999年12月31日</RegisterExplain>
            </Register>
        </ConfigList>
3.1.2设定信息
3.1.2.1 Datebase节点
3.1.2.1.1 DBString节点
    设置连接数据库字符串信息:
1.       连接SQLServer2000数据库
       User ID=sa;Data Source="127.0.0.1";Password=;
       Initial Catalog=DateBaseName;Provider="SQLOLEDB.1"
Ø         用户名:User ID;
Ø         服务器IP地址:Data Source;
Ø         密码:Password;
Ø         数据库名称:Initial Catalog;
(注:其它为默认信息)
2.       连接Access2000带密码驱动
       PROVIDER=MSDataShape;Data Provider=Microsoft.Jet.OLEDB.4.0;
       Data Source=D:/db1.mdb;Persist Security Info=False;
       Jet OLEDB:Database Password=PSW
Ø         文件路径:Data Source;
Ø         密码:Database Password;
(注:其它为默认信息)
3.       连接Access2000不带密码驱动
       Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:/db1.mdb;
Ø         文件路径:Data Source;
(注:其它为默认信息)
3.1.2.1.2 DBTimeout节点
    连接超时时间(秒),0 表示无连接超时限制;
3.1.2.2 Debug节点
    设置调试信息。
3.1.2.2.1 DebugType节点
    运行记录记录等级。
级别
错误信息
回滚信息
正确信息
正确执行SQL语句
0
 
 
 
 
1
 
 
 
2
 
 
3
 
4
3.1.2.3 Register节点
    记录注册信息。
3.1.2.3.1 RegisterString节点
    记录注册号;
3.1.2.3.2 RegisterExplain节点
    记录注册信息描述,无处理。
 
3.2 SQL语句配置文件
    配置连接数据库SQL语句内容,在文件中ConfigList节点下的每个节点均代表一句SQL语句配置信息,CommandName属性为该节点分类类型,Depiction为该节点描述;
3.2.1 Table类型
1.       示例
    <StudentCommandName="Table"Depiction=" 学生表">
        <MainInfo>
            student
        </MainInfo>
        <WhereList>
            <stu_idDepiction=" 学生ID号" DataType ="Number" Operator ="=">
                student_id</stu_id>
            <nameDepiction=" 学生姓名" DataType ="String"   Operator ="=">
                student_name</name>
            <birthdayDepiction=" 学生生日" DataType ="DateTime"   Operator ="=">
                student_birthday</birthday>
        </WhereList>
    </Student>
2.       说明
       该类型为单表操作配置方式,按照数据库表实际结构进行设计,在程序调用时再依    据需求设定CommandName值,程序中CommandName只可以为“select”、“Insert”、“Update”、“Delete”四种方式之一。
3.       子项说明
Ø         MainInfo :表名;
Ø         WhereList :表的列子项(以下WhereList应用方式相同):
²        节点名( stu_id ):程序FrameBridge的 TransWhere 调用的名称,如:
                    FrameCountry.FrameBridge fBridge=new FrameBridge();
                    fBridge.TransWhere["stu_id",">"]="123";
     fBridge.TransWhere["name"]=" 张三";
²        Depiction :该项描述;
²        DateType :数据类型,目前支持Number、String、DateTime三种;
²        Operator :默认操作符号,在程序中不进行设置符号时采用该默认符号,符           号包含“=、>、<、>=、<=、<>、!=、in、like”:
²        数据(student_id):对应的数据库列名;
4.       执行函数: ExeQuery 、ExeQueryExtend、ExeSingleNonQuery、ExeNonQuery;
3.2.2 Select类型
1.       示例
        <SelectStudentCommandName="Select"Depiction=" 查询学生表,
            必须包含where项并且where后至少包含一个条件项">
            <MainInfo>
                select student_id,student_name,student_birthday from student where 1=1
            </MainInfo>
            <WhereList>
                <student_idDepiction=" 学生ID号" DataType ="Number"   Operator ="=">
                    student_id </student_id>
                <nameDepiction=" 学生姓名" DataType ="String"   Operator ="=">
                    student_name </name>
                <birthdayDepiction=" 学生生日" DataType ="DateTime"   Operator ="&gt;=">
                    student_birthday </birthday>
            </WhereList>
            <TailInfo> order by student_id</TailInfo>
 </SelectStudent>
2.       说明
         查询操作,包括多表联查操作;
3.       子项说明
Ø         MainInfo 节点:查询语句前缀信息;
     (注:必须有where项,并且where项后有条件项,如果没有则补充 1=1)
Ø         WhereList 节点:条件子项;
Ø         TailInfo 节点:尾信息,如order by、group by;
4.       执行函数: ExeQuery 、ExeQueryExtend;
3.2.3 Insert类型
1.       示例
        <InsertStudentCommandName="Insert"Depiction=" 插入学生表">
            <MainInfo>
                student
            </MainInfo>
            <ValueList>
                <student_idDepiction=" 学生ID号" DataType ="Number" >
                    student_id</student_id>
                <nameDepiction=" 学生姓名" DataType ="String">
                    student_name</name>
                <birthdayDepiction=" 学生生日" DataType ="DateTime">
                    student_birthday</birthday>
            </ValueList>
 </InsertStudent>
2.       说明
         插入操作,建议采用Table方式;
3.       子项说明
Ø         MainInfo 节点:表名;
Ø         ValueList 节点:赋值子项;
4.       执行函数: ExeSingleNonQuery 、ExeNonQuery;
3.2.4 Update类型
1.       示例
        <UpdateStudentCommandName="Update"Depiction=" 修改学生表">
            <MainInfo>
                student
            </MainInfo>
            <ValueList>
                <nameDepiction=" 学生姓名" DataType ="String">
                    student_name</name>
                <birthdayDepiction=" 学生生日" DataType ="DateTime">
                    student_birthday</birthday>
            </ValueList>
            <WhereList>
                <student_idDepiction=" 学生ID号" DataType ="Number"   Operator ="=">
                    student_id</student_id>
            </WhereList>
 </UpdateStudent>
2.       说明
         更新操作,建议采用Table方式;
3.       子项说明
Ø         MainInfo 节点:表名;
Ø         ValueList 节点:赋值子项;
Ø         WhereList 节点:条件子项;
4.       执行函数: ExeSingleNonQuery 、ExeNonQuery;
3.2.5 Delete类型
1.       示例
        <DeleteStudentCommandName="Delete"Depiction=" 删除学生表">
            <MainInfo>
                student
            </MainInfo>
            <WhereList>
                <student_idDepiction=" 学生ID号" DataType ="Number"   Operator ="=">
                    student_id</student_id>
                <nameDepiction=" 学生姓名" DataType ="String"   Operator ="=">
                    student_name</name>
            </WhereList>
 </DeleteStudent>
2.       说明
         删除操作,建议采用Table方式;
3.       子项说明
Ø         MainInfo 节点:表名;
Ø         WhereList 节点:条件子项;
4.       执行函数: ExeSingleNonQuery 、ExeNonQuery;
3.2.6 Procedure类型
1.       示例
        <ExeProcedureCommandName="Procedure"Depiction=" 执行非查询存储过程">
            <MainInfo>
                procedurename
            </MainInfo>
            <WhereList>
                <student_idDepiction=" 学生ID号" DataType ="Number"   Operator ="=">
                    student_id</student_id>
                <nameDepiction=" 学生姓名" DataType ="String"   Operator ="=">
                    student_name</name>
                <birthdayDepiction=" 学生生日" DataType ="DateTime"   Operator ="=">
                    student_birthday</birthday>
            </WhereList>
 </ExeProcedure>
2.       说明
         非查询存储过程;
3.       子项说明
Ø         MainInfo 节点:存储名;
Ø         WhereList 节点:条件子项;
4.       执行函数: ExeSingleNonQuery 、ExeNonQuery;
3.2.7 ProcedureQuery类型
示例
        <QueryProcedureCommandName="ProcedureQuery"Depiction=" 执行查询存储过程">
            <MainInfo>
                procedurename
            </MainInfo>
            <WhereList>
                <student_idDepiction=" 学生ID号" DataType ="Number"   Operator ="=">
                    student_id</student_id>
                <nameDepiction=" 学生姓名" DataType ="String"   Operator ="=">
                    student_name</name>
                <birthdayDepiction=" 学生生日" DataType ="DateTime"   Operator ="=">
                    student_birthday</birthday>
            </WhereList>
 </QueryProcedure>
说明
         非查询存储过程;
子项说明
Ø         MainInfo 节点:存储名;
Ø         WhereList 节点:条件子项;
执行函数: ExeQuery 、ExeQueryExtend;
3.2.8 ExtentSelect类型
示例
        <ExtendSelectStudentCommandName="ExtendSelect"
                Depiction =" 扩展查询表(假设有科目安排表,subjectplan)">
            <MainInfo>
                insert subjectplan(student_id,subject_name,isplan)
                    select student_id,'数学 ',0 from student where 1=1
            </MainInfo>
            <WhereList>
                <student_idDepiction=" 学生ID号" DataType ="Number"   Operator ="=">
                    student_id </student_id>
                <nameDepiction=" 学生姓名" DataType ="String"   Operator ="=">
                    student_name </name>
                <birthdayDepiction=" 学生生日" DataType ="DateTime"   Operator ="=">
                    student_birthday </birthday>
            </WhereList>
            <TailInfo> order by student_id</TailInfo>
 </ExtendSelectStudent>
说明
         扩展查询;
子项说明
Ø         MainInfo 节点:主执行语句,Insert、Udate、Delete语句;
Ø         WhereList 节点:条件子项;
执行函数: ExeSingleNonQuery 、ExeNonQuery;
3.2.9 Other类型
示例
        <OtherExeCommandName="Other"Depiction=" 创建学生表">
            <MainInfo>
                CREATE TABLE [student]
                (
                    [student_id] [int],
                    [student_name] [varchar] (40) ,
                    [student_birthday] [DateTime] ,
                )
                GO
            </MainInfo>
 </OtherExe>
说明
         扩展查询;
子项说明
Ø         MainInfo 节点:单一执行语句;
执行函数: ExeSingleNonQuery 、ExeNonQuery;
3.2.10 Single类型
示例
        <SingleCommandName="Single"Depiction=" 支持调用的程序直接写入SQL后进行操作,
                标签固定格式">
            <MainInfo>
            </MainInfo>
 </Single>
说明
         程序执行单一语句,固定格式;
子项说明
Ø         MainInfo 节点:无信息,固定格式;
执行函数: ExeQuery 、ExeQueryExtend、ExeSingleNonQuery、ExeNonQuery;
 
下载最新版本FrameCountry数据访问层架构: http://blog.csdn.net/lizheng82/archive/2007/06/18/1656140.aspx
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值