一.tp框架数据访问(pdo基础) public function test() { $n = D("Nation"); //select();find(); //查询 1.$attr = $n->select();//查所有,返回一个关联数组,二维关联数组 2.$attr = $n->select("n001,n002");//根据参数(主键值)查 3.$attr = $n->find("n002");//查一条数据,一维数组…
一.tp框架数据访问(pdo基础) public function test() { $n = D("Nation"); //select();find(); //查询 1.$attr = $n->select();//查所有,返回一个关联数组,二维关联数组 2.$attr = $n->select("n001,n002");//根据参数(主键值)查 3.$attr = $n->find("n002");//查一条数据,一维数组…
一些小的C/S项目(winform.WPF等),因需要访问操作数据库,但又不能把DB连接配置在客户端上,原因有很多,可能是DB连接无法直接访问,或客户端不想安装各种DB访问组件,或DB连接不想暴露在客户端(即使加密连接字符串仍有可能被破解的情况),总之都是出于安全考虑,同时因项目小,也无需采用分布式架构来将业务操作封装到服务端,但又想保证客户端业务的正常处理,这时我们就可以利用ASP.NET WEB API框架开发一个简单的提供对数据库的直接操作(CRUD)框架,简称为:分布式数据访问中间层.…
适用于app.config与web.config的ConfigUtil读写工具类   之前文章:<两种读写配置文件的方案(app.config与web.config通用)>,现在重新整理一个更完善的版本,增加批量读写以及指定配置文件路径,代码如下: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 4…
使用Repository模式构建数据库访问层 使用ASP.NET Web Api构建基于REST风格的服务实战系列教程[二]——使用Repository模式构建数据库访问层 系列导航地址http://www.cnblogs.com/fzrain/p/3490137.html 前言 在数据访问层应用Repository模式来隔离对领域对象的细节操作是很有意义的.它位于映射层之上作为对于数据进行CRUD操作的一个抽象层.在Repository模式中,我们可以像操作内存里的集合一样来操作数据,而Rep…
只需两步!Eclipse+Maven快速构建第一个Spring Boot项目 构建了第一个Spring Boot项目. Spring Boot连接MySQL数据库 连接了MySQL数据库. 本文在之前的基础上,使用Spring Data Jpa对MySQL数据库进行CRUD——增加(Create).查询(Retrieve).更新(Update)和删除(Delete) 操作. Spring Data Jpa JPA是什么?看看百度怎么说.JPA是Java Persistence API的简称,中文…
ThinkPHP内置了抽象数据库访问层,把不同的数据库操作封装起来,我们只需要使用公共的Db类进行操 作,而无需针对不同的数据库写不同的代码和底层实现,Db类会自动调用相应的数据库驱动来处理.采用 PDO方式,目前包含了Mysql.SqlServer.PgSQL.Sqlite等数据库的支持. 如果应用需要使用数据库,必须配置数据库连接信息,数据库的配置文件有多种定义方式. 一.配置文件定义 二.方法配置 三.模型类定义 配置参数参考 一.配置文件定义 常用的配置方式是在应用目录或者模块目录下面的…
之前我一直都是在博客园中查看各位高手的博文,确实学到了不少知识,不过比较少写博客,现在就把我自己在项目实施过程中使用到比较好的技术框架写出来,希望能让更多的人了解和学习. 通常我们在开发使用数据库访问帮助类时,都单独的针对某一种数据进行编写相应的数据访问帮助类,如SQLHelper,OracleHelper,OleDbHelper等,其实这些都帮助类的实现都是继承并实现ADO.NET中的数据库访问基类的,如SQLCommand->DbCommand,SQLConnection->DbConne…
第7章 数据库访问与ORM https://coding.imooc.com/learn/list/97.html 目录: 7-1 数据库操作三种方式之原生SQL 19:09 7-2 从一个错误了解Exception的继承关系 13:23 7-3 TP5数据库中间层架构解析 23:06 7-4 查询构造器 一 13:28 7-5 查询构造器 二 13:20 7-6 查询构造器 三 11:12 7-7 开启SQL日志记录 16:07 7-8 ORM与模型 10:19 7-9 初识模型 17:47…
ylbtech-架构-数据库访问-SQL语言进行连接数据库服务器-DAO:DAO DAO(Data Access Object) 数据访问对象是一个面向对象的数据库接口,它显露了 Microsoft Jet 数据库引擎(由 Microsoft Access 所使用),并允许 Visual Basic 开发者通过 ODBC 像直接连接到其他数据库一样,直接连接到 Access 表.DAO 最适用于单系统应用程序或小范围本地分布使用. 1.返回顶部 1. 中文名:数据库访问对象 外文名:Data A…
在我的各种开发框架中,数据访问有的基于微软企业库,有的基于EFCore的实体框架,两者各有其应用场景,不过多的去比较.最近在使用SqlSugar的时候,觉得这个数据访问处理的组件确实很灵活,据说性能也是很不错,于是用来整合测试一下,它对多种关系型数据库如SqlServer.Oracle.Mysql.SQLite.PostgreSQL都很容易提供支持,通过特性标注的方式,可以很好的实现数据访问的处理,这点很类似EfCore的处理,同时SqlSugar又提供很灵活的SQL处理操作.因此多花了一些时间…
[入门级] visual studio 2010 mvc4开发,用ibatis作为数据库访问媒介(一) Date  周二 06 一月 2015 By 钟谢伟 Tags mvc4 / asp.net 示例下载 实现编程环境 安装visual studio 2010,由于mvc4并不是visual studio 2010默认的mvc版本,因此首先需要安装visual studio 2010 service package 1,然后安装mvc4即可,在安装visual studio 2010 serv…
以下是我编写的DataAccess通用数据库访问类,简单易用,支持:内联式创建多个参数.支持多事务提交.支持参数复用.支持更换数据库类型,希望能帮到大家,若需支持查出来后转换成实体,可以自行扩展datarow转实体类,也可以搭配dapper.net实现更强大的功能. /// <summary> /// 通用数据库访问类,支持多种数据库,无直接依赖某个数据库组件 /// 作者:Zuowenjun /// 日期:2016-6-3(修订:2016-10-6) /// </summary>…
在我们开发很多项目中,数据访问都是必不可少的,有的需要访问Oracle.SQLServer.Mysql这些常规的数据库,也有可能访问SQLite.Access,或者一些我们可能不常用的PostgreSQL.IBM DB2.或者国产达梦数据库等等,这些数据库的共同特点是关系型数据库,基本上开发的模型都差不多,不过如果我们基于ADO.NET的基础上进行开发的话,那么各种数据库都有自己不同的数据库操作对象,微软企业库Enterprise Library是基于这些不同数据库的操作做的抽象模型,适合多数据…
扯淡 13年毕业之际,进入第一家公司实习,接触了 EntityFramework,当时就觉得这东西太牛了,访问数据库都可以做得这么轻松.优雅!毕竟那时还年轻,没见过世面.工作之前为了拿个实习机会混个工作证明,匆匆忙忙学了两个月的 C#,就这样,稀里糊涂的做了程序员,从此走上了一条不归路.那会也只知道 SqlHelper,DataTable.ORM?太高大上,没听说过.虽然在第一家公司只呆了两个月,但让我认识了 EntityFramework,从此也走上了 ORM 的不归路...纯纯的实体,增改删…
创建数据对象 ThinkPHP可以帮助你快速地创建数据对象,最典型的应用就是自动根据表单数据创建数据对象,这个优势在一个数据表的字段非常之多的情况下尤其明显. 很简单的例子: // 实例化User模型 $User = M('User'); // 根据表单提交的POST数据创建数据对象 $User->create(); Create方法支持从其它方式创建数据对象,例如,从其它的数据对象,或者数组等 $data['name'] = 'ThinkPHP'; $data['email'] = 'Thin…
一.数据库访问 概述 1. 数据库使用mysql,orm采用dapper框架.dapper框架应用简单,只是需要自己手写sql语句,但是对于像我这样写了多年sql语句的人来说,这应该不算问题,个人还是比较喜欢这种手写sql语句的框架. Dapper 虽然已经非常简单,但是为了调用时方便还是进行了一下封装 ,这样在写DAL 层方法时,就不用每次都try catch了. 2.先放代码: 调用方法示例: #region role 增删改查 /// <summary> /// 增加一条 /// <…
特别说明: 1.  本文只是面对数据库应用开发的程序员,不适合专业DBA,DBA在数据库性能优化方面需要了解更多的知识: 2.  本文许多示例及概念是基于Oracle数据库描述,对于其它关系型数据库也可以参考,但许多观点不适合于KV数据库或内存数据库或者是基于SSD技术的数据库: 3.  本文未深入数据库优化中最核心的执行计划分析技术. 读者对像: 开发人员:如果你是做数据库开发,那本文的内容非常适合,因为本文是从程序员的角度来谈数据库性能优化. 架构师:如果你已经是数据库应用的架构师,那本文的…
一.前言 相信许多人都百度过:“.net 数据库访问类”.然后就出来一大堆SqlHelper.我也用过这些SqlHelper,也自己写过,一堆静态方法,开始使用起来感觉很不错,它们也确实在很多时候可以很好的工作.ADO.NET已经封装很好了,我们很容易就可以实现自己的数据库访问类. 很久前,忘记在哪里看到过了,有一个朋友写了一篇[如何做一个好用的数据库访问类](有兴趣的朋友仍然可以搜索到),这篇文章确实写得很好,作者很详细的讲解了如何设计一个好的数据库访问类:所谓“好“是指:轻量.易用.通用.高…
距上次写的博客已经好几个月,一方面公司里面有很多的东西要学,平时的时候又要写代码,所以没有及时更新,不过现在还好,已经成型了,现在把之前的东西贴出来,先看一下现在做的几个界面吧.第一个界面是用颜色用区分台状态的,后来感觉这样没有图片好,于是用第二个界面…
数据库访问技术 ado.net 将数据库中的数据,提取到内存中,展示给用户看还可以将内存中的数据写入数据库中去 并不是唯一的数据库访问技术,但是它是最底层的数据库访问技术 1.创建数据库,并设置主外键关系 2.创建新的C#项目,创建 数据库连接类 与 数据库操作方法 a.引用数据库 using System.Data.SqlClient;    b.创建数据库连接类:先进行编写连接字符串,在实例化连接类 c.创建数据库操作方法(此处不是实例化类)    d.打开数据库 → 执行操作 → 关闭数据…
一.前言 相信许多人都百度过:“.net 数据库访问类”.然后就出来一大堆SqlHelper.我也用过这些SqlHelper,也自己写过,一堆静态方法,开始使用起来感觉很不错,它们也确实在很多时候可以很好的工作.ADO.NET已经封装很好了,我们很容易就可以实现自己的数据库访问类. 很久前,忘记在哪里看到过了,有一个朋友写了一篇[如何做一个好用的数据库访问类](有兴趣的朋友仍然可以搜索到),这篇文章确实写得很好,作者很详细的讲解了如何设计一个好的数据库访问类:所谓“好“是指:轻量.易用.通用.高…
ADO.NET 代码综合示例 前面已经介绍过OLE DB.NET和SQL Server.NET数据提供者可以用来连接不同的数据源. 以下代码不仅综合演示了使用ADO.NET的这两种数据提供者访问数据库的一般步骤,而且说明了使用不同种类的ADO.NET组件集合访问数据库的一般步骤. 可以通过代码进一步了解这两种数据提供者访问方式的异同之处. 使用OLE DB.NET  Provider OLE DB的数据提供者可以访问Access和SQL等数据库,代码如下: //设置连接字符串 string db…
综合示例 说明:前面介绍了那么多,光说不练假把式,还是做个实例吧. 表:首先你要准备一张表,这个自己准备吧.我们以学生表为例. 1.ExecuteScalar方法 ExecuteScalar方法执行返回单个值的命令.例如,如果想获取Student数据库中表studentInfo的学生的总人数,则可以使用这个方法执行SQL查询: Select count(*) from studentInfo . (1) 建立Windows Application 应用程序 (2) 在Form1上添加一个按钮Bu…
using System; using System.Data; using System.Data.SqlClient; namespace Whir.Software.Framework.Ultimate { /// <summary> /// 数据库访问助手 /// </summary> public class DbHelper { #region 判断连接是否成功 /// <summary> /// 判断连接是否成功! /// </summary>…
using System; using System.Data; using System.Data.SqlClient; namespace Whir.Software.Framework.Ultimate { /// <summary> /// 数据库访问助手 /// </summary> public class DbHelper { #region 判断连接是否成功 /// <summary> /// 判断连接是否成功! /// </summary>…
修改sqlnet.ora文件中的IP列表后都需要重启监听才能生效.(原文是: Any changes to the values requires the TNS listener to be stopped and restarted.但通过测试单机情况下lsnrctl reload同样可以生效.测试11G R2 RAC环境下lsnrctl reload不但不会使得更新内容生效,而且还将已经注册到监听中的服务清掉,导致数据库无法连接.因此rac环境下不能使用lsnrctl reload命令,必…
很多时候,为了提升性能,我们可以给数据库访问层做缓存. 以下几步可以完成这个任务:1. 使用自定义的 XPObjectSpaceProvider1.1. 创建自定义的 XPObjectSpaceProvider 类,派生类中需要重写CreateDataLayer 方法去创建一个 IDataLayer 对象,连接到 DataCacheNode. 1.2. 让XAF在 XafApplication.CreateCustomObjectSpaceProvider 事件中,或重写  theXafAppl…
抽象一个数据库访问层的统一入口(类似于EF的上下文,拿到上下文,就可以拿到所有的表).实际这个入口就是一个类,类里面有所有的仓储对应的属性.这样,只要拿到这个类的实例,就可以点出所有的仓储,我们在 Repository层里面添加一个类 DbSession.cs namespace YouJiao.MvcWeb.Repository { /// <summary> /// 相当于是简单工厂:通过DbSession可以拿到所有的仓储的实例,所以我们也可以将此DbSession看做是简单工厂. //…
我们现在先来看看数据库的生成顺序   居然是 Idal层排在第一,而 web层在第二,model层反而在第三 了   我们需要把 coomon 公用层放在第一,Model层放在第二,接下来是 Idal层,dal层,然后是bll层,最后是 web层,这个顺序怎么调整呢? 点击旁边的依赖项. 分别把每个项目所依赖的项目都勾选上,最后点击确认后,我们看看生成顺序. 这样,当我们生成 web层的时候,会自动从上到下生成 common,model,idal,dal,bll层. 我们对web层进行生成一下,…