zoukankan      html  css  js  c++  java
  • Qin.Data发布及 使用说明

      

    背景

    公司的项目开始实体框架,但对于公司的需求其性能不如意.故此开发一个适合公司需求的数据库框架.虽然市面的有很多类似框架,虽然各有所长但短处尤在.对秋天兄的cyq.data的思想颇有所感,cyq的发布使我茅塞顿开.mysoft的风格看似linq进而触发我使用扩展.在此感谢他们.

         简介

         Qin.Data是一个通用数据库处理框架(包含MSSQL ACCESS SQLITE EXCEL MYSQL DB2 ORACLE...只要你愿意实现接口就可以).很便捷地进行常用数据库操作(增删改查).其性能是几近纯ADO.NET.对于实体的查询采用emit实现,如果您还不满意可用此框架的代码生成器直接生成纯ADO.NET SQL形式.其主要特色就是性能和便捷的操作.

        初始化配置 

         

    配置文件
    <appSettings>
            <add key="web" value="NO" />//是否是web开发
            <add key="databaseName" value="MSSQL" />//数据库类型
            <add key="linkString" value="Server=www.wwe.com.cn;database=HD01SystemDB;Uid=ss;Pwd=ss" />//连接字符串
    </appSettings>

         实例

    1)查询. 

     查询实体

              DBTool db=new DBTool(Table.EventBaseSet);//指定表

     db.Where=EventBaseSet.EventID_.Equals_(3);//锁定记录

                      var data=db.GetEntity<EventBaseSet>();//获取实体

     查询指定字段

    DBTool db=new DBTool(Table.EventBaseSet);
                   db.Where=EventBaseSet.EventID_.Equals_(32);

                   var name=db.GetOneField<string>(EventBaseSet.EventID_); 

     多字段查询

                DBTool db=new DBTool(Table.EventBaseSet);
                db.Where=EventBaseSet.EventID_.Equals_(32);
                var row=db.GetDestinationFields(EventBaseSet.EnabledBodyHtml_,EventBaseSet.Days_);

     复合条件查询

                DBTool db=new DBTool(Table.EventBaseSet);

                db.Where=EventBaseSet.EventID_.BiggerThan_(32).And_
                    (EventBaseSet.EventName_.Contains_("你好").OR_(EventBaseSet.Days_.BiggerThan_(22));

     嵌套查询 

                DBTool db=new DBTool(Table.EventBaseSet);

                db.Where= EventBaseSet.Creater_CreaterID_.Equals_(CreaterSet.CreaterID_.SelectFrom_(Table.CreaterSet).Where_(
                    CreaterSet.Name_.EqualsStr_("a")));

     自定实体查询(包括多表查询)

        var sql="复制的sql语句";

        var data=DBTool.Database.GetEntity<自定义实体>(sql); 

     数据插入操作

                DBTool db=new DBTool( Table.CitySet);// db.StartTransaction=true;//是否开启事务db.SetInsertField(CitySet.CName_,"城市1");
                db.SetInsertField(CitySet.CID_,
    "10001");
                db.SaveChanges();
                var newID
    =db.NewID;//新生成的自增主键
     

     数据更新操作
                
    //更新数据--------------
                db.SetUpdateField(CitySet.CName_,"城市一");
                db.SetUpdateField(CitySet.CID_,
    "1--1");
                db.Where
    CitySet.
    CID_.Equals_(2)
                db.SaveChanges();
                
    //-----------------------

     数据删除

                db.DeleteWhere(EventBaseSet.EventID_.Equals_(2));

                db.SaveChanges();

    代码及实体生成 

     

    QQ:564064202欢迎指教. 




    少侠,我看你气度不凡天赋异禀,这么帅,来了就给推荐一把吧




    我的最近更新
    最新发布文章、框架、咨询等,来看看吧
  • 相关阅读:
    Linux 设置主机名和 IP 地址的映射关系
    Zookeeper 数据查看工具 ZooInspector 的使用
    Zookeeper 集群
    Zookeeper 监控指定节点数据变化
    Zookeeper 常用命令
    Spring整合ActiveMQ持久化到Mysql数据库
    Activemq5.15.5持久化到mysql8.0.20
    ActiveMQ支持的协议
    SIGINT SIGTERM SIGKILL区别
    lograte -日志轮询log
  • 原文地址:https://www.cnblogs.com/humble/p/2180449.html
Copyright © 2011-2022 走看看