我们使用oracle的人都知道可以通过rownum伪列得到查询结果序列前面的指定的行,为了下面更好的进行说明问题,我们先来创建一个数据表table1:
create table table1
(AAA integer primary key,
BBB varchar(30));
然后在table1中插入9条数据:
insert into table1 values (8, 'good');
insert into table1 values (7, 'morning');
insert into table1 values (20, 'afternoon');
insert into table1 values (2, 'have');
insert into table1 values (19, 'boy');
insert into table1 values (30, 'girl');
insert into table1 values (15, 'left');
insert into table1 values (26, 'think');
insert into table1 values (98, 'beautiful');
commit;
现在使用:
Select * from table1 where rownum < 4;
来得到前三个行。
AAA BBB
8 good
7 morning
20 &nb ......
1. 说明:复制表(只复制结构,源表名:a,新表名:b)
SQL: select * into b from a where 1<>1;
2. 说明:拷贝表(拷贝数据,源表名:a,目标表名:b)
SQL: insert into b(a, b, c) select d, e, f from b;
3. 说明:显示文章、提交人和最后回复时间
SQL: select a.title, a.username, b.adddate
from table a,(
select max(adddate) adddate
from table where table.title=a.title) b
4. 说明:外连接查询(表名1:a,表名2:b)
SQL: select a.a, a.b, a.c, b.c, b.d, b.f
from a LEFT OUT JOIN b ON a.a = b.c;
5. 说明:日程安排提前五分钟提醒
SQL: select *
from 日程安排
&n ......
pl/sql 提供了强大而灵活的手段来捕捉和处理程序产生的异常,从而使 oracle 的用户远离一些令人烦恼的 bug 。
pl/sql 异常处理的概念和术语
在 oracle 中所有的错误都被认为是不应该发生的异常。一个异常可能是以下 3 种情况的一种:
u 由系统产生的错误(“ out of memory ”或“ duplicate value in index ”)
u 用户行为导致的错误
u 应用程序给用户的一个警告
pl/sql 用一种异常句柄的结构来捕捉和响应错误。正是有了异常句柄的存在,我们能很方便的分离异常处理代码与可执行代码。与线性的代码相比,为了处理异常,异常句柄提供了一种类似事件驱动的模式;换句话说,就是不管一种特定的错误在何时何地发生,它都将被同一个代码处理。
当一个错误出现后,无论它是系统还是程序产生的,都将导致一个异常。之后,可执行程序被中断,控制权转移给异常处理代码。处理完异常后,程序将不会回到先前被中断的位置,相反的,控制权被交给了当前程序的外围模块(可能是程序,也可能是系统)。
&nbs ......
pl/sql 提供了强大而灵活的手段来捕捉和处理程序产生的异常,从而使 oracle 的用户远离一些令人烦恼的 bug 。
pl/sql 异常处理的概念和术语
在 oracle 中所有的错误都被认为是不应该发生的异常。一个异常可能是以下 3 种情况的一种:
u 由系统产生的错误(“ out of memory ”或“ duplicate value in index ”)
u 用户行为导致的错误
u 应用程序给用户的一个警告
pl/sql 用一种异常句柄的结构来捕捉和响应错误。正是有了异常句柄的存在,我们能很方便的分离异常处理代码与可执行代码。与线性的代码相比,为了处理异常,异常句柄提供了一种类似事件驱动的模式;换句话说,就是不管一种特定的错误在何时何地发生,它都将被同一个代码处理。
当一个错误出现后,无论它是系统还是程序产生的,都将导致一个异常。之后,可执行程序被中断,控制权转移给异常处理代码。处理完异常后,程序将不会回到先前被中断的位置,相反的,控制权被交给了当前程序的外围模块(可能是程序,也可能是系统)。
&nbs ......
用ASP实现SQL SERVER数据库的远程更新
江苏省通州职业高级中学 刘计衡
微软的SQL Server 是一个大型的关系数据库系统,它为在复杂环境下有效地实现重要商业应用提供了一个强有力的客户/服务器平台。它结合Microsoft Windows NT操作系统的能力,提供了一个安全、可扩展、易管理、高端性能的客户/服务器数据库平台。正是由于SQL Server的强大功能,在基于B/S模式的网络程序中,也大量用作后台数据库。
在B/S模式下,用户经常通过客户端调用服务器上相关程序,通过对后台SQL 数据库访问,得到相关数据后,回传客户端,实现的方法通常是用ASP语言编写相关的服务器端程序,通过IIS将 ASP程序解析为HTML语言传给客户端,从而实现浏览器的无关性。但SQL SERVER本身并未提供一个远程更新数据库的功能,所以服务器数据库的更新通常是通过手工在服务器上直接更新,这样有时显得不方便,本文结合本人计算机应用(本科)自考毕业论文课题《具有网络查询功能的工资管理系统》,介绍SQL Server2000数据库的远程更新方法。
普通用户在进行工资查询时,使用服务器数据库“网络查询工资库”。该数据库共设了“网络用户登录表”、“员工信息”表、&ldqu ......
用ASP实现SQL SERVER数据库的远程更新
江苏省通州职业高级中学 刘计衡
微软的SQL Server 是一个大型的关系数据库系统,它为在复杂环境下有效地实现重要商业应用提供了一个强有力的客户/服务器平台。它结合Microsoft Windows NT操作系统的能力,提供了一个安全、可扩展、易管理、高端性能的客户/服务器数据库平台。正是由于SQL Server的强大功能,在基于B/S模式的网络程序中,也大量用作后台数据库。
在B/S模式下,用户经常通过客户端调用服务器上相关程序,通过对后台SQL 数据库访问,得到相关数据后,回传客户端,实现的方法通常是用ASP语言编写相关的服务器端程序,通过IIS将 ASP程序解析为HTML语言传给客户端,从而实现浏览器的无关性。但SQL SERVER本身并未提供一个远程更新数据库的功能,所以服务器数据库的更新通常是通过手工在服务器上直接更新,这样有时显得不方便,本文结合本人计算机应用(本科)自考毕业论文课题《具有网络查询功能的工资管理系统》,介绍SQL Server2000数据库的远程更新方法。
普通用户在进行工资查询时,使用服务器数据库“网络查询工资库”。该数据库共设了“网络用户登录表”、“员工信息”表、&ldqu ......
装了SQL2000后安装SQL2005,虽然使用别名加以区别了,但发现2005中没有可供访问的类似企业管理器,一时冲动,卸了2000,完整安装了2005,发现还是没有企业管理器,搜索过后才发现需要安装SQLServer2005_SSMSEE.msi(即SQLServerManagerStudioExpressEdition),它提供了类似企业管理器的图形化操作界面。
装好后,SQL2005运作正常,但是没了SQL2000,很多程序无法正常运行,在安装2000时,提示“sql2000服务器组件在此操作系统上不受支持”,而只能按照客户端组件。
经搜索发现可以直接通过安装”MSDE"目录中的SETUP.EXE强行安装服务器组件,只是没有服务管理器。
参考文献:
http://cutezjun.javaeye.com/blog/51861 ......
联接条件可在 from 或 WHERE 子句中指定,建议在 from 子句中指定联接条件。WHERE 和 HAVING 子句也可以包含搜索条件,以进一步筛选联接条件所选的行。
联接可分为以下几类:
内联接(典型的联接运算,使用像 = 或 <> 之类的比较运算符)。包括相等联接和自然联接。
内联接使用比较运算符根据每个表共有的列的值匹配两个表中的行。例如,检索 students 和 courses 表中学生标识号相同的所有行。
外联接。外联接可以是左向外联接、右向外联接或完整外部联接。
在 from 子句中指定外联接时,可以由下列几组关键字中的一组指定:
LEFT JOIN 或 LEFT OUTER JOIN。
左向外联接的结果集包括 LEFT OUTER &n ......