摘要: 目前我对设计模式方面了解的不多,会的设计模式五根手指头就能数完。怎么写好设计模式让读者看懂真的要讲究一下技巧,不能单纯的贴代码并对代码作解释,我觉的《大话设计模式》就是一本讲设计模式很好的书,那本书通过故事的形式讲解让人联想思考下去。由于水平有限,所有这篇文章没什么讲解的,只是写一下自己使用抽象工厂实现多数据库切换的实现过程。例子的目的 有时候项目里使用的是ACCESS数据库,可是突然有一天想更改成MSSQLSERVER数据库,为了防止整站代码重写这种局面,可以使用抽象工厂+反射实现修改一下配置字符串就能实现ACCESS的MSSQLSERVER数据库的切换。实现过程1、数据库的建立为了例子的. 阅读全文
posted @ 2012-08-22 12:48 春天又来了 阅读(3400) 评论(12) 推荐(1) 编辑
摘要: 就在不久前,我在博客园看到一个名为英雄默问出处的博客。他里面有两篇是介绍用C#来操作事务的。用C#来操作事务和用SQL语句来操作事务原理是一模一样的。总结起来有三个步骤:1.开启事务 2.判断执行的SQL语句有没有出错,如果没有就将执行完SQL语句后提交事务3.如果有错,那么就回滚事务 在操作事务上还分为本地事务和分布式事务。我从网上百度下来他们的定义,如下: 本地事务:将多项任务绑定在一起,使其作为单个工作单元来执行。 分布式事务:分布式事务是指事务的参与者、支持事务的服务器、资源服务器以及事务管理器分别位于不同的分布式系统的不同节点之上。 上面的定义没看懂也没关系,其实我看这些定义... 阅读全文
posted @ 2012-08-19 11:07 春天又来了 阅读(2308) 评论(6) 推荐(2) 编辑
摘要: 我接触.NET编程已经有两年了,在这之前就会一点ASP和SQL语句。刚接触时在网上请教一个从事ASP.NET工作不久的网友,什么是事务? 当时他没答上。事实上我接触.NET这两年里,做一些小例子,也不用到事务。所以我对事务是什么?为什么要有事务?还是这几天才清楚。在理解什么是事务前,先来考虑这么一个问题。为什么要有事务? 假设我们在进行银行转帐的时候,至少会执行两条SQL语句,一条SQL语句是减少转帐人里帐户的钱,一条是增加收帐人里帐户钱。 例如有一个朋友要转帐1000元:1、那么转帐人的银行里的钱减少1000 2、那么收帐人的银行里的钱增加100... 阅读全文
posted @ 2012-08-17 09:40 春天又来了 阅读(2512) 评论(17) 推荐(3) 编辑
摘要: 写这篇存储过程的前参看了五六篇别人写的文章,看完后学到一些以前没有发现的东西,原来存储过程里有系统存储过程,原来存储过程还可以有返回值,我将把我从别人那里看到的,重新总结一下写出来。 什么是存储过程 如果你接触过其他的编程语言,那么就好理解了,存储过程就像是方法一样。竟然他是方法那么他就有类似的方法名,方法要传递的变量和返回结果,所以存储过程有存储过程名有存储过程参数也有返回值。存储过程的优点: 存储过程的能力大大增强了SQL语言的功能和灵活性。 可保证数据的安全性和完整性。 通过存储过程可以使没有权限的用户在控制之下间接地存取数据库,从而保证数据的安全。 通过存储过程可以使相关的动作在... 阅读全文
posted @ 2012-08-11 21:27 春天又来了 阅读(2309) 评论(2) 推荐(3) 编辑
摘要: 当作学习总结吧!以下的内容很早以前就有人写过。但我还是要再写一下,一是练一下自己写这方面文章的能力,二是对知识点的学习有一下重温和加深。SQL语言也跟其他编程语言一样,拥有变量、分支、循环等控制语句。之前我不清楚应该把这些归到哪个名词上,直到前晚我看到有篇文章是在讲SQL语句批处理,所有我就把SQL里的变量、分支、循环等控制语句归到批处理来。在SQL语言里面把变量分为局部变量和全局变量,全局变量又称系统变量。先来看一下局部变量: 局部变量使用declare关键字给变量声明,语法非常简单:declare @<变量名> <变量类型> [,@<变量名> <变 阅读全文
posted @ 2012-08-09 13:46 春天又来了 阅读(2239) 评论(14) 推荐(1) 编辑
摘要: “视图是由基于一个或多个表的一个查询所定义的虚拟表,它将查询的具体定义保存起来,视图不包含任何数据。” 前面这句是我在网上找的视图的定义,对于初接触MSSQLSERVER视图的人,一眼读过去,可能也不解其意,不过没有关系,大概记住就行了,在实际使用过后再来看这句,你就知道他在讲什么了。 视图在操作上和数据表没有什么区别,但两者的差异是在其本质上的。数据表是实际存储记录的地方,然而视图并不是保存任何记录,它存储的实际上是查询语句。相同的数据表,根据不同用户的不同需求,可以创建不同的视图。 视图的作用主要是用来查询,但也可以对视图进行增删改的操作,对视图的增删改操作实际是通过视图的变化引起基表数. 阅读全文
posted @ 2012-08-08 10:08 春天又来了 阅读(2069) 评论(3) 推荐(1) 编辑
摘要: SQL提供了很多内置的函数,通过这些函数能进行各种复杂的运算和操作。对数据的处理变得灵活。在学习的过程中没有必要记住那么多的数学函数,记住一些常用的就行,在实际的应用中需要到哪些再进行查找。SQL函数的分类可以分为:字符串函数聚合函数数学函数日期函数字符串函数其他函数字符串函数字符串长度:LENGTH字符串转换为小写:LOWER字符串转换为大写:UPPER截去字符串左侧空格:LTRIM截去字符串左侧空格:RTRIM截去字符串两侧空格:TRIM取子字符串:SUBSTRING从左侧取子字符串:LEFT从右侧取子字符串:RIGHT字符串的替换:REPLACE由字符得到ASCII码:ASCII由ASC 阅读全文
posted @ 2012-08-07 14:28 春天又来了 阅读(1013) 评论(0) 推荐(0) 编辑
摘要: 为了减少数据冗余和使数据库内容变的严谨,MSSQL数据库里引入了关系和约束。我们平时做一些小程序,需要使用到MSSQL数据库的时候大多没有严格去规划一下数据库的设计,但是真正开发的时候需要你严格的进行需求分析后再进行数据库设计,好的数据库设计对于维护和未来对程序的扩展有着非常大的好处。 所以我觉的学习一下约束和关系还是挺重的。我是现学现卖,将学习的过程记录一下:在学习之前先背几个单词,在需要在SQL语句写的时候用到:Alter:改变Primary:主要Constraint:约束Unique:唯一的、独特的Foreign::外国的,外交的Reference:参考,引用,提及Cascade:层叠. 阅读全文
posted @ 2012-08-04 17:26 春天又来了 阅读(1377) 评论(1) 推荐(0) 编辑
摘要: 最近做了几个小例子,要用到ASP.NET的一般处理程序(Handler)。遇到了一个小问题。 解决这个小问题非常简单,只是把函数里的局部变量变成全局变量就解决了,可是有时候人比较笨,比如像我就有点。。需要想一想。 说一下这个小问题。在一般处理程序里,想添加一个方法,输出一个话Hi Handler。可是发现在这个方法里没办法用context.Respose.Write这句。例如如下代码:namespace 图片处理{ public class HandlerTest : IHttpHandler { public void ProcessRequest(HttpCont... 阅读全文
posted @ 2012-07-22 11:31 春天又来了 阅读(5971) 评论(5) 推荐(3) 编辑
摘要: 好久都没有接触Jquery了。以前学过一段时间Jquery,这些天又温习了起来。Jquery的语句很美。用Js几行甚至要十几行才能做到,用Jquery一行到几行就可以做到了。虽然他牺牲了一点时间效率,但就对于简单的网页脚本处理或者简ajax处理,牺牲的这一丁点效率真是不足为挂。 但Jquery还是有一些问题得用Js来解决的。说说我这些天遇到的这个问题:在Jquery里append一个button按扭后,无法用Jquery对这个按扭进行监听。 下面是具体的代码,发现alert("test监听到木有");这句没有起到作用。<head> <script src= 阅读全文
posted @ 2012-07-18 10:13 春天又来了 阅读(1832) 评论(6) 推荐(0) 编辑