博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

2011年4月23日

摘要: 1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如:select id from t where num is null可以在num上设置默认值0,确保表中num列没有null值,然后这样查询:select id from t where num=03.应尽量避免在 where 子句中使用!=或<>操作符,否则将引擎放弃使用索引而进行全表扫描。4.应尽量避免在 where 子句中使用 or 来连接条件,否则将导致引擎 阅读全文

posted @ 2011-04-23 23:57 moss_tan_jun 阅读(496) 评论(0) 推荐(0) 编辑

摘要: 问题:假设环境如下: 表1: ID, NAME, QQ, PHONE,表中数据: 1 秦云 10102800 13500000 2 在路上 10378 13600000 3 LEO 10000 13900000 表2: ID, NAME, 上机时间,管理员,表中数据: 1 秦云 2004-1-1 李大伟 2 秦云 2005-1-1 马化腾 3 在路上 2005-1-1 马化腾 4 秦云 2005-1-1 李大伟 5 在路上 2005-1-1 李大伟实现目的:从表1中取所有人员列表,从表2中取上机次数和管理员. 上机人员名单 上机次数 管理员(上这几次机的每个管理员都列出来) 秦云 3 李大伟, 阅读全文

posted @ 2011-04-23 23:53 moss_tan_jun 阅读(1309) 评论(0) 推荐(0) 编辑

摘要: 这里提供两种方法:1,写成存储过程,建立作业定时备份--在sql中映射一下exec master..xp_cmdshell 'net use z: \\computer_name\D$ "密码" /user:computer_name\administrator'/*--说明:z:是映射网络路径对应本机的盘符,与下面的备份对应\\computer_name\D$是要映射的网络路径computer_name是远程的计算机名,administrator是登陆的用户名密码 指定的administrator用户的密码--*/--备份;with init覆盖  阅读全文

posted @ 2011-04-23 23:49 moss_tan_jun 阅读(319) 评论(0) 推荐(0) 编辑

摘要: 例子table1结构如下id intname varchar(50)declare @id intdeclare @name varchar(50)declare cursor1 cursor for --定义游标cursor1select * from table1 --使用游标的对象(跟据需要填入select文)open cursor1 --打开游标fetch next from cursor1 into @id,@name --将游标向下移1行,获取的数据放入之前定义的变量@id,@name中while @@fetch_status=0 --判断是否成功获取数据beginupdate t 阅读全文

posted @ 2011-04-23 23:48 moss_tan_jun 阅读(185) 评论(0) 推荐(0) 编辑

摘要: 你是不是也在苦苦寻求优化自己的SQL Server数据库的方法?如果你的数据库里有不少非常大的表格,分区功能能够帮到你很大的忙,因为它可以把这些大表格分割成独立文件组。这个技术可以让你把数据分布在不同的物理磁盘中,并通过调节它们的并行性能来最优化你的查询性能。 对SQL Server数据表进行分区的过程分为三个步骤: 1)建立分区函数 2)建立分区方案 3)对表格进行分区 分区函数定义how,即你想要SQL Server如何对数据进行分区。这里就不以某一个表格作为例子,而是总体概括分割数据的技术。 分区是通过指定每个分区的分割界线实现的。例如,假定我们有一个Customers表格,里面包含了企 阅读全文

posted @ 2011-04-23 23:45 moss_tan_jun 阅读(616) 评论(0) 推荐(0) 编辑

摘要: A. 重命名表 将表 oldTableName 重命名为 newTableName : EXEC sp_rename 'oldTableName', 'newTableName' B. 重命名列 将表 table1 中的列 oldName 重命名为 newName。 EXEC sp_rename 'table1.oldName', 'newName', 'COLUMN' 注意:newName前面不用加上table1 判断列和判断表select * from sysobjects where id = OBJECT_ 阅读全文

posted @ 2011-04-23 23:42 moss_tan_jun 阅读(2322) 评论(0) 推荐(0) 编辑

