文章分类 - Ado.net
摘要:传统 sql in 写法是 SELECT * FROM dbo.Users s WHERE s.id IN (1,2,3) 在dapper因为安全性,不能直接用sql接接 要采用参数化, 开始我的写法是 _db.Query<Users>("SELECT * FROM dbo.Users s WHER
阅读全文
摘要:如需运行分布式事务,需启动Distributed Transaction Coordinator服务,如启动该服务报错,输入CMD命令msdtc -resetlog即可。T-SQL:Create Table TranTable( Id INT IDENTITY(1,1) PRIMARY KEY, Priority TINYINT--最大值255)C#:string sql1 = "INSERT INTO TranTable VALUES(1)";//正常插入string sql2 = "INSERT INTO TranTable VALUES(256)"
阅读全文
摘要:通过工具箱拖拽创建一个强类型的数据集(注:这里并位适用服务器资源管理器,仅仅通过自定义创建强类型数据集中的一个表结构)适用和弱类型数据集一样的方式来填充强类型数据集,代码如下: StringconnStr=@"DataSource=.;Initialcatalog=D:\MYBLOG\DB\MYBLOGDB.MDF;UID=sa;PWD=sa";using(SqlConnectionconn=newSqlConnection(connStr)){conn.Open();SqlDataAdaptersda=newSqlDataAdapter("select*from
阅读全文
摘要:DataTable 对象提供一系列可以由应用程序处理的事件名称说明ColumnChanged 在 DataRow 中指定的 DataColumn 的值被更改后发生。 ColumnChanging 在 DataRow 中指定的 DataColumn 的值发生更改时发生。 RowChanged 在成功更改 DataRow 之后发生。 RowChanging 在 DataRow 正在更改时发生。 RowDeleted 在表中的行已被删除后发生。 RowDeleting 在表中的行要被删除之前发生。 TableCleared 清除 DataTable 后发生。 TableClearing 清除 Da.
阅读全文
摘要:DataSetds=newDataSet();DataTabledt1=newDataTable();dt1.Columns.Add("id",typeof(int));dt1.Columns.Add("Name",typeof(string));dt1.PrimaryKey=newDataColumn[]{dt1.Columns["id"]};DataTabledt2=newDataTable();dt2.Columns.Add("id",typeof(int));dt2.Columns.Add("Ma
阅读全文
摘要:如果返回的是多个结果集,DataReader会提供NextResult方法来按顺序循环访问这些结果集。示例如下: StringconnStr="DataSource=NIIT-QIU\\SQLEXPRESS;Initialcatalog=MySchool;uid=sa;pwd=sa";using(SqlConnectionconn=newSqlConnection(connStr)){conn.Open();Stringsql="selectclassID,classNamefromClass;selectStudentId,LoginIdfromstudent&
阅读全文
摘要:一直都没用过CommandType枚举的TableDirect的方式,今天试了一下报错,原来TableDirect只支持OleDB摘自msdn:CommandType 属性设置为 TableDirect 时,应将 CommandText 属性设置为要访问的表的名称。 如果已命名的任何表包含任何特殊字符,那么用户可能需要使用转义符语法或包括限定字符。当您调用“执行”(Execute) 方法之一时,将返回命名表的所有行和列。为了访问多个表,请使用逗号分隔的列表(没有空格或空白),其中包含要访问的多个表的名称。当 CommandText 属性命名多个表时,返回指定表的联接。 说明只有用于 OLE D
阅读全文
摘要:Ado.net2.0中新增加了一个MagicValue,可以在应用程序的配置文件的数据库链接串种使用|DataDirectory| ,例如:<connectionStrings><addname="ConnectionString"connectionString="datasource=.;IntegratedSecurity=SSPI;AttachDBFilename=|DataDirectory|\test.mdf;"providerName="System.Data.SqlClient"/></c
阅读全文
摘要:最近项目中用到了SQL Server Express这个版本,和SQL Server的其他版本不同的是,SQL Server Express是一个免费的数据库引擎,但又比Access或者SQL CE更强大,安装好之后会有一个独立的数据库引擎服务,而且数据库体积允许达到4GB。在一些中小型企业内部系统中还是可以用的SQL Server Express有一个User Instance的新特性,简单地说,允许当前用户不是管理员身份情况下也能使用它。有兴趣的朋友,可以参考下面的链接http://msdn.microsoft.com/zh-cn/library/ms254504.aspx摘自MSDN:用
阅读全文
摘要:在C#中,如果要删除DataTable中的某一行,大约有以下几种办法:1,使用DataTable.Rows.Remove(DataRow),或者DataTable.Rows.RemoveAt(index);可以直接删除行2,datatable.Rows[i].Delete()。Delete()之后需要datatable.AccepteChanges()方法确认完全删除,因为Delete()只是将相应列的状态标志为删除,还可以通过datatable.RejectChanges()回滚,使该行取消删除。只是delete掉的效果如下:在删除DataTable中的行的时候,每删除一行,DataTabl
阅读全文
摘要:.NET的应用程序配置文件,使用的是XML格式。相对INI文件来说,它的功能要强上不少,而且具有很强的可扩展性。它的缺点是不能直接进行写操作,也就是说,不能直接在程序中修改配置文件的数据(当然不是指不能,不过不是本文讨论的范围)。本文主要目的是探讨如何扩展配置文件,并在其加入各种自定义配置信息。如何使用.NET配置文件(一) 如何使用.NET配置文件(二) 沐枫网志 3. 自定义配置结构 (使用IConfigurationSectionHandler)假设有以下的配置信息,其在MyInfo可以重复许多次,那么应如何读取配置呢?这时就要使用自定义的配置程序了。<myConfigs>&
阅读全文
摘要:System.Data.SqlClient.SqlDependency类为我们提供了一个关于sql2005的很好的功能 ,就是sql2000时代很多人梦寐以求的查询自动通知。虽然这个东西限制有很多很多,但还是有很实用价值的。我们先看一个演示例子:例子中先创建一个sql环境,里面插入了一些数据,然后用.net客户端查询,查询结果出来后再去更改数据库,增加一些记录,同时查看.net客户端的表格是否变化。1、创建sql测试环境Sql代码 usemaster go createdatabasedbTest go usedbTest go createtabletest(idintidentity(1,
阅读全文
摘要:关于SQL Server的错误严重性级别的说明,强烈认真看一下下面的两个链接脱机帮助ms-help://MS.SQLCC.v9/MS.SQLSVR.v9.zh-CHS/sqlerrm9/html/3e7f5925-6edd-42e1-bf17-f7deb03993a7.htm在线帮助http://technet.microsoft.com/zh-cn/library/ms164086.aspx简而言之,SQL Server的错误严重性分为三个等级1. 轻微错误 :严重性级别为0-102. 中等错误 :严重性级别为11-193. 严重错误 :严重性级别为20-25SQL Server保存的所有错
阅读全文
摘要:代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--protectedvoidPage_Load(objectsender,EventArgse){if(!IsPostBack){IList<LYZX.Model.LYZX_NewsTypeMod...
阅读全文
摘要:TransactionScope是.Net Framework 2.0滞后,新增了一个名称空间。它的用途是为数据库访问提供了一个“轻量级”[区别于:SqlTransaction]的事务。使用之前必须添加对 System.Transactions.dll 的引用。 下列代码就是一个正在创建的事务,这个事务自身还封装了多个数据库查询。只要任意一个 SqlCommand 对象引...
阅读全文
摘要:在学习DataTable知识之前,我们有必要了解下ADO.NET。以下摘自MSDN: ADO.NET 对 Microsoft SQL Server 和 XML 等数据源以及通过 OLE DB 和 XML 公开的数据源提供一致的访问。数据共享使用者应用程序可以使用 ADO.NET 来连接到这些数据源,并检索、处理和更新所包含的数据。ADO.NET 通过数据处理将数据访问分解为多个可以单独使用或一前...
阅读全文
摘要:我们来看看以下程序吧:上述程序中第 12 行中的 DataTable 类的 Rows 属性的类型为 DataRowCollection 类。第 13 行中的 DataTable 类的 Select 方法返回 DataRow[] 数组。我们知道,foreach 语句对实现 System.Collections.IEnumerable 或 System.Collections.Generic.IEnu...
阅读全文
摘要:SCOPE_IDENTITY、IDENT_CURRENT 和 @@IDENTITY 是相似的函数,因为它们都返回插入到标识列中的值。 IDENT_CURRENT 不受作用域和会话的限制,而受限于指定的表。IDENT_CURRENT 返回为任何会话和作用域中的特定表所生成的值。调用它时必须提供表示表名的字符型参数,你可以得到你想要的任何表的最后一个IDENTITY值,即使你的代码里没有插入动作。例如...
阅读全文
摘要:因为上次遇到在webservice中处理事务的问题,偶然在调试程序的时候对OracleConnection的连接字符串enlist设置的一个有趣的发现。 以前看过一篇文章,不记得是什么文章了,文章中说对enlist最好设置为false,当时也没有怎么去深究为什么要设置为false,在我的程序中enlist=false就直接写进去了。现在才发现原来对enlist的设置与事务的处理是有这微妙的关系的。 事务管理器一般采用两种方式来管理,一种称之为Lightweight Transaction Management,简称LTM,一种称之为oleX TM。在Simple phase提交中一般使用的是.
阅读全文
摘要:*********************************** 利用DataSet分页方法***********************************主要利用DataSet的筛选数据的方法DataAdapter用Fill方法填充DataSet的时候把所取的整个记录加入到DataSet例如: MyAdapter.Fill(DataSet,TableName);有时候并不需要将整个查...
阅读全文