关于SQL语句的自动生成
在我们的日常编程中,数据库的程序基本上都要与SQL语句打交道,SQL语句的编写不可避免的成为一个头疼的工作。且因为SQL语句是STRING类型,因此在编译阶段查不出错,只有到运行时才能发现错误。
本文的解决方案,通过自动生成SQL语句,在一定程度上降低出错的概率,从而提高编程效率。 public interface IClause
{
void Add(string name, object val);
void AddWhere(string name, object val);
void Clear();
string TableName { set;}
} 首先抽象出生成器的标准接口,Add及Addwhere,分别用增加字段及WHERE条件的, 比如说,在Insert状态下,Add("name","gates")相当于字段name的值为gates 在select状态下,Add("name","gates")相当于字段name的别名为gates即select name as gates 在update状态下,Add("name","gates")相当于字段name的值为gates即update name = "gates" TableName属性即操作的表名 Clear()是为了一个实例多次应用,清空当前的字段及WHERE条件,表名的设置都通过TABLENAME属性设置 基类实现接口,通过基类的实现,从而有效的实现的代码屏蔽。 1 private abstract class BaseClause : IClause 2 ...{ 3 private string m_strTable = string.Empty; 4
相关文档:
Author : wufeng4552 Date : 2009-10-23
1、文件和文件组的含义与关系
每个数据库有一个主数据文件.和若干个从文 ......
from: http://www.javaeye.com/topic/498902?page=1
最近从朋友那看了一个某咨询公司给一家企业做的一个优化项目的总结报告书,其历时两个月,10万费用,4个人。
最终结果是性能和相应提升了30%,总共修改了3行代码和配置,共修改了3个单词,不到20个字母~~~~。
朋友总结了一句话,就是“代码质量越烂的项目 ......
其实在修改数据库名称之前,如果有用户连接到数据库的话会造成数据库重命名失败,可以先执行
select spid
from master.dbo.sysprocesses
where dbid=db_id('OldDbName')
结果集中显示的是当前连接到数据库OldDbName的连接
比如结果是
79
81
当然,实际值应该不是这两个
然后执行
kill 79
kill 81
关闭已建立 ......
因现在的工作需要,
我得从WinForm的平台,
转型到WebForm的页面。
有一年多没有接触SQL Server了,
虽然大学时有点基础,
但也忘记得差不多了。
因为Asp.net型的B/S网站和WinForm的还是有点不同,
现在工作起来不是那么得心应手。
温故而知新,
就把以前实习时做的的网站源代码拿出来看看。
因为要用到SQL 2005S ......