努力吃苹果...
- -太累了本想发昨天那个的第二篇~~结果~~只能把早就准备好的法了~~哈哈原谅我哈首先看个我自己画的结构图~~艺术品 - -顺便说说这也是我比较系统地学习~~建议大家卖本书~~然后坐例子~~当然我这得例子~~有些是原创的德的德困死了.....复习下1---DbConnection con=new SqlConnection();con.ConnectionString="连接字符串"
2-连接Odbc--Driver=用于连接的ODBC驱动Dsn-以一个数据源名称Server=所要连接服务器的名称Trusted_Connection=根据当前登录的用户所使用的域名帐户指定安全措施DataBase=所要连接的数据库DBQ=物理路径
3-ServerData Source=数据库服务器的名称或者是Ip,本机用 .dataBase=数据库的名称userpwdEnlist ,在设置为 ture的时候-,连接池(pooler)自动将连接列入调用者线程的当前事务上下文中Pooling=true请求从连接池中取出一个新的连接,如果不存在连接池,则创建他Max Pool Size-最大的连接池数量默认是100Min Pool Size-最小连接数默认是 0async=true时支持异步 Connection Reset=默认为true-从连接池中删除连接的时候会重置连接MultipleActiveResultSers=在设置为true的时候,准许从同一个连接上获取多个只进只读的结果集,默认是false //---得到网站的根目录的物理路径Response.Write(AppDomain.CurrentDomain.BaseDirectory as string);
//-----------得到网站根目录+数据库文件夹的物理路径Response.Write(AppDomain.CurrentDomain.GetData("DataDirectory") as string);
我们把SqlServer某个Db解剖了~~看看他老的构造
//-----------------------------------读取整个数据库和指定数据库的信息页面<%@ Page Language="C#" AutoEventWireup="true" CodeFile="ic.aspx.cs" Inherits="ic" %>
//--------------------代码
你联想到什么了么??对了就拿些自动生成实体类的咚咚惯用的Ok完大了还是看看基础把---DataColumn 总结DataColumn vin=new DataColumn("vin");vin.DataType =typeof(string);vin.MaxLength=23,-1这意味这不会对最大长度检查vin.Unique=true;--是否准许重复的vin.AllowDBNull=默认为 True,可以没有数据vin.Caption=标题
DataTable.PrimaryKey=new DataColumn[]{vin};//---设置标题
DataTable.Load(dataRow,LoadOption枚举);//利用datarow中的主建更新DataTable中有相同的主建的列,并把更新后的DataRow和更新前的DataRow设置成LoadOption枚举需要的样子
LoadOption枚举OverwriteChanges将原来的行和新行共同设置为UnchangedPreserveChanges不该原来行的设置,将新行设置为;UnchangedUpsert:不该原来行的设置,新航的设置为Added,如果新行和旧行的设置一样的时候则它们的设置为,Unchanged,如果它们不同,则设置为Modified~~太麻烦了看个例子吧
//--------------------------------DataRow Detached-DataRow创建了但是没有加到某个DataTable中Added-创建了dataroe并添加到DataTable中Unchanged--自从上一次调用AcceptChanges方法后还有没有修改DataRow对象,在调用AcceptChanges方法时 ,DataRow对象 时DataRow将改为这个状态Modified--自上一次调用AcceptChanges方法后已经修改了DataRow对象Deleted-使用DataRow类的Delete方法删除了DataRow对象
---------DataRow生存其变化:测试数据
DataRow MyRow = myDataTable.NewRow();--->RowState=Detached, 创建还没有添加到DataTable中 myDataTable.Rows.Add(MyRow);--->RowState=Added, 创建并且添加到DataTable中MyRow["ddd"] = "aaa";--->RowState=Added, 创建并且添加到DataTable中myDataTable.RejectChanges();--->RowState=Detached, 回滚自该表家在以来到上次调用提交方法,之间的数据,所以该Row状态为-创建还没有添加到DataTable中myDataTable.Rows.Add(MyRow); myDataTable.AcceptChanges();--->RowState=Unchanged, MyRow["ddd"] = "aaa";--->RowState=Modified, 自上次调用.AcceptChanges();后修改了数据MyRow.Delete();--->RowState=Deleted, 使用DataRow删除DataRow对象 不清楚的兄弟姐妹用下面的代码测试下就知道了~~原创对了上面那个也是~~
~~哈哈听说DataRow-在运行时有多个版本~~不信么???Current--在数据发生变化后DataRow当前的数据--只有DataRowState的数值为Deleted否则该版本的数据都存在Default-如果DataRowState的值为Added或Modified,则默认版本是current.如果DataRowState的数值为Deleted,则抛出异常 ,如果执行了 BeginEdit方法,则为PropsedOriginal--其数值为原先DataRow中加载的数据,或者是上一次执行AcceptChanges方法的数值,注意只有在DataRowState的数值为Modified,Unchanged或 Deleted是该版本才会存在,如果DataRowState的数值为Deleted,则该信息可获取的,如果DataRowState为Added则抛出异常Proposed-在编辑DataRow对象的数值.如果DataRowState的数值为Deleted,则报告异常,如果还未显示的执行BeginEdit方法,或如果通过编辑一个独立的 DataRow对象一个还没有添加到DataTable中的对象中孤立DataRow对象,来隐式地执行BeginEdit方法则报错
DataRow-对象包含一个HasVersion-方法-可以查找DataRowVersion=的数值是否存在//--实在睁不开眼睛了~~最后的例子~~原创~~阿阿阿
posted on 2007-05-11 00:51 苹果王子 阅读(1555) 评论(4) 编辑 收藏 网摘 所属分类: C#
:) 回复 引用 查看
这些基础放首页???? 回复 引用
基础么,多谢指点,顺便广告下~~这是心得罢了 回复 引用 查看
dddd 回复 引用
昵称: [登录] [注册]
主页:
邮箱:(仅博主可见)
验证码: 看不清,换一个
评论内容:
登录 注册
[使用Ctrl+Enter键快速提交评论]
Powered by: 博客园 Copyright © 苹果王子