2013年10月10日

摘要: 装箱:将值类型转换为引用类型拆箱:将引用类型转换为值类型。----------------------------------例子:int val=10;object o=val;//装箱,这是一个装箱的过程,是将值类型转换为引用类型的过程int val1=(int)o;//拆箱,这是一个拆箱的过程,是将值类型转换为引用类型,再由引用类型转换为值类型的过程------------------------------------.NET中,数据类型划分为值类型和引用(不等同于C++的指针)类型,与此对应,内存分配被分成了两种方式,一为栈,二为堆,注意:是托管堆。值类型只会在栈中分配。引用类型分配 阅读全文
posted @ 2013-10-10 20:31 人生贵在坚持 阅读(225) 评论(0) 推荐(0)
 

2013年10月7日

摘要: 在SQLSERVER查询分析器中,当我们用Set Statistics on 语句来统计SQL语句或者存储过程I/O的时候,SQLSERVER会显示几个概念去词语:逻辑读取,物理读取,预读。如下:(1 行受影响)表 't2'。扫描计数 1,逻辑读取 3282 次,物理读取 44 次,预读 3282 次,lob 逻辑读取 0 次,lob 物理读取 0 次,lob 预读 0 次。那么,这几个词语代表什么意思呢?我们怎么根据这些来了解SQL语句或者存储过程的I/O过程呢?预读:用于估计信息,去硬盘读取数据到缓存。物理读:查询计划生成以后,如果发现缓存缺少所需要的数据,让缓存再次去读硬 阅读全文
posted @ 2013-10-07 15:32 人生贵在坚持 阅读(7631) 评论(0) 推荐(0)
 

2013年10月6日

摘要: 其实,作为C#程序员,我们看到这样的题目,也许没什么感觉,因为我们每天都在对C#对象实例化,但是,我们真的知道实例化的过程吗?也许,我们总是习惯于写这样的语句 A a=new A();,可是,我们真的知道这样一句话到底是怎么样执行的吗?我想,大多数程序员并不清楚。那么今天,我们通过一个例子来探究一下类的实例化过程。 public class ConsoleTest { public ConsoleTest(string content) { Console.WriteLine(content); } } publ... 阅读全文
posted @ 2013-10-06 17:18 人生贵在坚持 阅读(323) 评论(0) 推荐(0)
 

2013年9月25日

摘要: 程序员在初学阶段,往往会带着一个目的去编码,那就是实现最终效果或者功能。但是当我们写过大量代码之后,我们往往会发现自己写的程序有着下面这些缺点,这些缺点导致了我们的软件产生如下缺点:1:过于僵硬。(缺乏可扩展性,新功能不容易加入系统)2:过于脆弱。(缺乏灵活性,修改某一模块会波及其他模块)3:复用率低。(开发其他系统又要重头开始开发各个功能模块,这往往是由于我们没有把一些通用的功能模块摘取出来加以封装导致的。)还好,前人们给我们积累了丰富的设计经验。一:“开放-封闭原则(OCP)”Open-Close Principle原则讲的是:一个软件实体应当对扩展开放,对修改关闭。优点:通过扩展已有软件 阅读全文
posted @ 2013-09-25 22:24 人生贵在坚持 阅读(508) 评论(0) 推荐(0)
 

2013年9月23日

摘要: 第一:使用Select Into 语句 如果企业数据库都是采用SQL Server数据库的话,则可以利用select into语句实现数据的导入。 select into语句的作用是把数据从另外一个数据库中查询出来,然后插入到用户指定的某个表中。 注意:使用该语句需要注意四个前提1:需要在目的数据库中建立相关的表2:这种方法,只复制表中的数据,而不复制表中的索引。3:这条语句的使用具有局限性,要求源表与目的表所在的数据库都必须是SQL Server,可以允许版本不同。4:采用这条语句的时候,目的表中不能有数据。否则的话,目的表中的数据将会被清除,也就是说 ,这条语句不支持表与表数据的合并... 阅读全文
posted @ 2013-09-23 16:26 人生贵在坚持 阅读(12018) 评论(0) 推荐(1)
 
摘要: 一般用在trigger或匿名存储过程中使用.如declare a number;begina:=1;end; 阅读全文
posted @ 2013-09-23 13:05 人生贵在坚持 阅读(697) 评论(0) 推荐(1)
 
摘要: 执行如下批处理命令:declare maxrecords constant int := 100000; i int := 1;begin for i in 1 .. 20000 loop insert into test2 (id, name) values (i, to_char(9999 + i)); end loop; dbms_output.put_line(' 成功录入数据!'); commit;end; 阅读全文
posted @ 2013-09-23 13:04 人生贵在坚持 阅读(262) 评论(0) 推荐(1)
 
摘要: 索引是我们经常使用的一种数据库优化手段,适当的业务操作场景使用适当的索引方案,可以显著的提升系统整体查询性能,当然用户体验也随之提高。在Oracle中,唯一性索引(Unique Index)是我们经常使用到的一种。唯一性索引与普通所以最大的区别是在索引列上增加了一层唯一约束,添加到唯一性索引列的值可以为空,但是只要存在数据,那么其值就一定是唯一的。 阅读全文
posted @ 2013-09-23 09:46 人生贵在坚持 阅读(1371) 评论(0) 推荐(1)