少说话,多做事

导航

 

2014年3月16日

摘要: 可能看标题你还是不太懂我在讲什么,我们设定一个场景,假如一天老板叫你为他统计在06年圣诞节(2006-12-25) 至07年情人节(2007-02-14)这段时间创建的,处理了超过七天半(7.5个工作日)的客诉的数量,你如何操作呢? 首先我们说超过7.5个工作日,就是要减去周六和周日后的天数,再者,超过了7.5天,也就是说处理时间有可能是8.4,10.2,13.1等等,诸如此类了。 以下就是我的处理方法: 假设数据库里有记录客诉的创建时间(BeginDate)和结束时间(EndDate),我们在查询语句中就可以这样写: Sql = "SELECT ... FROM ... WHERE 阅读全文
posted @ 2014-03-16 23:21 少说话,多做事 阅读(7715) 评论(0) 推荐(0)
 
摘要: 在这一步中,需要指定游标的属性和根据要求产生的结果集。有两种方法可以指定一个游标。形式1(ANSI 92)DECLARE cursor_name [INSENSITIVE] [SCROLL] CURSORFOR select_statement[FOR {READ ONLY | UPDATE ][OF column_list]}]形式2DECLARE cursor_name CURSOR[LOCAL | GLOBAL][FORWARD_ONLY | SCROLL][STATIC | KEYSET | DYNAMIC][READ_ONLY | SCROLL_LOCKS | OPTIMISTIC] 阅读全文
posted @ 2014-03-16 23:20 少说话,多做事 阅读(239) 评论(0) 推荐(0)
 
摘要: 前言:权限往往是一个极其复杂的问题,但也可简单表述为这样的逻辑表达式:判断“Who对What(Which)进行How的操作”的逻辑表达式是否为真。针对不同的应用,需要根据项目的实际情况和具体架构,在维护性、灵活性、完整性等N多个方案之间比较权衡,选择符合的方案。目标:直观,因为系统最终会由最终用户来维护,权限分配的直观和容易理解,显得比较重要,系统不辞劳苦的实现了组的继承,除了功能的必须,更主要的就是因为它足够直观。简单,包括概念数量上的简单和意义上的简单还有功能上的简单。想用一个权限系统解决所有的权限问题是不现实的。设计中将常常变化的“定制”特点比较强的部分判断为业务逻辑,而将常常相同的“通 阅读全文
posted @ 2014-03-16 23:19 少说话,多做事 阅读(201) 评论(0) 推荐(0)
 
摘要: 动态sql的一些小技巧http://www.sommarskog.se/dynamic_sql.html 阅读全文
posted @ 2014-03-16 23:18 少说话,多做事 阅读(124) 评论(0) 推荐(0)
 
摘要: 很久以来,我们习惯了用这样的代码对数据库返回的数据进行逐行操作。在用客户端程序的代码打开数据集之前,我们把它当做是一个无序集合。不过,在需要时,我们在服务器端就可以直接以行操作形式处理数据集,这就是游标。游标的的使用方法类似前面的Delphi代码,通常有如下四步:一、声明游标:Declare Cursor,这一过程在前面的代码中没有体现出来。然而我们都知道,在使用一个数据集之前,我们总要定义它的种种属性,比如数据源、SQL语句、打开方式等等。在游标中,数据源一般是不用指定了(因为就在当前数据库中,MS SQL Server中也可以通过SQL语言来读取异构数据源)。不过我们要为它指定一个数据集, 阅读全文
posted @ 2014-03-16 23:17 少说话,多做事 阅读(338) 评论(0) 推荐(0)
 
摘要: 1、MS SQLSERVER SQL Server 支持临时表。临时表就是那些名称以井号 (#) 开头的表。如果当用户断开连接时没有除去临时表,SQL Server 将自动除去临时表。临时表不存储在当前数据库内,而是存储在系统数据库tempdb 内。 临时表有两种类型: 本地临时表:本地临时表的名称以单个数字符号 (#) 打头;它们仅对当前的用户连接是可见的;当用户从 Microsoft SQL Server 2000 实例断开连接时被删除。 全局临时表:全局临时表的名称以数学符号 (##) 打头,创建后对任何用户都是可见的。如果在创建全局临时表的连接断开前没有显式地除去这些表,那么只要所有其 阅读全文
posted @ 2014-03-16 23:16 少说话,多做事 阅读(8112) 评论(0) 推荐(0)
 
摘要: 1、在查询分析器中调试查询分析器中调试的步骤如下:SQL 2000查询分析器--左连的对象浏览器(没有的话按F8)--对象项中--右键调试的存储过程--调试--输入参数(必须输入所有的参数,包括默认值/输出参数--点击执行--出现一个浮动工具条--上面有单步执行,断点设置等按F11是单步执行.如果要运行到指定行,只需要将光标移动到指定的行,再按Ctrl+F102、通过输出存储过程或用户定义函数的处理结果进行调试如果没办法使用查询分析器调试存储过程,可以直接在存储过程中添加 PRINT 或者 SELECT 语句,输出存储过程各步骤的执行结果。对于用户定义函数,不能使用 PRINT 或者 SELE 阅读全文
posted @ 2014-03-16 23:15 少说话,多做事 阅读(416) 评论(0) 推荐(0)
 
摘要: 目录1.sql存储过程概述2.SQL存储过程创建3.sql存储过程及应用4.各种存储过程使用指南5.ASP中存储过程调用的两种方式及比较6.SQL存储过程在.NET数据库中的应用7.使用SQL存储过程要特别注意的问题1.sql存储过程概述在大型数据库系统中,存储过程和触发器具有很重要的作用。无论是存储过程还是触发器,都是SQL 语句和流程控制语句的集合。就本质而言,触发器也是一种存储过程。存储过程在运算时生成执行方式,所以,以后对其再运行时其执行速度很快。SQL Server 2000 不仅提供了用户自定义存储过程的功能,而且也提供了许多可作为工具使用的系统存储过程。存储过程的概念存储过程(S 阅读全文
posted @ 2014-03-16 23:14 少说话,多做事 阅读(324) 评论(0) 推荐(0)
 
摘要: 选择tools->export tables 是导出表结构还有数据tools->export user objects是导出表结构比较好用的是:可以用tools->export tables用中间的sql inserts页面,选中create tables选项,其他就不用选了;where clause 里写入 where rownum<1就能导出了。注意:这样导出的只是表结构;如果想把数据也导出来的话,如下操作:选中第一个 删除表(delete table)选项,其他的不要动,默认就行,where子句那什么也不用写;选择输出文件路径;然后点导出就导出的既有表结构,又有表 阅读全文
posted @ 2014-03-16 23:09 少说话,多做事 阅读(224) 评论(0) 推荐(0)