上一页 1 ··· 4 5 6 7 8 9 10 11 12 下一页
摘要: 创建聚簇索引:CREATE CLUSTERED INDEX [索引名] ON表名 (列名)。由聚簇索引的定义可以得知,其拷贝表是按照建立聚簇索引的字段来进行排序的,因此建立聚簇索引的最大好处是当我们经常用建立聚簇索引的字段来作为条件进行查询的时候可以很快查找出我们想要的记录避免全表扫描。默认情况下一个数据表的聚簇索引是其主键。下面的数据表经常指的是大数据表。 当我们经常使用主键Id作为查询条件的时候,我们可以不用更改其聚簇索引。而当我们的数据表经常被查询,但是查询条件不是主键Id的时候,我们就需要考虑另外创建聚簇索引或者建立非聚簇索引(何时选择哪个再做讨论)。 一些零碎的归纳: 测试数据库:. 阅读全文
posted @ 2011-02-25 09:14 雁北飞 阅读(7624) 评论(0) 推荐(1) 编辑
摘要: Every thread has an execution context data structure associated with it . The execution context includes things such as security settings (compressed stack, Thread’s Principal property, and Windows identity), host settings (see System.Threading.HostExecutionContextManager), and logical call context. 阅读全文
posted @ 2011-02-24 15:33 雁北飞 阅读(568) 评论(0) 推荐(0) 编辑
摘要: 在.NET下,当我们在定义某个集合类型时,要在这个集合类型上面实现foreach迭代,需要进行实现IEnumerable,再进一步实现IEnumerator接口。如MSDN上面的代码:View Code 1 using System; 2 using System.Collections; 3 4 public class Person 5 { 6 public Person(string fName, string lName) 7 { 8 this.firstName = fName; 9 this.lastName = lName;10 }11 12 public string fir. 阅读全文
posted @ 2011-02-24 09:59 雁北飞 阅读(414) 评论(0) 推荐(0) 编辑
摘要: SQL索引分为聚簇索引和非聚簇索引。 聚簇索引:在建立之后会对会对建立索引的键进行排序,接着建立一个二叉树索引列表。还会生成一个表的副本,将数据表的数据按照聚簇索引所使用的键进行排序。这就意味着使用聚簇索引将会在原表的基础上面增加120%左右的空间。其叶级页就是表记录(表副本的数据页),也就是其索引的逻辑记录和物理记录是相对应的。因此一个表中只能有一个聚簇索引。 非聚簇索引:对于非聚簇索引,在建立之后,会另外建立一个索引,也就是根据非聚簇索引的键值建立一颗二叉树。其叶子节点记录着rowid,ROWID 是每条记录在数据库中的唯一标识,通过 ROWID 可以直接定位记录到对应的文件号及数据块位. 阅读全文
posted @ 2011-02-23 15:36 雁北飞 阅读(257) 评论(0) 推荐(0) 编辑
摘要: 1 /// <summary> 2 /// 多线程计算大数组之和的类 3 /// </summary> 4 class CalculateBigArray 5 { 6 //比如数组有10000个元素,将这10000个分成100组,每组100个,各自对这一百个进行计算,左后在进行总和。 7 private int _size; 8 private int[] _bigArray; 9 private int[][] _breakArray;10 private long[] _sumArray;11 private AutoResetEvent[] _autoArray; 阅读全文
posted @ 2011-02-22 17:58 雁北飞 阅读(571) 评论(0) 推荐(0) 编辑
摘要: 早上在博客园看到一篇关于异步编程的文章,发现里面讲的BeginInvoke和EndInvoke是自己的知识盲点。马上去MSDN上面看了下,总结如下。对于某些耗时间的方法,我们需要进行异步调用,.NET FrameWork允许我们异步调用任何方法,前提是我们需要为进行异步调用的方法定义一个具有相同签名的委托(即返回值和参数是一致的)。公共语言运行时会自动使用适当的签名(参数)为该委托定义 BeginInvoke 和 EndInvoke 方法。 BeginInvoke 方法启动异步调用(注:这里的异步调用并没有启用新的线程,而是将IRP发送给设备,然后立即返回)。 该方法与您需要异步执行的方法具有 阅读全文
posted @ 2011-02-22 11:58 雁北飞 阅读(358) 评论(0) 推荐(0) 编辑
摘要: 原文链接:http://hi.baidu.com/im886/blog/item/49fc211296a74658f919b836.html 如果您的 Web 应用程序包括要在多个页之间共享的代码,您可以将代码保存在 Web 应用程序根目录下的两个特殊文件夹(Bin 文件夹和 App_Code 文件夹)中的某个文件夹中。 Bin 文件夹 可以在 Bin 文件夹中存储编译的程序集,并且 Web 应用程序任意处的其他代码(如页代码)会自动引用该文件夹。典型的示例是您为自定义类编译好的代码。您可以将编译后的程序集复制到 Web 应用程序的 Bin 文件夹中,这样所有页都可以使用这个类。 Bin 文 阅读全文
posted @ 2011-02-16 16:57 雁北飞 阅读(591) 评论(0) 推荐(0) 编辑
摘要: 在.NET下,当我们new一个对象,就开始了该对象的生命周期,当我们没有再使用它的时候。它会被GC回收,从而结束它的生命周期。在NHibernate下,对于需要被持久化的对象,其有三种状态。 临时状态:刚刚使用new关键字进行创建,并还没进行持久化。注意,这里的持久化并不是单独唯一指已经将数据插入到数据库中,而是指将数据放入Session中,或者放入数据库中,或者都存在这两者当中,因为有时数据放入session中并不是立即插入数据库。这一点再后面进行讨论。其具有以下特征: 1.不处于Session当中,没有和任何一个Session关联。2.在数据库中没有该对象对应的记录。 以下操作会使一个对象 阅读全文
posted @ 2011-02-15 15:45 雁北飞 阅读(280) 评论(0) 推荐(0) 编辑
摘要: NHibernate是一个框架,这个框架是主要实现的是ORM技术,就是实现:NET类到数据库表的映射(包括.NET 数据类型到SQL数据类型的映射),还提供数据查询和获取数据的方法,可以大幅度减少开发时人工使用SQL和ADO.NET处理数据的时间。 使用NHibernate实现.NET对象到关系型数据库的映射要经过以下配置: 1.首先在.NET环境下建立一个实体类,这个类必须是封闭的,而且其字段是virtual,否则会报错。原理过段时间再通过Reflector去探究。2.再建立完实体后,需要进行配置,在项目里面添加一个xml文件。文件的命名方式是:类名.hbm.xml 3.接下来对配置文件进行 阅读全文
posted @ 2011-01-31 09:13 雁北飞 阅读(139) 评论(0) 推荐(0) 编辑
摘要: 上次写过一篇文章《是什么阻碍了我对OO的运用!》,对自己在工作中没有运用oo去思考胡言乱语的几句。最近还是一直在困惑。昨天看了几篇博客才解除困惑。首先明白了软件架构中是分为几种类型的。而这几种类型的分类主要是针对业务逻辑层的设计方式不同而进行区分(暂不思考优缺点): 1.Transction Script:将业务理解成一个个过程,每个过程实现一个功能,具体到程序中就是一个业务过程对应着一个方法。可以看出这种是一个纯粹面向业务过程的设计方法。采用这种设计方法可以由数据访问层也可以没有数据访问层。有数据访问层的就是petshop的那种经典的三层加一个Model用于各层之间的数据传递。如果没有Dal 阅读全文
posted @ 2011-01-29 14:36 雁北飞 阅读(1137) 评论(0) 推荐(0) 编辑
上一页 1 ··· 4 5 6 7 8 9 10 11 12 下一页