自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

木生火

起舞弄清影,人间近黄昏;今夕是何年,点亮一盏灯

  • 博客(133)
  • 收藏
  • 关注

原创 VS.NET(C#)提升-3.01_数据控件:常用数据视图、数据源控件

常用数据视图控件Repeater 只读数据 只读 使用模板控制外观 数据绑定 不分页显示 DataList 可编辑列表 可编辑 数据绑定 不分页显示 DataGrid 可编辑列表 可编辑 数据绑定 支持分页和排序显示 GridView 可编辑列表 类似DataGrid,但功能更强 数据绑定 支持分页和排序显示 ASP.NET数据源控件l  ObjectDataSo...

2018-03-19 21:28:31 772

原创 VS.NET(C#)提升-2.38_数据库接口:DataTable属性与方法

每一个DataSet都是一个或多个DataTable 对象的集合(DataTable相当于数据库中的表)。DataTable 类可以独立创建和使用 DataTable对象,也可以作为 DataSet 的成员创建和使用。这些DataTable对象由数据行(DataRow)、数据列(DataColumn)、字段名(Column Name)、数据格(Item),以及约束(Constraint)和有关Da...

2018-03-19 20:22:48 408

原创 VS.NET(C#)提升-2.37_数据库接口:C#访问DataSet对象演示(代码案例)

在上节的基础上,把创建在DataSet对象中两个表的数据输出到页面上来。实现如下效果:点击“访问DataSet对象”,显示DataSet中的所有数据表数据给按钮单击事件添加ShowDataSet(DataSet ds)函数调用 protected void Button1_Click(object sender, EventArgs e) { ShowDataSet(ds_...

2018-03-18 20:44:09 203

原创 VS.NET(C#)提升-2.36_数据库接口:C#创建DataSet对象演示(代码案例)

页面第一次加载时创建DataSet对象,为数据库Forum 创建本地副本,在其中加入tbClass表和tbBoard表protected void Page_Load(object sender, EventArgse) { if(IsPostBack) { this.CreateDataSet(); } ...

2018-03-18 20:31:01 347

原创 VS.NET(C#)提升-2.35_数据库接口:DataColumn和DataRow对象

1)DataColumn对象在DataTable里,用DataColumn对象来描述对应数据表的字段,用DataRow对象来描述对应数据库的记录。值得注意的是,DataTable对象一般不对表的结构进行修改,所以一般只通过Column对象读列。DataColumn对象的常用属性如下。Caption属性:用来获取和设置列的标题。ColumnName属性:用来描述该DataColumn在DataCol...

2018-03-18 19:34:09 398

原创 VS.NET(C#)提升-2.34_数据库接口:DataSet对象

DataSet的对象模型如下图DataSet对象包含:DataTableCollection类型和DataRelationCollection类型:DataTableCollection类型是DataTable对象集合,作为DataSet对象的Tables属性。DataRelationCollection类型是DataRelation对象集合。DataTable对象包含:DataColumnCol...

2018-03-18 19:32:28 277

原创 VS.NET(C#)提升-2.33_数据库接口:C#使用DataTableMaooing类

我们看到,表默认为Table,Table1,Table2,以此类推,显示给客户不太友好。如下图:我们可以使用DataTableMaooing类来对DataTable对象与DataColumn对象进行一次友好的名称映射!上述效果代码如下public DataSet GetDataSet(string v_strConn) { SqlConnection conn = new ...

2018-03-18 18:55:55 168

原创 VS.NET(C#)提升-2.32_数据库接口:C#创建SqlDataAdapter对象常用方法

web.config 定义连接字符串<connectionStrings> <add name="VocationConnectionString" connectionString="Data Source=127.0.0.1;Initial Catalog=GSHRLeaveDB;User ID=ebiz_web;Password=ebiz@#1234" provid...

2018-03-18 14:10:15 241

原创 VS.NET(C#)提升-2.31_数据库接口:C#使用DataAdapter实例讲解

利用DataAdapter对象填充与更新DataSet对象一,填充DataSet对象①根据连接字符串和SQL语句,创建一个SqlDataAdapter对象。    虽然没有出现Connection和Command对象的控制语句,但是SqlDataAdapter对象会在创建的时候,自动构造对应的SqlConnection和SqlCommand对象,同时根据连接字符串自动初始化连接。注意!此时SqlC...

2018-03-18 11:48:47 375

原创 VS.NET(C#)提升-2.30_数据库接口:DataAdapter属性与方法

DataAdapter的基类DataAdapter的基类是DBDataAdapter。它的结构如下:    publicabstract class DbDataAdapter : DataAdapter,IDbDataAdapter,IDataAdapter, ICloneable可以看到,DBDataAdapter是一个抽象基类,不能被实例化,并且继承DataAdapter类,IDBDataA...

2018-03-18 10:41:36 552

原创 VS.NET(C#)提升-2.29_数据库接口:DataAdapter工作过程

以Customer表为例,描述了一个DataAdapter的工作过程,如下查询Customer信息过程:1)DataAdapter首先将构造一个SelectCommand实例(本质就一个Command对象);2)然后检查是否打开连接Connection对象,如果没有打开连接则打开连接;3)紧接着调用DataReader接口检索数据;4)最后根据维护的映射关系,将检索到得数据库填充到本地的DataS...

2018-03-18 10:31:45 170

原创 VS.NET(C#)提升-2.28_数据库接口:DataAdapter作用

回顾ADO.NET有两个核心组件:基于连接的Data Provider组件以及基于非连接的DataSet组件。基于连接的Data Provider组件常用于实时地从数据库中检索数据。而基于非连接的DataSet,似乎与数据库没有直接联系,仅仅用于在本地内存中存储Data Provider提供的数据表或集合。DataAdapter作用前面我所讲的对象中,如Connection对象,Command对象...

2018-03-18 10:14:24 427

原创 VS.NET(C#)提升-2.27_数据库接口:SqlDataReader查看table架构

案例代码using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;using System...

2018-03-15 22:02:53 170

原创 VS.NET(C#)提升-2.26_数据库接口:SqlDataReader应用案例

DataReader并没有将数据保存在本地内存中,可以理解成只是指向了数据,连接关闭后用DataReade 读取数据当然无法实现。与DataSet不同,DataSet已经将数据保存在本地内存中。举例说明public static SqlDataReader GetDataReader(string sql, params SqlParameter[] parameters){ using (S...

2018-03-15 21:45:52 238

原创 VS.NET(C#)提升-2.26_数据库接口:DataReader与SqlDataReader属性与方法

类继承System.Object  System.MarshalByRefObject    System.Data.Common.DbDataReader      System.Data.SqlClient.SqlDataReaderDataReader对象不能直接new实例化的,通过Command对象的ExecuteReader()方法获得一个DataReader对象。DataReader对...

2018-03-15 21:27:42 389

原创 ASP.NET(C#)编程百例-001_获得当前访问者登陆AD域和账号

当客户机IE浏览器打开网址URL ,在页面显示AD域名\账号。案例代码通过域名/账号查询使用者工号,依据工号判断是否有权限使用该页面程式,如下: if (!IsPostBack) { if ((Page.User.Identity.AuthenticationType.ToString() == "Negotiate") || (Page.User.Iden...

2018-03-15 14:48:13 1595

原创 VS.NET(C#)提升-2.25_数据库接口:SqlCommand对象执行存储过程

存储过程是预先优化编译好的SQL语句,用户通过存储过程的名字与参数(如果该存储过程带有参数)来执行它。我们为数据库Forum建一个存储过程,如下图所示:这个存储过程需要做三件事情:1,存储过程通过输入参数@ClassName的值查询出这个分类的对应ClassID,把该值赋给输出参数@ClassID。2,向表tbBoard插入一条记录,板块名为输入参数@BoardName,该板块所属的分类ID为输出...

2018-03-14 23:07:22 312

原创 VS.NET(C#)提升-2.24_数据库接口:SqlCommand对象SqlParameter抵御“SQL 注入”攻击

在更新DataTable或是DataSet时,如果不采用SqlParameter,当输入的Sql语句出现歧义,如字符串中含有单引号,程序就会发生错误,并且可以轻易地通过拼接Sql语句来进行注入攻击。SqlCommand对象可使用参数(SqlParameter)来将值传递给 SQL 语句或存储过程。与命令文本不同,参数输入被视为文本值,而不是可执行代码。其次,SqlParameter还可提高查询执行...

2018-03-14 21:58:29 641

原创 VS.NET(C#)提升-2.23_数据库接口:SqlCommand对象异步执行案例代码

执行Command对象命令时,需要等待命令完成才能执行其他操作。比如,执行ExcuteNonQuery()方法,应用程序将会保持阻塞,直到数据操作成功完成或者异常终止以及连接超时。异步执行的思想是,在执行命令操作时,无需等待命令操作完成,可以并发的处理其他操作。BeginExecuteNonQuery和EndExcuteNonQuery就是一对典型的为异步操作服务的方法。BeginExecuteN...

2018-03-14 21:21:49 283

原创 VS.NET(C#)提升-2.22_数据库接口:SqlCommand对象ExecuteScalar方法(百万行记录)

ExecuteScalar: 执行查询,并返回查询结果集中第一行的第一列(object类型)。返回一个System.Object类型的数据,因此我们在获取数据时需要进行强制类型转换。如果找不到结果集中第一行的第一列,,ExcuteScalar方法返回System.DBNull,即返回 null 引用。案例代码:取tb_user中的行数(超出百万行)using System;using Syste...

2018-03-14 15:30:53 466

原创 VS.NET(C#)提升-2.21_数据库接口:SqlCommand对象ExcuteReader方法

ExcuteReader方法返回一个DataReader对象。特点●DataReader一次遍历一行数据,并返回一个包含列名字集合。●第一次调用Read()方法获取第一行数据,并将游标指向下一行数据。当再次调用该方法时候,将读取下一行数据。●当检测到不再有数据行时,Read()方法将返回false。●通过HasRows属性,我们知道查询结果中是否有数据行。●当我们使用完DataReader时,一定...

2018-03-14 15:17:19 352

原创 VS.NET(C#)提升-2.20_数据库接口:SqlCommand对象ExcuteNonQuery方法

一,准备创建数据库:mshDB_DebugUSE master;GOCREATE DATABASE mshDB_DebugON( NAME = MyDemo_data, /*指定文件的逻辑名称*/ FILENAME = 'D:\ mshDB_Debug_dat.mdf',/*物理文件名称*/ SIZE = 10,/*指定文件大小,单位MB*/ MAXSIZE = 50,/*...

2018-03-14 14:58:56 779

原创 VS.NET(C#)提升-2.19_数据库接口:SqlCommand对象生成及应用案例

在创建Command对象之前,需要明确两件事情:1,对哪个数据源进行操作?2,执行什么样的操作?1,指定连接的数据源:通过创建Connection对象。因为在使用SqlCommand对象之前,首先要确定一个SqlConnection对象,用于和SQL Server数据库进行数据传递生成SqlConnection对象,代码如下://构造连接字符串SqlConnectionStringBuilder...

2018-03-13 22:46:06 286

原创 VS.NET(C#)提升-2.19_数据库接口:SqlCommand对象的常用属性与方法

常用属性属性 说明 CommandText 其返回类型为string, 获取或设置要对数据源执行的 SQL 语句、存储过程或表。 CommandTimeOut 其返回类型为int,获取或设置在终止执行命令的尝试并生成错误之前的等待时间。 CommandType 其返回类型为CommandType,读取或设置表示CommandText属性将如何 被解释的值,其有效的值可为CommandTyp...

2018-03-13 21:51:37 260

原创 VS.NET(C#)提升-2.18_数据库接口:Command对象

Connection对象连接好外部数据源,不提供对外部数据源的任何操作。Command对象封装了所有对外部数据源的操作(包括SELECT、INSERT、UPDATE或DELETE等SQL语句与存储过程),并在执行完成后返回合适的结果。对于不同的数据源,ADO.NET提供了不同的Command对象,如下:●SqlCommand●OleDbCommand●OdbcCommand...

2018-03-13 21:48:09 152

原创 VS.NET(C#)提升-2.17_数据库接口:connection.close指令与连接池

当应用程序运行的时候,会有一个连接池的管理控件运行在应用程序的进程里,统一管理应用程序和SQLSERVER建立的所有连接,并且维护这些连接一直处于活动状态。ODBC、ADO和ADO.NET 都支持连接池这种机制,JAVA的JDBC也支持连接池这种机制。ODBC连接池可以在控制面板->数据库(ODBC)里看到下面的选项:     有用户发出一个connection open指令时连接池会在自己...

2018-03-13 18:36:35 485

原创 VS.NET(C#)提升-2.16_数据库接口:SqlServer数据库连接数及连接池案例分析

连接字符串中,有Pooling关键字,默认情况下其值为true,即支持连接池技术。如果不想支持连接池技术,可以显式地将其赋值为false。另外Max Pool Size, Min Pool Size为池允许的最大和最小连接数。连接池就是一个容器,它存放了一定数量的与数据库服务器的物理连接。因此,当我们需要连接数据库服务器的时候,只需去池(容器)中取出一条空闲的连接,而不是新建一条连接。比如:对Co...

2018-03-13 18:18:52 1173

原创 VS.NET(C#)提升-2.15_数据库接口:几种典型连接字符串与实例化案例

一:SqlClient 连接字符串分两种情况:SQLServer身份验证、Windows集成验证① SQLServer身份验证DataSource=ServerAddress;InitialCatalog=DataBase;UserId=Username;Password=Password;或者Server=ServerAddress;Database=DataBase;UserID=Userna...

2018-03-12 23:05:39 275

原创 VS.NET(C#)提升-2.14_数据库接口:连接字符串

ADO.NET类库为不同的外部数据源提供了一致的访问。这些数据源可以是本地的数据文件(如excel、txt、access、SQLite),也可以是远程的数据库服务器(如SQL Server、MySQL、DB2、Oracle等)。ADO.NET已经为不同的数据源编写了不同的数据提供程序。为访问到正确的数据源,这时连接字符串出现了,它是一组被格式化的键值对:一个元素包含一个键值对,元素之间由“;”分开...

2018-03-12 23:00:57 287

原创 VS.NET(C#)提升-2.13_数据库接口:connection及源码案例

对于ADO.NET而言,不同的数据源,都对应着不同的Connection对象。具体Connection对象如下表:名称                               命名空间                                     描述SqlConnection               System.Data.SqlClient              表示与S...

2018-03-12 22:42:33 410

原创 VS.NET(C#)提升-2.12_数据库接口:NET Framework数据提供程序分类

NET数据提供程序分类,如下图System.Data  命名空间提供了不同的ADO.NET类System.Data.Common  各种数据访问类的基类和接口System.Data.SqlClient  操作Sql Server的数据访问类SQL Server 的 .NET Framework 数据提供程序①NET Framework 数据提供程序 (SqlClient) 使用自己的协议与 SQL...

2018-03-12 22:24:12 367

原创 VS.NET(C#)提升-2.11_数据库接口:ADO.NET操作数据库的三种主要方式

三种主要方式:单向操作、双向操作、复合操作1,单向操作:Insert,Update,Delete2,双向操作:Select3,复合操作:Select+Update

2018-03-12 00:05:18 201

原创 VS.NET(C#)提升-2.10_数据库接口:ADO.net核心类的组件

微软重新设计的数据访问模型,它们是两种截然不同的数据访问方式。从技术层面讲,ADO使用OLE DB接口并基于微软的COM技术,而ADO.NET拥有自己的ADO.NET接口并且基于微软的.NET体系架构。体系结构对比如下      上图的ADO.NET架构有两个核心的类组件,如下图① DataSet:负责处理软件内部的实际数据② .NET Framework数据提供程序:负责与外部数据系统通信这两个...

2018-03-11 23:29:06 461

原创 VS.NET(C#)提升-2.9_数据库接口:ADO结构组成及连接方式实例

说通俗点 OLE DB和ODBC都是最底层的东西,而ADO对象给我们提供了一个“可视化”和应用层直接交互的组件,ADO对象通过OLE DB间接取得数据库中的数据。如下图:从上图看出,可以说ADO是应用程序和数据底层的一个中间层,我们不用过多的关注OLEDB的内部机制,只需要了解ADO通过OLE DB创建数据源的几种方法即可,就可以通过ADO轻松地获取数据源。ODBC 、OLE DB、ADO  数据...

2018-03-11 19:53:46 298

原创 VS.NET(C#)提升-2.8_数据库接口:ADO由来

上节我们介绍OLE-DB,但它无法广为流行,因为如下两点:1,由于OLE-DB太底层化,使用上非常复杂,需要程序员拥有高超的技巧。2,OLEDB 标准的API 是C++ API,只能供C++ 语言调用。    为了使得流行的各种编程语言都可以编写符合OLE DB 标准的应用程序,微软在OLE DB API 基础之上,提供了一种面向对象、与语言无关的(Language-Neutral)应用编程接口,...

2018-03-11 17:51:31 171

原创 VS.NET(C#)提升-2.7_数据库接口:OLE-DB诞生

 ODBC仅支持关系数据库,以及传统的数据库数据类型,并且只以C/C++语言API(API就是一些C语言的代码,是最底层的程序,在windows中就是一些.dll的文件)形式提供服务,因而无法符合日渐复杂的数据存取应用,也无法让脚本语言使用。对于后来的EXCEL等根本不能支持!现今的应用程序很可能需要从不同的数据源取得数据,加以处理,再把处理过的数据输出到另外一个数据源中。随着数据源日益复杂化,数...

2018-03-11 17:40:58 312

原创 VS.NET(C#)提升-2.6_数据库接口:JDBC及驱动类型

JAVA语言参考ODBC,设计专用的数据库连接规范JDBC(JAVA Database Connectivity)。目标是让Java开发人员在编写数据库应用程序时,可以有统一的接口,不依赖特定数据库API,达到“ 一次开发,适用所有数据库”。JDBC标准中,把驱动程序分为四种类型:Type 1: JDBC-ODBC BridgeDriver(JDBC-ODBC 桥)    SUN发布了JDBC-O...

2018-03-11 17:03:12 1075

原创 VS.NET(C#)提升-2.5_数据库接口:ODBC数据源及案例

分类用户数据源    用户创建的数据源,称为“用户数据源”。此时只有创建者才能使用,并且只能在所定义的机器上运行。任何用户都不能使用其他用户创建的用户数据源。系统数据源    所有用户和在Windows 下以服务方式运行的应用程序均可使用系统数据源。文件数据源    文件数据源是ODBC3.0以上版本增加的一种数据源,可用于企业用户,ODBC驱动程序也安装在用户的计算机上。案例:创建系统的数据源①...

2018-03-11 13:42:39 268

原创 VS.NET(C#)提升-2.4_数据库接口:ODBC数据库驱动程序类型(单层与多层)

两大类:单层驱动程序和多层驱动程序1,单层数据库驱动程序早期的xBASE数据库系统的驱动程序就属于单层驱动程序。单层驱动程序不仅要处理ODBC函数调用,还要解释执行SQL语句,执行数据库管理系统(DBMS)的功能,实际上它就是一个数据库管理系统。利用它所编写的数据库应用程序,有两种运行模式:运行于单机环境桌面数据库应用产品,如下图所示运行在网络环境下的文件服务器数据库应用产品,如图所示这种的数据库...

2018-03-11 13:28:03 232

原创 VS.NET(C#)提升-2.3_数据库接口:ODBC组成原理

从某种意义上来讲,ODBC实际上主要是一个数据库的访问库(API),它包含访问不同数据库所要求的ODBC驱动程序。应用程序要操作不同类型的数据库,只要调用ODBC所支持的函数,动态链接到不同的驱动程序上即可。简化如下图:上图可看出,应用程序调用ODBC API(函数调用),但ODBC API不直接访问数据库,通过驱动程序管理器与数据库交换信息。驱动程序管理器将应用程序对ODBC API的调用传递给...

2018-03-11 12:46:55 241

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除