当前位置:文档之家› Oracle数据库SQL基础2011

Oracle数据库SQL基础2011

Oracle数据库SQL基础2011
Oracle数据库SQL基础2011

Oracle数据库SQL基础

目录

基本语法 (6)

合法字符 (6)

变量命名规则 (6)

算数运算符 (6)

关系运算符 (6)

通配符 (7)

其他符号 (7)

基本SQL语句 (8)

SELECT (8)

UPDATE (11)

INSERT (11)

DELETE (12)

TRUNCATE (12)

ORDER BY(排序) (12)

GROUP BY(分组) (13)

程序块儿 (13)

存储过程 (14)

自定义函数 (14)

触发器 (15)

异常 (16)

游标 (16)

控制结构 (21)

IF (21)

CASE (21)

循环结构 (22)

LOOP (22)

WHILE (23)

FOR (24)

Oracle内置函数 (25)

字符函数 (25)

ASCII (取字符的ASCII值) (25)

CHR(取ASCII值代表的字符) (25)

CONCAT(合并字符串) (25)

INITCAP(首字母大写) (26)

LTRIM(左截取) (26)

RTRIM(右截取) (27)

TRIM(去除空格) (27)

LOWER(转为小写) (27)

UPPER (转为大写) (28)

REPLACE(替换) (28)

TRANSLATE(转换字符) (28)

LPAD(左填充) (29)

RPAD(右填充) (30)

SUBSTR(截取字符串) (30)

INSTR(查找字符串位置) (31)

LENGTH(取字符串的长度) (31)

数值函数 (32)

ABS(取绝对值) (32)

CEIL(取最小整数) (32)

MOD(取余数) (33)

ROUND(取四舍五入值) (33)

TRUNC(截取数字) (33)

SIGN(判断正负) (34)

FLOOR(取最大整数) (35)

POWER(幂运算) (35)

日期函数 (35)

ADD_MONTHS(取N个月后的日期) (35)

LAST_DAY(取月份的最后一天) (36)

MONTHS_BETWEEN(取两个日期间隔的月数) (37)

NEXT_DAY(取D下一个weekday的日期) (37)

SYSDATE(取系统日期) (38)

SYSTIMESTAM(取系统时间戳) (38)

ROUND(取日期的四舍五入值) (38)

TRUNC(截取日期) (39)

转换函数 (40)

TO_CHAR(numbers)(将数值型转换为字符型) (40)

TO_CHAR(dates)(将日期型转换为字符型) (40)

TO_DATE(将字符型转换为日期型) (40)

TO_NUMBER(将字符串转化为数字) (41)

分组函数 (41)

AVG(取平均值) (41)

COUNT(取记录数) (42)

MAX(取最大值) (42)

MIN(取最小值) (43)

SUM(求和) (43)

其他函数 (43)

DECODE (43)

NVL (44)

LEAST (44)

GREATEST (44)

支持正则表达式的函数 (45)

REGEXP_LIKE (45)

REGEXP_INSTR (45)

REGEXP_SUBSTR (46)

REGEXP_REPLACE (46)

分析函数 (46)

ROW_NUMBER() OVER() (47)

RANK() OVER() (48)

LAG() OVER() (49)

LEAD() OVER() (50)

FIRST_VALUE()/LAST_VALUE() OVER() (51)

分组函数 + OVER() (52)

数据集运算 (54)

UNION(合集) (54)

UNION ALL(合集) (54)

MINUS(差集) (54)

INTERSECT(交集) (55)

MERGE(合并) (55)

Oracle的伪列 (56)

序列的取值伪列CURRVAL/ NEXTVAL (56)

CURRVAL(当前值) (56)

NEXTVAL(取序列的下一个值) (57)

LEVEL(层次号) (57)

ROWID (57)

ROWNUM (57)

附录 (57)

数字格式说明 (57)

日期格式说明 (60)

正则表达式构成说明 (64)

基本语法合法字符

变量命名规则

算数运算符

关系运算符

通配符

在where子句中,通配符可与like条件一起运用。

其他符号