摘要: --office 2003--如果接受数据导入的表已经存在insert into DemoTable select * from OPENROWSET('MICROSOFT.JET.OLEDB.4.0','Excel 5.0;HDR=YES;DATABASE=d:\Demo.xls',sheet1$)--如果导入数据并生成表select * into DemoTable from OPENROWSET('MICROSOFT.JET.OLEDB.4.0','Excel 5.0;HDR=YES;DATABASE=d:\Demo.xls' 阅读全文

posted @ 2011-04-23 23:38 moss_tan_jun 阅读(424) 评论(0) 推荐(1) 编辑

摘要: 在数据库的查询过程中,可能经常要用到子查询的情况,用得较多的可能是嵌套子查询,最近查资料时发现还有另外一种方法,就是在from子句中使用子查询,也可以实现相同的效果,下面通过一个实例来讲讲这两种方法的使用。 问题:查询员工工资高于其所在部门平均工资的员工的信息1.使用嵌套子查询的方法。select * from Employee e1where e1.salary>(select AVG(salary) from Employee e2where e1.depId=e2.depIdgroup by e2.depId)2.在from子句中使用子查询。在from子句中使用子查询时,必须给子查 阅读全文

posted @ 2011-04-23 23:12 moss_tan_jun 阅读(410) 评论(0) 推荐(0) 编辑

摘要: 本文收集了目前最为常用的C#经典操作文件的方法,具体内容如下:C#追加、拷贝、删除、移动文件、创建目录、递归删除文件夹及文件、指定文件夹下 面的所有内容copy到目标文件夹下面、指定文件夹下面的所有内容Detele、读取文本文件、获取文件列表、读取日志文件、写入日志文件、创建HTML 文件、CreateDirectory方法的使用C#追加文件 StreamWriter sw = File.AppendText(Server.MapPath(".")+"\\myText.txt"); sw.WriteLine("追逐理想"); sw.W 阅读全文

posted @ 2011-04-23 23:06 moss_tan_jun 阅读(745) 评论(0) 推荐(1) 编辑

摘要: 方法一:1、在GridView中添加一个TemplateField字段,把他的ShowHeader改为False。(或在HTML代码中加上 【DataKeyNames="newsId"】这一句,其中【newsId】为GridView绑定的数据库的主码。)2、在GridView的编辑模板中添加一个LinkButton,修改CommandName=Edit,CausesValidation=False,Text="编辑"。3、在GridView的【RowEditing】事件中加上如下代码: Session["id"] = Convert. 阅读全文

posted @ 2011-04-23 23:03 moss_tan_jun 阅读(384) 评论(0) 推荐(0) 编辑

摘要: 在SQL Server数据库中批量导入数据的四种方法,在软件项目实施的时候,数据导入一直是项目人员比较头疼的问题。其实,在SQL Server中集成了很多成批导入数据的方法。有些项目实施顾问头疼的问题,在我们数据库管理员眼中,是小菜一碟。现在的重点就是,如何让用户了解这些方法,让数据导入变得轻松一些。第一:使用Select Into语句若企业数据库都采用的是SQL Server数据库的话,则可以利用Select Into语句来实现数据的导入。Select Into语句,他的作用就是把数据从另外一个数据库中查询出来,然后加入到某个用户指定的表中。在使用这条语句的时候,需要注意几个方面的内容。一是 阅读全文

posted @ 2011-04-23 09:28 moss_tan_jun 阅读(1084) 评论(0) 推荐(0) 编辑

摘要: public static class DBHelper { //数据库连接属性 private static SqlConnection connection; public static SqlConnection Connection { get { string connectionString = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString; if (connection == null) { connection = new SqlConnection(c 阅读全文

posted @ 2011-04-23 09:24 moss_tan_jun 阅读(733) 评论(1) 推荐(0) 编辑

摘要: 背景今天,在做一个指纹管理平台的界面上,遇到了一些问题,因为公司的基础库中没有针对Winform平台的操作,所以在一个部门选择的场景中,关于如何获取部门TreeView中被选中的项目被难住了。所幸还有一个神器叫做搜索引擎,故谷歌一番,发现Asp.net下的这个问题很好解决,但是关于Winform平台下的类似问题,如凤毛麟角啊!当然,今天我也是查了很久,终于发现了两篇不错的文章,帮助我解决了这个问题,不敢独享,结合自己对使用其方法的心得,特意记录下来,并通过一个小例子和大家一起分享。问题是这样的有一个部门列表,多级的(或者说无限极),我们在Winform端列出来(这个很简单)后,需要对其进行部. 阅读全文

posted @ 2011-04-23 09:21 moss_tan_jun 阅读(837) 评论(0) 推荐(0) 编辑

摘要: winfrom程序有3种关闭方式,其特点有所不同,今天区分下。假如默认建立了Form1,Form2,Form3.From1是初建立的窗体。在form1中,只要关闭窗体,即用this.close()就可以关闭程序。这里该方法会引发form1的formclosing事件和fromclosed事件。其他窗体的这2个事件不会引发,然后关闭程序。程序终止。如果在form1中使用application.exit()方法,此时from2,form3打开,则将以次引发form1的formclosing事件,form2的closing事件,from3的closing事件(form2与form3的先后是看打开的先 阅读全文

posted @ 2011-04-23 09:19 moss_tan_jun 阅读(265) 评论(0) 推荐(0) 编辑

摘要: 类与结构的实例比较 类与结构的差别 如何选择结构还是类 一.类与结构的示例比较: 结构示例: public struct Person { string Name; int height; int weight public bool overWeight() { //implement something } } 类示例: public class TestTime { int hours; int minutes; int seconds; public void passtime() { //implementation of behavior } } 调用过程: public clas 阅读全文

posted @ 2011-04-23 09:17 moss_tan_jun 阅读(231) 评论(0) 推荐(0) 编辑