1、单引号('):在Oracle中,只能使用单引号将文本和字符和日期括起来。不

能运用引号(包括单双引号)将数字括起来。

2、双引号("):在Oracle中,单双引号意思不同。双引号被用来将包含特定字

符或者空格的列别名括起来。

3、撇号('):在Oracle中,由于撇号(’)是一个特殊的符号(单引号),表示

字符常量,如果字符串中包含撇号(’),就会返回错苏。所以要写成彼此相邻的两个单引号(’’)。

4、&符号: &符号常用来指出一个变量。

5、双竖线(||):表示字符串连接函数。

6、星号(*):select *意味着选择所有的列,count(*)意味着计算所有的行。

7、--双横线:用于单行注释。

8、/*…*/:用于多行注释。

基本SQL语句

SELECT

语法:

SELECT {*|col1[,col2,……]} FROM table1

[{INNER JOIN|LEFT JOIN|RIGHT JOIN} table2 ON join_expr]

[WHERE query_condition_expr];

1、单表查询:

例:

SELECT vpersoncode FROM person WHERE vdeptno = ‘123’;

SELECT vpersoncode FROM person WHERE to_char(dbirthday,’yyyy’) between ‘1970’ and ‘1979’;

SELECT studentno FROM scores WHERE score>=80;

2、多表关联:

Left join:左关联,以左边的表为基表,显示所有符合条件的记录,右边的表如果没有关联记录则显示空值。

Right join:右关联,以右边的表为基表,显示所有符合条件的记录,左边的表如果没有关联记录则显示空值。

Inner join:内关联,只显示符合关联条件的记录。

另外,多表关联也可以不用INNER/LEFT/RIGHT JOIN的写法,而是在from后列出多个要查询的表名,以逗号分开,然后将关联条件写在where子句中。用(+)体现左右关联的关系。如下例:表示a表left join b表

SELECT a.vpersoncode,a.vpersonname,a.vdeptno,b.vdeptname

FROM person a l,dept b

WHERE a.vdeptno = b.vdeptno(+);

例:

表person

VpersonCode VpersonName VdeptNo

1 张三 123

2 李四 456

3 王五 789

表dept

VdeptNo VdeptName

123 销售部

456 服务部

SELECT a.vpersoncode,a.vpersonname,a.vdeptno,b.vdeptname

FROM person a inner join dept b ON a.vdeptno = b.vdeptno;VPERSONCODE VPERSONNAME VDEPTNO VDEPTNAME

------------------------------------------------------------------

1 张三 123 销售部

2 李四 456 服务部

SELECT a.vpersoncode,a.vpersonname,a.vdeptno,b.vdeptname

FROM person a left join dept b ON a.vdeptno = b.vdeptno;VPERSONCODE VPERSONNAME VDEPTNO VDEPTNAME

------------------------------------------------------------------

1 张三 123 销售部

2 李四 456 服务部

3 王五 789

3、嵌套查询

例:同上两个表

SELECT a.vpersoncode,a.vpersonname,a.vdeptno,

(SELECT b.vdeptname FROM dept b WHERE b.vdeptno=a.vdeptno) vdeptname FROM person a;

注意:嵌套查询作为结果集的列时,查询结果必须只能返回一条。

4、EXISTS和IN

例:同上两个表

SELECT a.vpersoncode,a.vpersonname,a.vdeptno

FROM person a

WHERE a.vdeptno IN (SELECT b.vdeptno FROM dept b);

SELECT a.vpersoncode,a.vpersonname,a.vdeptno

FROM person a

WHERE EXISTS (SELECT b.vdeptno FROM dept b WHERE b.vdeptno = a.vdeptno);注意:这两个关键字都可以在前面加NOT表示非操作,NOT IN,NOT EXISTS

在使用非操作时NOT EXISTS的效率要比NOT IN高。

5、SELECT ……CONNECT BY的用法。

该查询方法用于查询有树形结构特点的表,形成一个树形结果集。

语法:

SELECT [LEVEL,]col1,col2…… FROM table1

[WHERE 条件]

CONNECT BY 父子关系条件

[START WITH 根节点条件] -- 确定树形结构的根节点

例:

SELECT LEVEL,a.id,a.nparent FROM crmc001c a

CONNECT BY PRIOR a.ID = a.nparent -- 上一层记录的ID值等于本条记录的NPARENT值

START WITH a.Id=33;

UPDATE

语法:

UPDATE tablename

SET col1={值|表达式|查询语句}[, col1={值|表达式|查询语句}] [WHERE 条件]

1、常量更新

例:

UPDATE person SET a.vdeptno = ‘123’ WHERE vpersoncode = ‘3’;

2、嵌套更新

例:

UPDATE person SET a.vdeptno = (SELECT b.vdeptno FROM dept b WHERE b.vdeptname=’销售部’)

WHERE vpersoncode = ‘3’;

INSERT

语法:

INSERT INTO tablename [(col1[,col2]……)]

{VALUES(val1[,val2]……) | 查询语句};

1、单行记录插入

例:

INSERT INTO person(vpersoncode,vpersonname,vdeptno)

VALUES(‘4’,’赵六’,’456’);

2、多行插入

INSERT INTO person(vpersoncode,vpersonname,vdeptno)

SELECT vpersoncode,vpersonname,vdeptno

FROM person1;

DELETE

语法:

DELETE FROM tablename [WHERE 条件];

例:

DELETE FROM person WHERE vpersoncode=’1’

注:以上UPDATE/INSERT/DELETE语句都是基于事务的,执行之后必须执行COMMIT提交才能完成操作。如果想放弃修改,则执行ROLLBACK。

TRUNCATE

语法:

TRUNCATE tablename;

该语句用于删除表中的全部记录,TRUNCATE语句会比DELETE语句效率高,并且删除的更干净

使用TRUNCATE语句一定要慎重,因为他是DDL语句,执行之后会自动提交事务,没有ROLLBACK的机会,所以一定要小心。

ORDER BY(排序)

语法:ORDER BY expr [{ASC|DESC}]

功能:用于对结果集按照expr进行排序,expr可以是一个或多个字段(逗号分

开,也可以是一个函数计算列。ASC表示按正序排列,DESC标识按倒序排列,如果不写明的话,默认为正序。ORDER BY排序时默认NULL值最大(ASC时排在最后,DESC时排在最前),所以排序列有NULL值时,应根据实际情况做特别处理。例:

SELECT col1,col2 FROM emp ORDER BY col1;

GROUP BY(分组)

语法:GROUP BY expr

功能:配合分组函数使用,将结果集按照expr的值进行分组进行相应处理。例:

SELECT vdeptno,count(*) FROM persons GROUP BY vdeptno;

GROUP BY 也常常配合HAVING使用,过滤所需要的值

比如:SELECT vdeptno,count(*) FROM persons

GROUP BY vdeptno HAVING count(*)>=3;-- 取部门人数大于3个的部门代码。程序块儿

对于一些需要通过多条SQL语句才能得到结果的复杂处理,可以通过把这些语句及处理放在一个程序块儿里一次执行的方式。

DECLARE

-- 声明自定义变量,如果没有,则可以省略;

BEGIN

-- 处理过程;

END;

这样的程序块儿,往往只能一次使用,下一次需要使用时要重新写,除非自己保留了脚本的文本。Oracle提供了四种类型的可存储的程序,包括存储过程、函数、包和触发器。这些可存储的程序作为一个数据对象存在于数据库中,数据库对象的命名长度不能超过30个字符。

存储过程

create or replace procedure prc_forexample (Name in type, -- in 表示入参,只读

Name out type, -- out 表示出参

...) is

--定义存储过程内部变量

begin

--init variable

--处理流程

--调用其它过程或函数

--prc_other(parm1,parm2);

[exception]

end prc_forexample;

自定义函数

create or replace function f_forexample (Name in type, -- in 表示入参,只读

Name out type, -- out 表示出参

...)

Return 数据类型 is

--定义函数内部变量;

begin

--init variable

--处理流程

--调用其它过程或函数

--prc_other(parm1,parm2);

Return value; -- 函数必须有返回值

[exception]

end f_forexample;

触发器

触发器是在指特定事件出现时,自动执行的代码块儿。类似于存储过程,但用户不能直接调用触发器。

create or replace trigger tr_forexample -- 触发器名称

after update or insert or delete on tablename

[FOR EACH ROW]

declare

-- 定义内部变量

begin

if updating then

end if

if deleting then

end if

if inserting then

end if

end tr_forexample;

注意:在触发器中不能使用COMMIT/ROLLBACK,及DDL语句。

异常

在程序块儿的处理中往往要通过异常判断来处理异常情况,下表为常用的异常代码。

游标

定义:把一组数据读到内存中,内存的地址叫做游标。

游标的声明:

CURSOR cur_name [(parm1 datatype1,parm2 datatype2……)]

IS select statement;

其中select statement:

SELECT … FROM … WHERE … [FOR UPDATE] [of column_reference] [nowait] 说明:

FOR UPDATE :需要使用游标做update或delete操作。当引用游标做update

操作时,使用WHERE CURRENT OF cur_name,指定当前游标记录。

of column_reference:更新的字段

nowait:更新操作时,如果记录正在被其他人修改,使用nowait则不进行资源等待,而是立刻返回一个资源忙的错误。

游标变量定义:

变量名游标名%ROWTYPE

打开游标:

OPEN cur_name[(pamr1,parm2)];

取得数据:

FETCH cur_name INTO 游标变量名;

关闭游标:

CLOSE cur_name;

游标属性:

sql%isopen:游标是否打开

sql%found:检索到数据

sql%notfound:没有检索到数据

sql%rowcount:检索到数据的行数

显示游标:需要显示声明的游标。按上面讲到的游标声明格式声明。

隐式游标:不需要显示声明的游标。

如:SELECT col1 INTO v_col1….

隐式游标一次只返回一行。

常见异常为:

NO_DATA_FOUND/TOO_MANY_ROWS

游标应用举例:

1、一般使用方法:

declare

cursor mycur is --声明游标

select * from a;

myrec a%rowtype; --声明与表字段相同的记录

begin

open mycur;--打开游标

fetch mycur into myrec;

while mycur%found loop

dbms_output.put_line(myrec.col1||':'||myrec.col2);

fetch mycur into myrec;

end loop;

close mycur;

end;

2、使用参数的游标

Declare

cursor mycur(id varchar) is

select col2 from a where col1=id;

myrec a.col2%type;

begin

open mycur('1');

loop

fetch mycur into myrec;

exit when mycur%notfound;

dbms_output.put_line(myrec);

end loop;

close mycur;

end;

3、使用游标for循环,在for循环中不用声明游标,也不用打开关闭Declare

cursor mycur(id varchar) is

select col2 from a where col1=id;

begin

for myrec in mycur('1') loop

dbms_output.put_line(myrec.col2);

end loop;

end;

4、判读游标是否打开,如果没有则打开。Declare

myrec a.col2%type;

cursor mycur(id varchar) is

select col2 from a where col1=id;

begin

if mycur%isopen then//判读打开

dbms_output.put_line('游标打开了'); else

open mycur('1');

end if;

fetch mycur into myrec;

close mycur;

dbms_output.put_line(myrec);

end;

5、利用游标获得数据行数

Declare

t_name varchar(10);

cursor mycur is select col2 from a;

begin

open mycur;

loop

fetch mycur into t_name;//数据填充到游标

exit when mycur%NOTFOUND or mycur%NOTFOUND IS NULL; END LOOP;

DBMS_OUTPUT.PUT_LINE(MYCUR%ROWCOUNT);

CLOSE MYCUR;

END;

6、利用游标update数据

Declare

cursor cur is

select col1 from a for UPDATE;//for update 是必须的temp varchar(10);

begin

open cur;

fetch cur into temp;

while cur%FOUND loop

update a set col1=col1||'_why' where current of cur;

//current of cur也是必须的

fetch cur into temp;

end loop;

close cur;

end;

7、隐式游标

Begin

for cur in(select * from a) loop

dbms_output.put_line(cur.col1||':'||cur.col2);

end loop;

end;

Oracle数据库基础

Oracle 数据库基础 数据库是我们安装完产品后建立的,可以在同一台主机上存在8i,9i,10g,11g等多个数据库产品,一套产品可以建立多个数据库,每个数据库是独立的。每个数据库都有自己的全套相关文件,有各自的控制文件、数据文件、重做日志文件、参数文件、归档文件、口令文件等等。 其中控制文件、数据文件、重做日志文件、跟踪文件及警告日志(trace files,alert files)属于数据库文件; 参数文件(parameter file)口令文件(password file)是非数据库文件 我们的表存储在数据库中 数据库不能直接读取 我们通过实例(instance)来访问数据库 数据库实例 实例由内存和后台进程组成 实例是访问数据库的方法 初始化参数控制实例的行为 一个实例只能连接一个数据库

启动实例不需要数据库 产品安装好 有初始化参数文件 就可以启动实例 与是否存在数据库无关 实例内存分为SGA 和PGA SGA:是用于存储数据库信息的内存区,该信息为数据库进程所共享。它包含Oracle 服务器的数据和控制信息,它是在Oracle 服务器所驻留的计算机的实际内存中得以分配,如果实际内存不够再往虚拟内存中写。 PGA:包含单个服务器进程或单个后台进程的数据和控制信息,与几个进程共享的SGA正相反,PGA 是只被一个进程使用的区域,PGA 在创建进程时分配,在终止进程时回收. 后台进程是实例和数据库的联系纽带 分为核心进程和非核心进程 当前后台进程的查看 SQL> select name,description from v$bgprocess where paddr<>'00'; NAME DESCRIPTION

SQL数据库基础知识集合

1、数据库简介: 数据库是专门开发数据管理的软件,或者说专门管理数据的软件就是数据库。 数据库存在的意义就是:减轻开发人员的负担。数据库是一个综合的软件,那么我们不需要队要进行2进制保存数据进行处理了,但是却是要与数据库产生交互,那么命令式SQL,有技巧的,数据库就是万物皆关系(面向对象,万物皆是对象)有所区别。 2、数据库的发展: 一开始的是层次化的数据与网状数据库,后来也发现使用确实很麻烦。 于是到了1970年EF.Cold博士(IBM公司的研究员)开创了关系性的数据库的先驱,发表了关系性数据库的论文,但是由于当时电脑硬件的局限性,大家觉得跑如此大的程序不值得。后来,Oracle(甲骨文)公司的创始人,拉里带领Oracle投入到关系型数据库的研发,并且得到了一个大客户—美国国防部。随即开始世界刮起了关系数据库的旋风,随后各个公司都纷纷推出自己的数据库系统。比如:IBM的DB2 ,还有风靡一时的DBS3。 但是随即出现不兼容的问题,由于最早的时候都没有进行没规范。所以到最后各个数据库巨头统一了操纵数据库的SQL(结构化Struct数据查询语言)变成了标准语言,而关系型数据库也俨然变成大家的宠儿,Oracle也从一个小公司,变成现在的数据库巨头,而我们的微软也推出了SQLServer。当然还有PHPer的最爱mySQL。但是mySQL被SUN,SUN 被Oracle收购,现在有免费版与收费专业版了。所以我们学习SQL语言的时候,先学共同点,再学特异性。各种数据库软件在使用上有一点区别。 3、数据库系统详解: 为适应数据处理的需要而发展起来的一种较为理想的数据处理的核心机构。计算机的高速处理能力和大容量存储器提供了实现数据管理自动化的条件。 数据库系统一般由4个部分组成: 数据库,即存储在磁带、磁盘、光盘或其他外存介质上、按一定结构组织在一起的相关数据的集合。(个体) 数据库管理系统(DBMS)。一组能完成描述、管理、维护子数据库的程序系统。它按照一种公用的和可控制的方法完成插入新数据、修改和检索原有数据的操作。 数据库管理员(DBA)。 用户和应用程序。(微软的称作SSMS) 4、数据库系统的基本要求是: 1、能够保证数据的独立性。数据和程序相互独立有利于加快软件开发速度,节省开发费用。 2、冗余数据少,数据共享程度高。 3、系统的用户接口简单,用户容易掌握,使用方便。 4、能够确保系统运行可靠,出现故障时能迅速排除,能够保护数据不受非受权者访问或破坏,能够防止错误数据的产生,一旦产生也能及时发现。 5、有重新组织数据的能力,能改变数据的存储结构或数据存储位置,以适应用户操作特性的变化,改善由于频繁插入、删除操作造成的数据组织零乱和时空性能变坏的状况。 6、具有可修改性和可扩充性、可维护性。 7、能够充分描述数据间的内在联系。 5、数据库(Database): 由众多的数据、数据表、约束、存储过程、函数、视图、索引构成的一个数据存储与交互单元,是按照数据结构来组织、存储和管理数据的仓库。 6、数据表(table): 数据表,实际上是一个二维表。一般是围绕一个事务、动作记录,或者是一个信息主题作为一个数据表。数据表由行与列构成。 7、列(column、field): 列,其实就是字段。也是决定了信息的基本单元。列,包含有数据类型的设定。 8、行(row、record): 行,实际上就是一条基本信息。一行包含了多列数据的存储的信息。所以一行也有一条记录之称。 9、行业(trade) 一个行业一种需求,没一个需求每一种数据库的设计模式与思想。每个行业的数据设计的重点都是不同的。侧重查询(要求低范式)还是操作(要求搞范式)就是自己选择的问题了。 10、索引(index) 索引是一个单独的、物理的数据库结构,它是某个表中一列或若干列值的集合和相应的指向表中物理标识这些值的数据页的逻辑指针清单。索引其实就是一个B+树,但是这个索引是N^n层数次方的。目的就是在数据库中划分出一定的区域优化查询。可以提升大量数据的查询速度。索引一般可以分为:基于字段优化查询速度的普通索引、唯一性索引、主键索引、全文索引、单列与多列索引。现在由于数据库系统的不断升级,我们只要设定索引就可以了,不需要特殊的维护。而且数据在查询的时候也会根据查询适当地选择是利用索引查询,还是仅仅是表查询。由于数据库系统的发展,系统内部已经自动帮我们完成对索引的维护。但是在设计的时候要考虑到索引的损耗问题。数据库DB就像是一个字典,索引就是根据指定字段制成的快速指向。由于只是指向数据对象标识,真正的数据是存储在DB中,所以查询速度极快。但是额外的内存与硬盘花销也是一个需要考虑的问题。比如:增加、删除、修改时数据库都要对索引进行维护,但是这样也是为了最后查询的效率的提升,特别适合W行级别的数据查询。而索引可以分为:隐式索引(针对单个字段)、唯一索引(唯一约束)、函数索引(函数(字段))、聚簇索引(主键)、组合索引(最多16个field)与全文索引(text)。一般索引会占用原数据库大小的20%。 11、视图(view) 固化的子查询,将一个子查询起了一个固化的名字,保存在数据库中,方便以后的使用。其实调用大量的Join来进行一个查询一般也是用视图。视图与索引都是为了优化查询的速度与语句。视图是优化语句,索引是优化单查速度。一般是DBA来设定数据库的视图,封装内部数据库的数据关系,范式修改数据容易了,视图让我们查询复杂关系的数据变得容易。 12、触发器(trigger) 触发器(trigger)是个特殊的存储过程,它的执行不是由程序调用,也不是手工启动,而是由个事件来触发,比如当对一个表进行操作(insert,delete,update)时就会激活它执行。触发器经常用于加强数据的完整性约束和业务规则等。触发器可以从DBA_TRIGGERS ,USER_TRIGGERS 数据字典中查到。 13、SQLServer数据类型详解

mysql数据库系统及应用综合练习附答案

《MySQL数据库系统及应用》综合练习__1附答案 一、单项选择题(只有一个正确答案) 【1】执行语句"SELECT '2008-01-20'+ INTERV AL 2 DAY; "结果为()。A: 2010-01-20 B: 2008-01-22 C: 2008-02-11 D: 2008-03-20 答案: B 【2】下列是不正确的MySQL的变量命名方式的是()。 A: @name! B: @name C: @_name D: @n$ame 答案: A 【3】字符串'hel'lo'输出结果为()。 A: hel\'lo B: 'hello' C: hel'lo D: 'hel lo' 答案: C 【4】关系数据库模型是以()方式组织数据结构。 A: 文本 B: 网状 C: 树状 D: 二维表 答案: D 【5】使用下列语句中的()可以删除表中所有数据,但保留表结构。A: rename table B: delete C: drop table D: turn cate table 答案: D 【6】E-R图设计属于()。 A: 需求分析设计 B: 物理结构设计

C: 逻辑结构设计 D: 概念结构设计 答案: D 【7】执行语句"GREATEST(10,9,128,1)"结果为()。 A: 128 B: 1 C: 10 D: 9 答案: A 【8】在一个关系中,若有这样一个属性存在,它的值能唯一地标识关系中的每一个元组,则称这个属性为()。 A: 候选码 B: 主键 C: 主键值 D: 数据项 答案: B 【9】数据库管理系统能实现对数据库中数据的查询、插入、修改和删除等操作。这种功能称为()。 A: 数据控制功能 B: 数据管理功能 C: 数据操纵功能 D: 数据定义功能 答案: C 【10】1999年10月1日在mysql中表示方法错误的是()。 A: "1999/10/01" B: "1999%10%01" C: "1999\10\01" D: "1999-10-01" 答案: A 【11】两个表中的行按照给定的条件进行拼接而形成新表的运算为()。 A: 连接 B: 集合 C: 选择 D: 投影 答案: A 【12】向表中插入一个新行的纪录的命令为()。 A: insert from B: insert into C: replace from D: replace into 答案: B 【13】\n在MySQL中表示()。 A: 退格符 B: 换行符

sql数据库基础面试题复习试题考试题_全

不定项选择题(针对以下题目,请选择最符合题目要求的答案,每道题有一项或二项正确答案。针对每一道题目,所有答案都选对,则该题得分,所选答案错误或不能选出所有答案,则该题不得分。题量为50道,每题2分,总分为100分。) 第一章 1、是SQLServer数据库的主数据文件的扩展名。(选择一项) A、.sql B、.mdb C、.ldf D、.mdf 2、在SQL Server 2005中,有系统数据库和用户数据库,下列不属于系统数据库的是()。 (选择一项) A、master B、pubs C、model D、msdb 3、当安装完SQL Server2005数据库时,系统默认当前的超级管理员是( ) (选择一项) A、sa B、master C、administrator D、super 4、在使用SQL Server2005数据库时,有时需要将本机的数据库移动到其他机器上,恢复成对应的数据库使用。移动数据库分两步进行,应包括()和附加数据库(选择一项)A、分离数据库 B、删除数据库 C、新建数据库 D、合并数据库 5、在SQL Server2005中,附加数据库操作是指()(选择一项) A、把SQL Server 数据库文件保存为其他数据文件 B、根据数据库物理文件中的信息,把数据库在SQL Server 2005中恢复 C、把所有该数据库表的数据清空 D、把数据库删除掉 6、某单位由不同的部门组成,不同的部门每天都会生产一些报告、报表等数据,以为都采用纸张的形式来进行数据的保存和分类,随着业务的发展,这些数据越来越多,管理这些报告越来越费力,此时应考虑()(选择一项) A、由多个人来完成这些工作 B、在不同的部门中,由专门的人员去管理这些数据 C、采用数据库系统来管理这些数据 D、把这些数据统一成一样的格式 7、在SQL Server 2005中,对于数据库的定义正确的是()(选择一项) A、数据库是用来描述事物的符号记录 B、数据库是位于用户与操作系统之间的一层数据管理软件

大工18春《SQL数据库系统及应用》在线作业2

------------------------------------------------------------------------------------------------------------------------------ (单选题) 1: 如果想查询订单表中订购金额大于等于800的所有信息,下面()语句能够完成此任务。 A: select * FROM 订单表 WHERE 订购金额<800 B: select * FROM 订单表 WHERE 订购金额>800 C: select * FROM 订单表 WHERE 订购金额<=800 D: select * FROM 订单表 WHERE 订购金额>=800 正确答案: (单选题) 2: 如果想查询订单表中前5条信息,下面()语句能够完成此任务。 A: select top 5 * FROM 订单表 B: select up 5 * FROM 订单表 C: select up_down 5 * FROM 订单表 D: select top_down 5 * FROM 订单表 正确答案: (单选题) 3: Select emp_id,emp_name,sex,title,wage from Yuangong order by emp_name 句子得到的结果集是按( )排序。 A: emp_id B: emp_name C: sex D: wage 正确答案: (单选题) 4: 如果要查询学校员工的平均收入,则使用以下()聚合函数。 A: sum() B: ABS() C: count() D: avg() 正确答案: (单选题) 5: 如果要查询学校员工的总收入,可以使用以下()聚合函数。 A: sum() B: ABS() C: count() D: MAX() 正确答案: (单选题) 6: Select count(*) from student 语句得到的结果是()。 A: 某个记录的详细信息 B: 全部记录的详细信息 C: 所有记录的条数 D: 得到16条记录 正确答案: (单选题) 7: SQL语句中,查询中分组的关键词是()。 A: ORDER BY B: LIKE C: CREATE D: GROUP BY

(整理)SQLServer数据库基本知识点.

SQL Server 数据库基本知识点一、数据类型

二、常用语句 (用到的数据库Northwind) 查询语句 简单的Transact-SQL查询只包括选择列表、FROM子句和WHERE子句。它们分别说明所查询列、查询的 表或视图、以及搜索条件等。例如,下面的语句查询Customers 表中公司名称为“Alfreds Futterkiste”的ContactName字段和Address字段。 SELECT ContactName, Address FROM Customers WHERE CompanyName='Alfreds Futterkiste' (一) 选择列表 选择列表(select_list)指出所查询列,它可以是一组列名列表、星号、表达式、变量(包括局部变量和全局变量)等构成。 1、选择所有列 例如,下面语句显示Customers表中所有列的数据: SELECT * FROM Customers 2、选择部分列并指定它们的显示次序查询结果集合中数据的排列顺序与选择列表中所指定的列名排列顺序相同。 例如: SELECT ContactName, Address FROM Customers 3、更改列标题 在选择列表中,可重新指定列标题。定义格式为: 列标题 as 列名 列名列标题如果指定的列标题不是标准的标识符格式时,应使用引号定界符,例如,下列语句使用汉字显示列标题: SELECT ContactName as 联系人名称, Address as地址 FROM Customers 4、删除重复行

SELECT语句中使用ALL或DISTINCT选项来显示表中符合条件的所有行或删除其中重复的数据行,默认 为ALL。使用DISTINCT选项时,对于所有重复的数据行在SELECT返回的结果集合中只保留一行。 SELECT DISTINCT(Country) FROM Customers 5、限制返回的行数 使用TOP n [PERCENT]选项限制返回的数据行数,TOP n说明返回n行,而TOP n PERCENT 时,说明n是 表示一百分数,指定返回的行数等于总行数的百分之几。 例如: SELECT TOP 2 * FROM Customers SELECT TOP 20 PERCENT * FROM Customers (二)FROM子句 FROM子句指定SELECT语句查询及与查询相关的表或视图。在FROM子句中最多可指定256个表或视图,它们之间用逗号分隔。在FROM子句同时指定多个表或视图时,如果选择列表中存在同名列,这时应使用对象名限定这些列 所属的表或视图。例如在Orders和Customers表中同时存在CustomerID列,在查询两个表中的CustomerID时应 使用下面语句格式加以限定: select * from Orders,Customers where Orders.CustomerID =Customers.CustomerID 在FROM子句中可用以下两种格式为表或视图指定别名: 表名 as 别名 表名别名 select * from Orders as a,Customers as b where a.CustomerID =b.CustomerID SELECT不仅能从表或视图中检索数据,它还能够从其它查询语句所返回的结果集合中查询数据。 例如: select * from Customers where CustomerID in (select CustomerID from Orders where EmployeeID=4) 此例中,将SELECT返回的结果集合给予一别名CustomerID,然后再从中检索数据。 (三) 使用WHERE子句设置查询条件 WHERE子句设置查询条件,过滤掉不需要的数据行。例如下面语句查询年龄大于20的数据:select CustomerID from Orders where EmployeeID=4

大工20秋《SQL数据库系统及应用》在线作业1

大工20秋《SQL数据库系统及应用》在线作业1 1:删除表sst的命令( )。 A、DROP_FOR sst B、DELETES TABLE sst C、DROP TABLE sst D、DELETES sst 答案:C 2:在SQL语句中,修改表结构的命令是( )。 A、MODIFY_FOR TABLE B、MODIFY_FOR STRUCTURE C、ALTER TABLE D、ALTER STRUCTURE 答案:C 3:SQL语句中建立表的命令是( )。 A、DROP SCHEMA B、CREATE TABLE C、CREATE VIEW D、DROP INDEX 答案:B 4:在select语句查询时,使用WHERE子句指出的是( )。 A、创建删除条件 B、排序结果

C、查询条件 D、查询视图 答案:C 5:若想查询出所有姓王的且民族为汉族的学生信息,则WHERE条件应为( )。 A、name like '王%'and Minzu='汉族' B、name like '王%'and Minzu!='汉族' C、name like '王%'and Minzu ISS '汉族' D、name like '王_'and Minzu IS '汉族' 答案:A 6:以下说法中正确的是( )。 A、student_3是不合法的变量名 B、SQL中用户变量也称为全局变量 C、a2是不合法的变量名 D、可以使用语句来为变量赋值 答案:D 7:下面聚合函数中正确的是( )。 A、SUM (*) B、COUNT (*) C、MAX (*) D、AVG (*) 答案:B 8:以下聚合函数中用于返回最大值的是( )。 A、VARP

Oracle数据库基本知识点

1、数据库基本语句 (1)表结构处理 创建一个表:cteate table 表名(列1 类型,列2 类型); 修改表的名字 alter table 旧表名 rename to 新表名 查看表结构 desc 表名(cmd) 添加一个字段 alter table 表名 add(列类型); 修改字段类型 alter table 表名 modify(列类型); 删除一个字段 alter table 表名 drop column列名; 删除表 drop table 表名 修改列名 alter table 表名 rename column 旧列名 to 新列名; (2)表数据处理 增加数据:insert into 表名 values(所有列的值); insert into 表名(列)values(对应的值); 更新语句:update 表 set 列=新的值,…[where 条件] 删除数据:delete from 表名 where 条件 删除所有数据,不会影响表结构,不会记录日志, 数据不能恢复--》删除很快: truncate table 表名 删除所有数据,包括表结构一并删除: drop table 表名 去除重复的显示:select distinct 列 from 表名 日期类型:to_date(字符串1,字符串2)字符串1是日期的字 符串,字符串2是格式 to_date('1990-1-1','yyyy-mm-dd')-->返回日期的 类型是1990-1-1 (3)查询语句 1)内连接 select a.*,b.* from a inner join b on a.id=b.parent_id

数据库系统及应用复习

ZH计0418班数据库系统及应用复习 一、填空题 1、SQL具有数据定义、查询、操纵和控制等四种主要功能。 2、一个关系模型由若干个关系模式所组成。 3、若实体A和B是1对多的联系,实体B和C是多对1的联系,则实体A和C是多对_多_联系。 4、按照两关系中对应属性值相等的条件所进行的联接称为等值联接。 5、关系规范化就是使一个关系模式描述一个实体,或实体间的一种联系。 6、假定一个E-R图包含有A实体和B实体,并且从A到B存在着1:n 的联系,则转换成关系模型后,包含有 2 个关系模式。 7、SQL语言集数据查询、数据操纵、数据定义和数据控制功能于一体,充分体现了关系数据语言的特点和优点。 8、一个关系就是一张二维表,每个关系有一个关系名,每个关系在计算机中作为一个文件存储起来。 9、人们已经提出了许多种类型的数据依赖,其中最重要的是函数依赖和多值依赖。 10、任一种数据模型都有_型__和_值区别;层次模型是一棵_树__结构,关系模型是一个__二维表格 _结构。 11、在对象数据模型中,每个对象不仅要包含描述实体的__状态 ___特征,而且要包含描述实体的__行为_ _特征。 12、设一个关系为R(A,B,C,D,E),它的最小函数依赖集为FD={A→B,A→C,(C,D)→E},该关系只满足第一范式,若要规范化为第三范式,则将得到 3 个关系。 13、数据库管理系统提供了数据库的定义、操纵、查寻、控制和通信功能。 14、E-R模型是描述概念世界、建立概念模型的实用工具。 15、数据库系统的主要特点是实现数据共享、减少数据冗余、采用特定的数据模型、具有较高的数据独立性、具有统一的数据控制功能。 16、选择运算的结果关系同原关系具有相同的结构框架,投影运算的结果关系同原关系通常具有不同的结构框架。 17、在SQL所支持的数据库系统的三级模式结构中,视图属于外模式,基本表属于全局概念模式。 18、设X—Y是关系模式R的一个函数依赖,并且Y是X的子集,则称X→Y是平凡函数依赖。 19、数据库系统的核心是数据库管理系统或DBMS。 20、实体之间的联系按照联系方式的不同可分为1∶1、1∶n和m∶n。 21、假定利用CREATE TABLE命令建立如下一个基本表:BOOK(总编号C(6),分类号C(8),书名C(16),单价N(10,2)),则单价字段的类型为数值型,字段宽度为 10 ,其中包含有 2 位小数。 22、在关系模型中,实体以及实体间的联系都是用关系来表示的。 23、关系模式由3NF转化为BCNF是消除了主属性对码的部分函数依赖和传递函数依赖。 24、专门的关系运算包括选择、投影、连接和除四种。 25、在数据库系统中,DBMS是指数据库管理系统。 26、传统的三大数据模型分别是层次模型、网状模型和关系模型。 27、在关系运算的四种专门关系运算符中,它们分别是选择、摄影、连接和除运算。 28、SQL的含义是结构化查询语句。29、SQL的四大功能分别是查询、定义、操纵和控制。 30、在SQL的修改表结构命令中增加字段的关键字是ADD。 修改字段的属性的关键字是ALTER COLUMN。 31、在SQL常用的运算符号中,OR表示或,NOT表示否定,LIKE表示字符匹配。 32、在SQL的SELECT的格式中用于表示条件的关键字是WHERE。 如:SELECT*FROM A WHERE年龄>20的含义是:从A表中查询出所有年龄大于20的记录。 33、在SQL中创建视图的基本命令是:CREATE VIEW〈试图名〉AS〈SELECT查询语句〉。 34、在操作的表中,可以定义的触发器大概有三类:它们分别是更新触发器、插入触发器和删除触发器 二、选择题 1、关系演算的基础是( C )。 A、形式逻辑中的逻辑演算 B、形式逻辑中的关系演算 C、数理逻辑中的谓词演算 D、数理逻辑中的形式演算 2、若要求分解保持函数依赖,那么模式分解一定能够达到( B )。 A、2NF B、 3NF C、 BCNF D、 1NF 3、用于配置客户端网络连接的工具是(B )。 A、企业管理器 B、客户端网络实用工具 C、查询分析器 D、联机帮助文档 4、1级封锁协议加上T要读取的数据R加S锁,这是( C )。 A、3级封锁协议 B、4级封锁协议 C、2级封锁协议 D、1级封锁协议 5、在表设计视图中,如果要限定数据的输入格式,应修改字段的( D )属性。 A、字段大小 B、有效性规则 C、输入格式 D、格式 6、下列( D )是主键的标志。 A、 B、 C、 D、 7、数据库类型是按照( B )来划分的。 A、文件形式 B、数据模型 C、记录形式 D、数据存取方法 8、哪种情况应尽量创建索引(A )。 A、在Where子句中出现频率较高的列 B、具有很多NULL值的列 C、记录较少的基本表 D、需要更新频繁的基本表 9、建立数据字典的时机是( A )。 A、需求分析阶段 B、数据库物理设计阶段 C、数据库实施 D、概念结构设计阶段 10、如果要在SQL Server中存储图形图像、Word文档文件,不可采用的数据类型是( C )。 A、binary B、varbinary C、text D、image 11.数据库系统的核心是(C) A数据库B数据库系统C数据库管理系统D数据 12.实体之间的联系的基本类型有(D) A一对一B一对多C多对多D上述三种都是

MySQL数据库系统及应用综合练习

一、单项选择题(只有一个正确答案) 【1】执行语句“ SELECT '2008-01-20'+ INTERVAL 2 DAY; ”结果为 A: 2008-01-22 B: 2010-01-20 C: 2008-02-11 D: 2008-03-20 答案: A 【2】下列哪个是不正确的MySQL的变量命名方式 A: @_name B: @n$ame C: @name D: @name! 答案: D 【3】字符串‘ hel ' lo '输出结果为 A: hel'lo B: 'hello' C: hel\'lo D: 'hel lo' 答案: A 【4】关系数据库模型是以下哪种方式组织数据结构 A: 树状 B: 文本 C: 二维表 D: 网状 答案: C 【5】使用下列哪个语句可以删除表中所有数据, 但保留表结构 A: truncate table B: rename table C: delete D: drop talbe 答案: A 【6 】E-R 图设计属于()。 A: 概念结构设计 B: 物理结构设计 C: 逻辑结构设计 D: 需求分析设计答案: B 【7】执行语句“ GREATEST(10,9,128,1)”结果为()。 A: 9

B: 10 C: 128 D: 1 答案: C 【8】在一个关系中,若有这样一个属性存在,它的值能唯一地标识关系中的每一个元组,则称这个 属性为 A: 数据项 B: 候选码 C: 主键 D: 主键值 答案: C 【9】数据库管理系统能实现对数据库中数据的查询、插入、修改和删除等操作。 这种功能称为()。 A: 数据控制功能 B: 数据操纵功能 C: 数据管理功能 D: 数据定义功能 答案: B 【10 】1999 年10 月1 日在mysql 中表示方法错误的是: A: "1999-10-01" B: "1999%10%01" C: "1999\10\01" D: "1999/10/01" 答案: D 【11 】两个表中的行按照给定的条件进行拼接而形成新表的运算为 A: 连接 B: 投影 C: 集合 D: 选择 答案: A 【12 】向表中插入一个行新的纪录的命令为 A: replace into B: insert into C: replace from D: insert from 答案: B 【13】\n在MySQL中表示 A: " B: 退格符 C: 回车符

数据库基础知识和sql语句

第一章数据库基础知识 本章以概念为主,主要是了解数据库的基本概念,数据库技术的发展,数据模型,重点是关系型数据。 第一节:信息,数据与数据处理 一、信息与数据: 1、信息:是现实世界事物的存在方式或运动状态的反映。或认为,信息是一种已经被加工为特定形式的数据。 信息的主要特征是:信息的传递需要物质载体,信息的获取和传递要消费能量;信息可以感知;信息可以存储、压缩、加工、传递、共享、扩散、再生和增值 2、数据:数据是信息的载体和具体表现形式,信息不随着数据形式的变化而变化。数据有文字、数字、图形、声音等表现形式。 3、数据与信息的关系:一般情况下将数据与信息作为一个概念而不加区分。 二、数据处理与数据管理技术: 1、数据处理:数据处理是对各种形式的数据进行收集、存储、加工和传输等活动的总称。 2、数据管理:数据收集、分类、组织、编码、存储、检索、传输和维护等环节是数据处理的基本操作,称为数据管理。数据管理是数据处理的核心问题。 3、数据库技术所研究的问题不是如何科学的进行数据管理。 4、数据管理技术的三个阶段:人工管理,文件管理和数据库系统。 第二节:数据库技术的发展 一、数据库的发展:数据库的发展经历了三个阶段: 1、层次型和网状型: 代表产品是1969年IBM公司研制的层次模型数据库管理系统IMS。 2、关系型数据型库: 目前大部分数据库采用的是关系型数据库。1970年IBM公司的研究员E.F.Codd提出了关系模型。其代表产品为sysem R和Inges。 3、第三代数据库将为更加丰富的数据模型和更强大的数据管理功能为特征,以提供传统数据库系统难以支持的新应用。它必须支持面向对象,具有开放性,能够在多个平台上使用。 二、数据库技术的发展趋势: 1、面向对象的方法和技术对数据库发展的影响: 数据库研究人员借鉴和吸收了面向对旬的方法和技术,提出了面向对象数据模型。 2、数据库技术与多学科技术的有机组合: 3、面向专门应用领域的数据库技术 三、数据库系统的组成:

《MySQL数据库系统及应用》综合练习

一、单项选择题(只有一个正确答案) 【1】执行语句“SELECT '2008-01-20'+ INTERVAL 2 DAY; ”结果为 A: 2008-01-22 B: 2010-01-20 C: 2008-02-11 D: 2008-03-20 答案: A 【2】下列哪个是不正确的MySQL的变量命名方式 A: @_name B: @n$ame C: @name D: @name! 答案: D 【3】字符串‘hel’lo’输出结果为 A: hel'lo B: 'hello' C: hel\'lo D: 'hel lo' 答案: A 【4】关系数据库模型是以下哪种方式组织数据结构 A: 树状 B: 文本 C: 二维表 D: 网状 答案: C 【5】使用下列哪个语句可以删除表中所有数据,但保留表结构 A: truncate table B: rename table C: delete D: drop talbe 答案: A 【6】E-R图设计属于()。 A: 概念结构设计 B: 物理结构设计 C: 逻辑结构设计 D: 需求分析设计 答案: B 【7】执行语句“GREATEST(10,9,128,1)”结果为()。 A: 9

B: 10 C: 128 D: 1 答案: C 【8】在一个关系中,若有这样一个属性存在,它的值能唯一地标识关系中的每一个元组,则称这个属性为 A: 数据项 B: 候选码 C: 主键 D: 主键值 答案: C 【9】数据库管理系统能实现对数据库中数据的查询、插入、修改和删除等操作。这种功能称为()。 A: 数据控制功能 B: 数据操纵功能 C: 数据管理功能 D: 数据定义功能 答案: B 【10】1999年10月1日在mysql中表示方法错误的是: A: "1999-10-01" B: "1999%10%01" C: "1999\10\01" D: "1999/10/01" 答案: D 【11】两个表中的行按照给定的条件进行拼接而形成新表的运算为 A: 连接 B: 投影 C: 集合 D: 选择 答案: A 【12】向表中插入一个行新的纪录的命令为 A: replace into B: insert into C: replace from D: insert from 答案: B 【13】\n在MySQL中表示 A: " B: 退格符 C: 回车符

Oracle数据库基础题库【含答案】

1、判断题,正确请写写"T",错误请写写"F", 1、oracle数据库系统中,启动数据库的第一步是启动一个数据库实例。( T ) 2、Oracle服务器端的监听程序是驻留在服务器上的单独进程,专门负责响应客户机的连接请求。( F) 3、oracle数据库中实例和数据库是一一对应的(非ORACLE并行服务,非集群)。( T) 4、系统全局区SGA 是针对某一服务器进程而保留的内存区域,它是不可以共享的。( F ) 5、数据库字典视图ALL_***视图只包含当前用户拥有的数据库对象信息。( F ) 8、数据字典中的内容都被保存在SYSTEM表空间中。( T ) 9、HAVING后面的条件中可以有聚集函数,比如SUM(),AVG()等, WHERE 后面的条件中也可以有聚集函数。( F ) 10、"上海西北京" 可以通过like ‘%上海_’查出来。( F ) 11、表空间是oracle 最大的逻辑组成部分。Oracle数据库由一个或多个表空间组成。一个表空间由一个或多个数据文件组成,但一个数据文件只能属于一个表空间。( T ) 12、表空间分为永久表空间和临时表空间两种类型。( T ) 13、truncate是DDL操作,不能 rollback。( T ) 14、如果需要向表中插入一批已经存在的数据,可以在INSERT语句中使用WHERE语句。( F ) 15、Oracle数据库中字符串和日期必须使用双引号标识。( F ) 16、Oracle数据库中字符串数据是区分大小写的。( T ) 17、Oracle数据库中可以对约束进行禁用,禁用约束可以在执行一些特殊操作时候保证操作能正常进行。( F ) 18、为了节省存储空间,定义表时应该将可能包含NULL值的字段放在字段列表的末尾。( T ) 20、在连接操作中,如果左表和右表中不满足连接条件的数据都出现在结果中,那么这种连接是全外连接。( T ) 21、自然连接是根据两个表中同名的列而进行连接的,当列不同名时,自然连接将失去意义。( T ) 23、PL/SQL代码块声明区可有可无。( T ) 24、隐式游标与显式游标的不同在于显式游标仅仅访问一行,隐式的可以访问多行。( F )

数据库基本SQL语句大全

数据库基本SQL语句大全 数据库基本----SQL语句大全 一、基础 1、说明:创建数据库 Create DATABASE database-name 2、说明:删除数据库 drop database dbname 3、说明:备份sql server --- 创建备份数据的device USE master EXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwind_1、d at' --- 开始备份 BACKUP DATABASE pubs TO testBack 4、说明:创建新表 create table tabname(col1 type1 [not null] [primary key],col2 typ e2 [not null],、、) 根据已有的表创建新表: A:create table tab_new like tab_old (使用旧表创建新表) B:create table tab_new as select col1,col2…from tab_old definit ion only 5、说明:删除新表 drop table tabname 6、说明:增加一个列 Alter table tabname add column col type 注:列增加后将不能删除。DB2中列加上后数据类型也不能改变,唯一能改变的就是增加varchar类型的长度。 7、说明:添加主键: Alter table tabname add primary key(col) 说明:删除主键: Alter table tabname drop primary key(col) 8、说明:创建索引:create [unique] index idxname on tabname(col…、) 删除索引:drop index idxname 注:索引就是不可更改的,想更改必须删除重新建。 9、说明:创建视图:create view viewname as select statement

SQL数据库系统及应用

机密★启用前 大连理工大学网络教育学院 2017年秋《SQL数据库系统及应用》 期末考试复习题 ☆注意事项:本复习题满分共:400分。 一、填空题 1.在关系数据库的规范中,在一个关系中,消除重复字段,且各字段都是最小的逻辑存储单元代表第______________范式。 答案:一 2.在索引命令中使用关键字CLUSTERED和NONCLUSTERED分别表示将建立的是______________和______________。 答案:聚集索引、非聚集索引 3.常见的关系数据库有ACCESS、______________和______________。 答案:SQL Server、Oracle 4.从表中删除数据的命令是______________from______________where……。 答案:Delete、表名 5.向表中______________数据的命令是insert into表名______________(constant1,constant2,……)。答案:插入、values 6.在一个表上,最多可以定义______________个聚集索引,最多可以有______________个非聚集索引。 答案:1、多 7.ABS函数的功能是返回数值表达式的______________。 答案:绝对值 8.LIKE查询中______________符号代表由零个或更多字符组成的任意字符串,下划线“_”符号代表______________字符。 答案:%、任意单个 9.创建表的语句是:______________。

答案:CREATE TABLE 表名 10.在Microsoft SQL Server 2008中,主数据文件的后缀是______________。 答案:.mdf 11.在Microsoft SQL Server 2008中,日志文件的后缀是______________。 答案:.ldf 12.创建索引的语句是:______________ INDEX……。 答案:CREATE 13.语句 select round(12.3421,2),round(23.4567,3)的执行结果是:______________和______________。答案:12.34,23.457 14.关系是笛卡尔积的有限子集,所以是一个______________维表,表的每行对应一个______________,每列对应一个______________。 答案:二、元组、域 二、问答题 1.对SQL Server实例访问,SQL Server 2008支持哪几种身份验证模式? 答案:SQL Server 2008支持两种身份验证模式:Windows身份验证模式(2分)和混合身份验证模式(2分)。Windows身份验证模式使用Windows操作系统中的信息验证账户名和密码,默认的身份验证模式。(3分)混合身份验证模式允许用户使用Windows身份验证或SQL Server身份验证进行连接(3分)。 2.简述SELECT语句中的FROM、WHERE以及ORDER BY子句的作用。SQL Server 2008系统中主要数据库对象都有哪些? 答案:在SELECT语句中: FROM子句:用来指定数据来源的表;(2分) WHERE子句:用来限定返回行的搜索条件;(2分) ORDER BY子句:用来指定结果的排序方式。(2分) 主要的数据库对象包括数据库关系图、表、视图、同义词、存储过程、函数、触发器、程序集、类型、规则和默认值等。(酌情给分,共4分) 3.如何使用IF…ELSE流程控制语句? 答案:一个逻辑表达式的结果要么为真,要么为假。根据不同的结果,对应于不同的操作。这时就需要使用IF…ELSE语句在程序中对于给定条件进行判断。

Oracle数据库技术课程学习大纲详细

《现代数据库技术》教学大纲 课程名称:《现代数据库技术》 课程编号:学时数:56 学分数:3.5 适应专业:计算机与信息学院所有专业 一、本课程的地位、任务和作用 现代数据库技术是计算机在数据处理应用领域中的主要内容和坚实基础;也是今后若干年内研究和应用的最活跃的分支之一。因此,信息管理、软件开发、计算机等专业的学生,特别是以应用为目标的学生都必须学习和具备数据库原理与应用的知识。本课程通过介绍Oracle数据库基本操作、体系结构与数据库基本管理使学生初步掌握大型数据库的基本原理,了解大型数据库的管理方法。了解大型数据库的管理方法,使学生熟练掌握Oracle数据库系统下的SQL语言运用及PL/SQL程序设计。 本课程是一门理论和实践相结合的课程,要求学生在完成本课程的学习以后,能够结合自己所熟悉的某一门高级语言和Oracle,开发出一个小型的数据库应用系统。 二、本课程的相关课程 本课程的先修课程为《计算机组成原理》,《离散数学》,《数据结构》,《计算机网络》及《数据库原理》等课程。 三、本课程的基本内容及要求 教学内容: 第一章数据库概述(2学时) 1、教学内容: 1.1数据库基础知识 1.2关系数据库系统 1.3 Oracle基础知识 (1)Oracle的发展历史 (2)Oracle的特点 第二章O racle体系结构(6学时) 1、教学内容: 2.1 Oracle 体系结构概述 2.2Oracle的存储结构 (1)物理存储结构 (2)逻辑存储结构 2.3Oracle的实例 (1)Oracle内存结构

(2)Oracle进程 2.4数据字典 2、教学重点:Oracle的物理结构、oracle实例、Oracle的逻辑结构 3、教学难点:数据库实例与进程 第三章O racle11g的安装(2学时) 1、教学内容: 3.1 Oracle 11g环境介绍 3.2Oracle 11g for Windows的安装 (1)安装Oracle 11g服务器 (2)Oracle 11g与Windows (3)安装Oracle 11g客户端 3.3 Oracle 11g 的卸载 2、教学重点:学会Oracle的安装 第四章O RACLE数据库管理工具及网络配置(2学时) 1、教学内容: 4.1 SQL*Plus命令 (1)设置SQL*Plus 运行环境 (2)常用SQL*Plus命令 (3)格式化查询结果 4.2 Oracle企业管理器 4.3 数据库配置助手 4.4 启动与关闭oracle实例 2、教学重点:学会使用SQL*Plus 第五章S QL语言基础(5学时) 1、教学内容: 5.1SQL简介 5.2SQL的基本语法 5.3数据查询语言 5.4数据操纵语言 5.5数据定义语言 5.6数据控制语言 5.7常用函数 5.8 事务处理 2、教学重点:数据查询语言、数据操纵语言、数据定义语言、数据控 制语言 3、教学难点:SQL的基本语法 第六章P L/SQL编程(8学时)(课本第6,7章) 1、教学内容: 6.1PL/SQL基础 (1)变量及声明 (2)数据类型 (3)表达式 (4)PL/SQL程序块结构 6.2PL/SQL控制结构

相关主题
文本预览
相关文档 最新文档