SQL语言(综合) 课堂练习和习题

SQL语言(综合) 课堂练习和习题
SQL语言(综合) 课堂练习和习题

SQL语言课堂练习和习题

一、选择题

1. SQL语言是( )的语言,容易学习.

A.过程化

B. 非过程化

C.格式化

D. 导航式

2. SQL语言的数据操纵语句包括SELECT,INSERT,UPDATE,DELETE等.其中最重要的,也是使用最频繁的语句是( ) .

A. SELECT

B. INSERT

C. UPDATE

D. DELETE

3. 在视图上不能完成的操作是( ) .

A. 更新视图

B. 查询

C. 在视图上定义新的表

D. 在视图上定义新的视图

4. SQL语言集数据查询,数据操纵,数据定义和数据控制功能于一体,其中,CREATE,DROP,ALTER语句是实现哪种功能( ).

A. 数据查询

B. 数据操纵

C. 数据定义

D. 数据控制

5. SQL语言中,删除一个视图的命令是( ).

A.DELETE

B.DROP

C.CLEAR

D.REMOVE

6. 在SQL语言中的视图VIEW是数据库的( ) .

A. 外模式

B. 模式

C. 内模式

D. 存储模式

7. 下列的SQL语句中,( )不是数据定义语句.

A. CREATE TABLE

B. DROP VIEW

C. CREATE VIEW

D. GRANT

8. 若要撤销数据库中已经存在的表S,可用( ).

A. DELETE TABLE S

B. DELETE S

C. DROP TABLE S

D. DROP S

9. 若要在基本表S中增加一列CN(课程名),可用( ).

A.ADD TABLE S(CN CHAR(8))

B.ADD TABLE S ALTER(CN CHAR(8))

C.ALTER TABLE S ADD(CN CHAR(8))

D.ALTER TABLE S (ADD CN CHAR(8))

10. 学生关系模式S( S#,Sname,Sex,Age),S的属性分别表示学生的学号,姓名,性别,年龄.要在表S中删除一个属性"年龄",可选用的SQL语句是( ).

A. DELETE Age from S

B. ALTER TABLE S DROP Age

C. UPDATE S Age

D. ALTER TABLE S 'Age'

11. 有关系S(S#,SNAME,SAGE),C(C#,CNAME),SC(S#,C#,GRADE).其中S#是学生号,SNAME 是学生姓名,SAGE是学生年龄, C#是课程号,CNAME是课程名称.要查询选修"ACCESS"课的年龄不小于20的全体学生姓名的SQL语句是SELECT SNAME FROM S,C,SC WHERE子句.这里的WHERE子句的内容是( ).

A. S.S# = SC.S# and C.C# = SC.C# and SAGE>=20 and CNAME='ACCESS'

B. S.S# = S

C.S# and C.C# = SC.C# and SAGE in>=20 and CNAME in 'ACCESS'

C. SAGE in>=20 and CNAME in 'ACCESS'

D. SAGE>=20 and CNAME=' ACCESS'

12. 设关系数据库中一个表S的结构为S(SN,CN,grade),其中SN为学生名,CN为课程名,二者均为字符型;grade为成绩,数值型,取值范围0-100.若要把"张二的化学成绩80分"插入S中,则可用( ).

A. ADD INTO S V ALUES('张二','化学','80')

B. INSERT NTO S V ALUES('张二','化学','80')

C. ADD INTO S V ALUES('张二','化学',80)

D. INSERT INTO S V ALUES('张二','化学',80)

13. 设关系数据库中一个表S的结构为:S(SN,CN,grade),其中SN为学生名,CN为课程名,二者均为字符型;grade为成绩,数值型,取值范围0-100.若要更正王二的化学成绩为85分,则可用( ) .

A. UPDATE S SET grade=85 WHERE SN='王二' AND CN='化学'

B. UPDATE S SET grade='85' WHERE SN='王二' AND CN='化学'

C. UPDATE grade=85 WHERE SN='王二' AND CN='化学'

D. UPDATE grade='85' WHERE SN='王二' AND CN='化学'

14. 在SQL语言中,子查询是( ) .

A. 返回单表中数据子集的查询语言

B. 选取多表中字段子集的查询语句

C. 选取单表中字段子集的查询语句

D. 嵌入到另一个查询语句之中的查询语句

15. SQL是一种( )语言.

A. 高级算法

B. 人工智能

C. 关系数据库

D. 函数型

16. 有关系S(S#,SNAME,SEX),C(C#,CNAME),SC(S#,C#,GRADE).其中S#是学生号,SNAME是学生姓名,SEX是性别, C#是课程号,CNAME是课程名称.要查询选修"数据库"课的全体男生姓名的SQL语句是SELECT SNAME FROM S,C,SC WHERE子句.这里的WHERE子句的内容是( ).

A.S.S# = SC.S# and C.C# = SC.C# and SEX='男' and CNAME='数据库'

B.S.S# = S

C.S# and C.C# = SC.C# and SEX in'男'and CNAME in'数据库'

C.SEX '男' and CNAME ' 数据库'

D.S.SEX='男' and CNAME=' 数据库'

17. 若用如下的SQL语句创建了一个表SC:

CREATE TABLE SC (S# CHAR(6) NOT NULL,C# CHAR(3) NOT NULL,SCORE INTEGER,NOTE CHAR(20));向SC表插入如下行时,( )行可以被插入.

A.('201009','111',60,必修)

B.('200823','101',NULL,NULL)

C.(NULL,'103',80,'选修')

D.('201132',NULL,86,' ')

18. 假设学生关系S(S#,SNAME,SEX),课程关系C(C#,CNAME),学生选课关系SC(S#,C#,GRADE).要查询选修"Computer"课的男生姓名,将涉及到关系( ).

A. S

B. S,SC

C. C,SC

D. S,C,SC

19.SQL Server2000的字符型系统数据类型主要包括()。

A. int、money、char

B. char、varchar、text

C. datetime、binary、int

D. char、varchar、int

20. 如果要在SQL Server2000中存储图形图像、Word文档文件,不可采用的数据类型是()。

A. binary

B. varbinary

C. image

D. text

21. 不属于SQL Server2000系统全局变量的是()。

A. @@Error

B. @@Connections

C. @@Fetch_Status

D. @Records

22.SQL Server2000提供的单行注释语句是使用()开始的一行内容。

A. “/*”

B.“--”

C. “{”

D. “/”

23. 下列标识符可以作为局部变量使用()。

A. [@Myvar]

B. My var

C. @Myvar

D. @My var

24.在SQL Server 中,WAITFOR 语句中的DELAY参数是指()。

A. 要等待的时间

B. 指示SQL Server 一直等到指定的时间过去

C. 用于指示时间

D. 以上都不是

25.下面()组命令,将变量count值赋值为1。

A.DECLARE @count

SELECT @count=1

B.DIM count=1

C.DECLARE count

SELECT count=1

D.DIM @count

SELECT @count=1

26.下列()赋值语句是错误的。

A.SELECT @C=1 B. SET @C=1

C.SELECT @DJ=单价

FROM book

ORDER BY 单价DESC

D.SET @DJ=单价

FROM book

ORDER BY 单价DESC

27.在SQL Server 编程中,可使用()将多个语句捆绑。

A.{} B. BEGIN-END

C.( ) D. [ ]

28.在SQL Server 2000中,下列变量名正确的是()。

A.@sum B.j C.sum D.4kk

选择题答案:

(1) B (2) A (3) C (4) C (5) B (6) A (7) D (8) C (9) C (10) B

(11) A (12) D (13) A (14) D (15) C (16) A (17) B (18) D (19)B(20)D

(21)D(22)B(23)C(24)A(25)A(26)D(27)B(28)A

二、填空题

1.在T-SQL编程语句中,WHILE结构可以根据条件多次重复执行一条语句或一个语句块,还可以使用()和 CONTINUE 关键字在循环内部控制 WHILE 循环中语句的执行。

2.在T-SQL编程语句中,()用于使语句在某一时刻或在一段时间间隔后继续执行。

1.break

2.waitfor

三、简答题

1. 试述SQL语言的特点.

答:

(1)综合统一. SQL语言集数据定义语言DDL,数据操纵语言DML,数据控制语言DCL的功能于一体.

(2)高度非过程化.用SQL语言进行数据操作,只要提出"做什么",而无须指明"怎么做",因此无需了解存取路径,存取路径的选择以及SQL语句的操作过程由系统自动完成.

(3)面向集合的操作方式.SQL语言采用集合操作方式,不仅操作对象,查找结果可以是元组的集合,而且一次插入,删除,更新操作的对象也可以是元组的集合.

(4)以同一种语法结构提供两种使用方式.SQL语言既是自含式语言,又是嵌入式语言.作为自含式语言,它能够独立地用于联机交互的使用方式,也能够嵌入到高级语言程序中,供程序员设计程序时使用.

(5)语言简捷,易学易用.

2. 试述SQL的定义功能.

答: SQL的数据定义功能包括定义表,定义视图和定义索引.

SQL语言使用CREATE TABLE语句定义建立基本表,;ALTER TABLE语句修改基本表定义,DROP TABLE语句删除基本表;建立索引使用CREATE INDEX语句建立索引, DROP INDEX语句删除索引表;SQL语言使用CREA TE VIEW命令建立视图,DROP VIEW语句删除视图.

3. 用SQL语句建立“关系数据库和关系代数课堂练习和习题”中的四个表.

答: 对于S表:S( SNO,SNAME,STA TUS,CITY);

建S表:

CREATE TABLE S

(SNO CHAR(3),

SNAME CHAR(10),

STA TUS CHAR(2),

CITY CHAR(10));

P(PNO,PNAME,COLOR,WEIGHT);

建P表:

CREATE TABLE P

(PNO CHAR(3),

PNAME CHAR(10),

COLOR CHAR(4),

WEIGHT INT);

J(JNO,JNAME,CITY);

建J表:

CREATE TABLE J

(JNO CHAR(3),

JNAME CHAR(10),

CITY CHAR(10));

SPJ(SNO,PNO,JNO,QTY);

建SPJ表:

CREATE TABLE SPJ

(SNO CHAR(3),

PNO CHAR(3),

JNO CHAR(3),

QTY INT);

4. 针对上题中建立的四个表试用SQL语言完成“关系数据库和关系代数课堂练习和习题”的查询.

答: (1) 求供应工程J1零件的供应商号码SNO;

SELECT SNO

FROM SPJ

WHERE JNO='J1';

(2) 求供应工程J1零件P1的供应商号码SNO;

SELECT SNO

FROM SPJ

WHERE JNO='J1' AND PNO='P1';

(3) 求供应工程J1零件为红色的供应商号码SNO;

SELECT SNO

FROM SPJ

WHERE JNO='J1'

AND PNO IN

(SELECT PNO

FROM P

WHERE COLOR='红');

SELECT SNO

FROM SPJ,P

WHERE JNO='J1' AND SPJ.PNO=P.PNO AND COLOR='红';

*(4) 求没有使用天津供应商生产的红色零件的工程号JNO;

解析:

用SQL语言表示如下:

SELECT JNO

FROM J

WHERE NOT EXISTS

(SELECT *

FROM SPJ

WHERE SPJ.JNO=J.JNO

AND SNO IN

(SELECT SNO

FROM S

WHERE CITY='天津')

AND PNO IN

(SELECT PNO

FROM P

WHERE COLOR='红'));

SELECT JNO

FROM J

WHERE NOT EXISTS

(SELECT *

FROM SPJ, S, P

WHERE SPJ.JNO=J.JNO AND SPJ.SNO=S.SNO AND SPJ.PNO=P.PNO AND S.CITY='天津' AND P. COLOR='红');

注意:从J 表入手,以包含那些尚未使用任何零件的工程号.

*(5) 求至少用了供应商S1所供应的全部零件的工程号JNO .

解析:

用SQL语言表示如下:

SELECT DISTINCT JNO

FROM SPJ SPJZ

WHERE NOT EXISTS

(SELECT *

FROM SPJ SPJX

WHERE SNO='S1'

AND NOT EXISTS

(SELECT *

FROM SPJ SPJY

WHERE SPJY.PNO=SPJX.PNO

AND SPJY.JNO=SPJZ.JNO

AND SPJY.SNO='S1'))

5. 针对习题3中的四个表试用SQL语言完成以下各项操作:

(1)找出所有供应商的姓名和所在城市.

(2)找出所有零件的名称,颜色,重量.

(3)找出使用供应商S1所供应零件的工程号码.

(4)找出工程项目J2使用的各种零件的名称及其数量.

(5)找出上海厂商供应的所有零件号码.

(6)找出使用上海产的零件的工程名称.

(7)找出没有使用天津产的零件的工程号码.

(8)把全部红色零件的颜色改成蓝色.

(9)由S5供给J4的零件P6改为由S3供应,请作必要的修改.

(10)从供应商关系中删除S2的记录,并从供应情况关系中删除相应的记录.

(11)请将(S2,J6,P4,200) 插入供应情况关系.

答: (1) 找出所有供应商的姓名和所在城市.

SELECT SNAME, CITY

FROM S;

(2) 找出所有零件的名称,颜色,重量.

SELECT PNAME, COLOR, WEIGHT

FROM P;

(3) 找出使用供应商S1所供应零件的工程号码.

SELECT JNO

FROM SPJ

WHERE SNO='S1';

(4) 找出工程项目J2使用的各种零件的名称及其数量.

SELECT P.PNAME, SPJ.QTY

FROM P, SPJ

WHERE P.PNO=SPJ.PNO

AND SPJ.JNO='J2';

(5) 找出上海厂商供应的所有零件号码.

SELECT DISTINCT PNO

FROM SPJ

WHERE SNO IN

(SELECT SNO

FROM S

WHERE CITY='上海');

(6) 找出使用上海产的零件的工程名称.

SELECT JNAME

FROM J, SPJ, S

WHERE J. JNO=SPJ. JNO

AND SPJ. SNO=S.SNO

AND S.CITY='上海';

SELECT JNAME

FROM J

WHERE JNO IN

(SELECT JNO

FROM SPJ, S

WHERE SPJ. SNO=S.SNO

AND S.CITY='上海');

(7) 找出没有使用天津产的零件的工程号码.

SELECT JNO

FROM J

WHERE NOT EXISTS

(SELECT *

FROM SPJ

WHERE SPJ.JNO=J.JNO AND SNO IN

(SELECT SNO

FROM S

WHERE CITY='天津'));

SELECT JNO

FROM J

WHERE NOT EXISTS

(SELECT *1

FROM SPJ, S

WHERE SPJ.JNO=J.JNO AND SPJ.SNO=S.SNO AND S.CITY='天津');

(8) 把全部红色零件的颜色改成蓝色.

UPDA TE P

SET COLOR='蓝'

WHERE COLOR='红' ;

(9) 由S5供给J4的零件P6改为由S3供应,请作必要的修改.

UPDA TE SPJ

SET SNO='S3'

WHERE SNO='S5' AND JNO='J4' AND PNO='P6';

(10) 从供应商关系中删除S2的记录,并从供应情况关系中删除相应的记录.

DELETE

FROM SPJ

WHERE SNO='S2';

DELETE

FROM S

WHERE SNO='S2';

解析:注意删除顺序,应该先从SPJ表中删除供应商S2所供应零件的记录,然后从从S表中删除S2.

(11) 请将(S2,J6,P4,200) 插入供应情况关系.

INSERT INTO SPJ(SNO, JNO, PNO, QTY)

V ALUES (S2,J6,P4,200);

INSERT INTO SPJ

V ALUES (S2,P4,J6,200);

6.针对系统示例数据库中的相应表,写出满足要求的SQL语句。

(1).查询pubs数据库的authors表中的作者的姓(au_lname)、名(au_fname)和电话号码(phone)。

(2).使用TOP关键字,从Northwind数据库的customers表中搜索返回前20%的数据。

(3).查询Northwind数据库的Orders表中的数据,并将其中的货物重量feight增加50%。

(4).使用WHERE 子句从Northwind 数据库的Products表中检索出所有单位价格(UnitPrice)超过50美元的货物名称(Product Name )、货物代号(ProductID)以及每单位重量(QuantityPerUnit)。

(5).在Northwind 数据库的Employees表中搜索出职务(Title)为销售代表(Sales Representative),称呼(TitleOfCourtesy)为小姐(MS)的所有职员的名(FirstName)、姓(LastName)和生日(BirhthDate)。

(6).查询在Northwind数据库的Employees表中以字母A作Firstname第一个字母的雇员的Firstname和Lastname。

(7).查询Northwind数据库Employees表中所有雇员的Firstname和Lastname,并按生日BirthDate从小到大进行排列。

(8).在Northwind数据库的Products表中查询出每个供应商(Suppliers)所提供的每一种平均价格(Unitprice)超过15美元的产品,并按供应商的ID分类。

四、写出下列每条语句或程序段的功能

假设存在名为AAA的数据库,包括Students(学号char(8),姓名varchar(8),年龄int,专业varchar(20),入学日期DateTime)和Score(学号char(8),课程名varchar(10),成绩numeric(5,2))两张表。

1. SELECT *

FROM Students

WHERE DATEPART(year,入学日期) =DA TEPART(year,GETDATE())

2. DECLARE @MyNO CHAR(8)

SET @MyNO='20030001'

IF (SELECT 专业FROM Students WHERE 学号=@MyNO)='计算机软件' BEGIN

SELECT A VG(成绩) AS 平均成绩

FROM Score

WHERE 学号=@MyNO

END

ELSE

PRINT '学号为' +@MyNO+'的学生不存在或不属于软件专业' GO

3. declare @a numeric(5,2)

set @a=(select avg(成绩) from score)

select *

from score

where 成绩>=@a

4. declare @a numeric(5,2),@b numeric(5,2)

set @a=(select max(成绩) from score)

set @b=(select min(成绩) from score)

print @a-@b

5. declare @a char(6)

set @a='刘亮'

if(exists(select * from students where 姓名=@a))

print '姓名为'+@a+'的同学存在!'

else

print '姓名为'+@a+'的同学不存在!'

6. declare @a char(8)

set @a='计算机'

select 计算机专业人数=count(*)

from students

where left(专业,3)=@a

7. select year(入学日期) as 入学年份,count(*) as 人数

from students

group by year(入学日期)

8. select month(入学日期) as 入学月份,count(*) as 人数

from students

group by month(入学日期)

9. select day(入学日期) as 入学日号,count(*) as 人数

from students

group by day(入学日期)

10. create procedure xxk1

as

begin

select *

from students x,score y

where x.学号=y.学号

end

11.create procedure xxk2

as

begin

select x.学号,x.姓名,x.专业,count(*) as 门数

from students x,score y

where x.学号=y.学号

group by x.学号,x.姓名,x.专业

end

12.create procedure xxk3

as

begin

select 学号,avg(成绩) as 平均成绩

from score

group by 学号

end

13.create procedure xxk4

(

@a char(8),@b varchar(10),@c numeric(5,2)

)

as

begin

update score

set 成绩=@c

where 学号=@a and 课程名=@b

end

14.create procedure xxk5

(

@a char(8),@b varchar(10),@c numeric(5,2) )

as

begin

insert into score

values(@a,@b,@c)

end

15.create procedure xxk6

(

@a char(8),@b varchar(10)

)

as

begin

delete from score

where 学号=@a and 课程名=@b

end

16.eclare @a char(8),@b varchar(10),@c numeric(5,2)

declare @d int

set @d=0

declare xxx cursor

for select 学号,课程名,成绩

from score

open xxx

fetch xxx into @a,@b,@c

while @@fetch_status=0

begin

set @d=@d+1

fetch from xxx into @a,@b,@c

end

close xxx

deallocate xxx

print @d

17.declare @a char(8),@b varchar(10),@c numeric(5,2)

declare xxx cursor

for select 学号,课程名,成绩

from score

open xxx

fetch xxx into @a,@b,@c

while @@fetch_status=0

begin

print @a+replicate(' ',3)

+@b+str(@c)+replicate(' ',3)

+(case

when @c>=90 then '优秀'

when @c>=70 then '良好'

when @c>=60 then '及格'

else '不及格'

end

)

fetch from xxx into @a,@b,@c

end

close xxx

deallocate xxx

18.declare @c numeric(5,2)

declare @c1 int, @c2 int, @c3 int, @c4 int

set @c1=0; set @c2=0; set @c3=0; set @c4=0 declare xxx cursor

for select 成绩from score

open xxx

fetch xxx into @c

while @@fetch_status=0

begin

if(@c>=90) set @c1=@c1+1;

else if(@c>=70) set @c2=@c2+1;

else if(@c>=60) set @c3=@c3+1;

else set @c4=@c4+1

fetch from xxx into @c

end

close xxx

deallocate xxx

print '优秀生人数:'+str(@c1,5);

print '良好生人数:'+str(@c2,5);

print '及格生人数:'+str(@c3,5);

print '及格生人数:'+str(@c4,5)

19.declare @a char(8),@b varchar(10)

declare @c numeric(5,2)

declare @d int

set @d=80

declare xxx cursor

for select 学号,课程名,成绩

from score

open xxx

fetch xxx into @a,@b,@c

while @@fetch_status=0

begin

if(@c>=@d) print @a+replicate(' ',3)+@b+str(@c,5)

fetch from xxx into @a,@b,@c

end

close xxx

deallocate xxx

20.declare @a char(8),@b varchar(10),@c numeric(5,2)

declare @s char(8),@r varchar(10)

set @s='20030001'

set @r='数学'

set @c=84

declare xxx cursor

for select 学号,课程名from score

open xxx

fetch xxx into @a,@b

while @@fetch_status=0

begin

if(@a=@s and @b=@r)

update score

set 成绩=@c

where current of xxx

fetch from xxx into @a,@b

end

close xxx

deallocate xxx

参考答案:

1. 从Students表中查询出所有当年(系统时间)入学的学生记录。

2. 首先定义一个名为@MyNo的局部变量,并给它赋初值,如果@MyNo属于计算机软件专业,则显示出平均成绩,否则显示“学号为@MyNo的学生不存在或不属于软件专业”。

3. 从score表中查询出大于等于平均成绩的所有记录。

4. 求出score表中最高成绩与最低成绩的分数之差。

5. 从students表中查询姓名为@a的值的同学是否存在,根据不同情况显示出相应信息。

6. 从students表中统计出专业名开头为@a的值(即“计算机”)的所有学生人数。

7. 从students表中分组统计出每个年份入学的学生人数。

8. 从students表中分组统计出每个月份入学的学生人数。

9. 从students表中分组统计出每个日号入学的学生人数。

10. 显示出AAA库中所有学生的记录信息及选课成绩

11. 显示出AAA库中每个学生的学号、姓名、专业等信息及选课门数

12. 显示出AAA库中每个学生的平均成绩

13. 修改score表中学号为@a的值、课程名为@b的值的学生的成绩为@c的值。

14. 向score表中插入学号为@a的值、课程名为@b的值、成绩为@c的值的学生成绩记

录。

15. 从score表中删除学号为@a的值、课程名为@b的值的学生成绩记录。

16. 从score表中统计并显示出记录总数

17. 显示出score表中每个成绩记录,并在每条记录最后给出优秀、良好、及格、不及格等相应等级。

18. 从score表中按成绩统计并显示出优秀、良好、及格、不及格各多少人。

19. 显示出score表中成绩大于等于@d值的所有记录。

20. 修改score表中学号为@a的值、课程名为@b的值的学生的成绩为@c的值。

五、问题描述:本题用到下面三个关系表:

CARD (CNO,NAME,CLASS)借书卡。 CNO 卡号,NAME 姓名,CLASS 班级BOOKS(BNO,BNAME,AUTHOR,PRICE,QUANTITY )图书。 BNO 书号,BNAME 书名,AUTHOR 作者,PRICE 单价,QUANTITY 库存册数

BORROW( CNO,BNO ,RDATE )借书记录。 CNO 借书卡号,BNO 书号,RDATE 还书日期

备注:限定每人每种书只能借一本;库存册数随借书、还书而改变。

要求实现如下15个处理:

1.写出建立BORROW表的SQL语句,要求定义主码完整性约束和引用完整性约束。 2.找出借书超过5本的读者,输出借书卡号及所借图书册数。

3.查询借阅了"水浒"一书的读者,输出姓名及班级。

4.查询过期未还图书,输出借阅者(卡号)、书号及还书日期。

5.查询书名包括"网络"关键词的图书,输出书号、书名、作者。

6.查询现有图书中价格最高的图书,输出书名及作者。

7.查询当前借了"计算方法"但没有借"计算方法习题集"的读者,输出其借书卡号,并按卡号降序排序输出。

8.将"C01"班同学所借图书的还期都延长一周。

9.从BOOKS表中删除当前无人借阅的图书记录。

10.如果经常按书名查询图书信息,请建立合适的索引。

11.在BORROW表上建立一个触发器,完成如下功能:如果读者借阅的书名是"数据库技术及应用",就将该读者的借阅记录保存在BORROW_SAVE表中(注ORROW_SAVE 表结构同BORROW表)。

12.建立一个视图,显示"力01"班学生的借书信息(只要求显示姓名和书名)。

13.查询当前同时借有"计算方法"和"组合数学"两本书的读者,输出其借书卡号,并按卡号升序排序输出。

14.假定在建BOOKS表时没有定义主码,写出为BOOKS表追加定义主码的语句。

15.对CARD表做如下修改:

a. 将NAME最大列宽增加到10个字符(假定原为6个字符)。

b. 为该表增加1列NAME(系名),可变长,最大20个字符。

参考答案:(未上机验证)

六、综合操作题

小学低年级语文课堂语言表达能力的有效训练

小学低年级语文课堂语言表达能力的有效训练语言表达能力具体是指用词准确,语意明白,结构妥贴,语句简洁,文理贯通,语言平易,合乎规范,能把客观概念表述得清晰、准确、连贯、得体,没有语病。 小学语文教学的目的是培养和提高学生理解、运用祖国语言的能力。新大纲明确指出:“语文教学要注重语言训练。” 小学低年级是学生语言发展的最佳阶段,要抓住机会引导他们进行有目的的语言训练。说是写的基础,是作文的前提。听话、说话训练是语文教学的重要任务。会听、会说以后才能会写。 “有效”主要是指通过教师在一种先进教学理念指导下经过一段时间的教学之后,使学生获得具体的进步或发展。 “关注表达”、“训练表达”是当今语文教学最基本的教学内容,其目的在于培养学生积累、运用语言的能力。而低年级学生年龄小,阅历浅,语言保有量少,扎扎实实地打好语言表达的基础,这无疑是低年级老师现在最需要思考的问题。 1.关注课文表达,充分利用文本进行有效的语言训练 充分利用课文资源,对表达能力进行针对性的训练,不仅能有效地调动学生的语言积累,使学生的遣词造句能力得到锤炼,同时也可使学生思维的概括性和语言的流畅性得到提高,让学生在内化文本语言的过程中,有效地提高语言表达能力。 《带着尺子去钓鱼》是上教版第三册中的一篇教材,记叙了中国客人小张在丹麦“带着尺子去钓鱼”的奇特经历。让学生体会丹麦人严格的法律意识,学习他们自觉保护海洋资源的良好品德。 认真分析了“课程标准”对于二年级第一学期的教学要求后,我降低了语言训练的难度,一堂课仅设计了一个语言训练点。并仅要求学生利用课文中的文字,用“因为……所以……”讲“原因”说清楚就行了。在设计这个语言训练时,还特别设计了先“找句子”——再“读句子”——然后看着句子“说原因”——最后出示“因为……所以……”自己把“原因”说清楚。 在教学中,我在出示“原来为了保护海洋中的自然资源,丹麦法律规定只有

常用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.dat' --- 开始备份 BACKUP DATABASE pubs TO testBack 4、说明:创建新表 create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..) 根据已有的表创建新表: A:create table tab_new like tab_old (使用旧表创建新表) B:create table tab_new as select col1,col2…from tab_old definition 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 删除视图:DROP view viewname 10、说明:几个简单的基本的sql语句 选择:select * from table1 where 范围 插入:insert into table1(field1,field2) values(value1,value2) 删除:delete from table1 where 范围 更新:update table1 set field1=value1 where 范围 查找:select * from table1 where field1 like ’%value1%’---like的语法很精妙,查资料! 排序:select * from table1 order by field1,field2 [desc] 总数:select count as totalcount from table1 求和:select sum(field1) as sumvalue from table1 平均:select avg(field1) as avgvalue from table1 最大:select max(field1) as maxvalue from table1 最小:select min(field1) as minvalue from table1 11、说明:几个高级查询运算词

SQL语言基本语法

SQL语言基本语法 SQL语言是用于查询关系数据库的标准语言,它包括若干关键字和一致的语法,便于数据库元件(如表、索引、字段等)的建立和操纵。SQL语言有四种基本的对数据表操作的语句:INSERT,UPDATE,DELETE和SELECT语句,下面将逐一介绍。 1.INSERT语句 insert into table_name (column1,column2,...) values ( value1,value2, ...); 说明:(1) 若没有指定column,系统则会按表设计中的字段顺序填入数据。 (2) 插入数据的数据类型必须和表设计中对应字段的数据类型吻合。 2.UPDATE语句 语法结构: update table_name set column1='***' // 或set column1=*** where conditions; 说明:(1) 更改某个数据列的值,如果此列数据库类型为数值型,设定值不加单引号,如果是非数值型需加单引号。 (2) conditions 是所要符合的条件、若没有where 子句则整个table 的 column1列的数据会全部被更改。当条件有多个时,须通过or或and关键 字作逻辑连接。 3.DELETE语句 语法结构: delete from table_name where conditions; 说明:删除符合条件的数据。 4.SELECT语句 基本查询 语法结构1: select column1,column2,... from table_name; 说明:把table_name表中指定查询的列的信息查询出来。 语法结构2: select * from table_name where conditions; 说明:(1) '*'表示全部的数据列中数据。 (2) conditions为条件表达式。 排序查询 语法结构: select column1,column2

SQL语言习题参考答案

第3章 SQL语言习题参考答案 1.试述SQL语言的特点。(85页) 答:综合统一、高度非过程化、面向集合的操作方式、以同一种语法结构提供两种使用方式、语言简捷,易学易用。 2.试述SQL的定义功能。(87页) 答:SQL的数据定义功能包括定义表、定义视图和定义索引 3.用SQL语句建立第二章习题5中的四个表。 S(SNO,SNAME,STATUS,CITY); P(PNO,PNAME,COLOR,WEIGHT); J(JNO,JNAME,CITY); SPJ(SNO,PNO,JNO,QTY); 供应商表S由供应商代码(SNO)、供应商姓名(SNAME)、供应商状态(STATUS)、供应商所在城市(CITY)组成: CREATE TABLE S(Sno C(2) UNIQUE,Sname C(6) ,Status N(2),City C(4)) 零件表P由零件代码(PNO)、零件名(PNAME)、颜色(COLOR)、重量(WEIGHT)组成: CREATE TABLE P(Pno C(2) UNIQUE,Pname C(6),COLOR C(2), WEIGHT I(2)) 工程项目表J由工程项目代码(JNO)、工程项目名(JNAME)、所在城市(CITY)组成: CREATE TABLE J(Jno C(2) UNlQUE,JNAME C(8), CITY C(4)) 供应情况表SPJ由供应商代码(SNO)、零件代码(PNO)、工程项目代码(JNO)、供应数量(QTY)组成: CREATE TABLE SPJ(Sno C(2),Pno C(2),JNO C(2), QTY N(2)) 4.针对上题中建立的四个表试用SQL语言完成第二章习题5中的查询: (1)求供应工程J1零件的供应商号码SNO: SELECT DIST SNO FROM SPJ WHERE JNO=’J1’ (2)求供应工程J1零件P1的供应商号码SNO: SELECT DIST SNO FROM SPJ WHERE JNO='J1' AND PNO='P1' (3)求供应工程J1零件为红色的供应商号码SNO: SELECT SNO FROM SPJ,P WHERE JNO='J1' AND = AND COLOR='红' (4)求没有使用天津供应商生产的红色零件的工程号JNO: SELECT DIST JNO FROM SPJ WHERE JNO NOT IN (SELE JNO FROM SPJ,P,S WHERE ='天津' AND COLOR='红' AND = AND =。 (5)求至少用了供应商S1所供应的全部零件的工程号JNO。 由于VFP不允许子查询嵌套太深,将查询分为两步 A、查询S1供应商供应的零件号 SELECT DIST PNO FROM SPJ WHERE SNO='S1'结果是(P1,P2) B、查询哪一个工程既使用P1零件又使用P2零件。 SELECT JNO FROM SPJ WHERE PNO='P1' AND JNO IN (SELECT JNO FROM SPJ WHERE PNO='P2') 5.针对习题3中的四个表试用SQL语言完成以下各项操作: (1)找出所有供应商的姓名和所在城市。 SELECT SNAME,CITY FROM S (2)找出所有零件的名称、颜色、重量。 SELECT PNAME,COLOR,WEIGHT FROM P (3)找出使用供应商S1所供应零件的工程号码。 SELECT DIST JNO FROM SPJ WHERE SNO='S1' (4)找出工程项目J2使用的各种零件的名称及其数量。 SELECT PNAME,QTY FROM SPJ,P WHERE = AND ='J2' (5)找出上海厂商供应的所有零件号码。 SELECT PNO FROM SPJ,S WHERE = AND CITY='上海' (6)出使用上海产的零件的工程名称。 SELECT JNAME FROM SPJ,S,J WHERE = AND ='上海' AND = (7)找出没有使用天津产的零件的工程号码。 注意: SELECT DISP JNO FROM SPJ WHERE JNO NOT IN (SELECT DIST JNO FROM SPJ,S WHERE = AND ='天津') 适用于JNO 是唯一或不唯一的情况. 注意: SELECT DIST JNO FROM SPJ,S WHERE = AND <>'天津'适用于JNO是唯一的情况 (8)把全部红色零件的颜色改成蓝色。 UPDATE P SET COLOR='蓝' WHERE COLOR='红' (9)由S5供给J4的零件P6改为由S3供应。 UPDATE SPJ SET SNO='S3' WHERE SNO='S5' AND JNO='J4' AND PNO='P6' (10)从供应商关系中删除供应商号是S2的记录,并从供应情况关系中删除相应的记录。

SQL语句语法大全

第13章:SQL语句语法 目录 13.1. 数据定义语句 13.1.1. ALTER DATABASE语法 13.1.2. ALTER TABLE语法 13.1.3. CREATE DATABASE语法 13.1.4. CREATE INDEX语法 13.1.5. CREATE TABLE语法 13.1.6. DROP DATABASE语法 13.1.7. DROP INDEX语法 13.1.8. DROP TABLE语法 13.1.9. RENAME TABLE语法 13.2. 数据操作语句 13.2.1. DELETE语法 13.2.2. DO语法 13.2.3. HANDLER语法 13.2.4. INSERT语法 13.2.5. LOAD DATA INFILE语法 13.2.6. REPLACE语法 13.2.7. SELECT语法 13.2.8. Subquery语法 13.2.9. TRUNCATE语法 13.2.10. UPDATE语法 13.3. MySQL实用工具语句 13.3.1. DESCRIBE语法(获取有关列的信息) 13.3.2. USE语法 13.4. MySQL事务处理和锁定语句 13.4.1. START TRANSACTION, COMMIT和ROLLBACK语法 13.4.2. 不能回滚的语句 13.4.3. 会造成隐式提交的语句 13.4.4. SAVEPOINT和ROLLBACK TO SAVEPOINT语法 13.4.5. LOCK TABLES和UNLOCK TABLES语法 13.4.6. SET TRANSACTION语法 13.4.7. XA事务 13.5. 数据库管理语句 13.5.1. 账户管理语句 13.5.2. 表维护语句 13.5.3. SET语法 13.5.4. SHOW语法 13.5.5. 其它管理语句 13.6. 复制语句

SQL语句基础教程汇总

无论您是一位SQL 的新手,或是一位只是需要对SQL 复习一下的资料仓储业界老将,您就来对地方了。这个SQL 教材网站列出常用的SQL 指令,包含以下几个部分: ? SQL 指令: SQL 如何被用来储存、读取、以及处理数据库之中的资料。 ?表格处理: SQL 如何被用来处理数据库中的表格。 ?进阶SQL: 介绍SQL 进阶概念,以及如何用SQL 来执行一些较复杂的运算。 ? SQL 语法: 这一页列出所有在这个教材中被提到的SQL 语法。 对于每一个指令,我们将会先列出及解释这个指令的语法,然后用一个例子来让读者了解这个指令是如何被运用的。当您读完了这个网站的所有教材后,您将对SQL 的语法会有一个大致上的了解。另外,您将能够正确地运用SQL 来由数据库中获取信息。笔者本身的经验是,虽然要对SQL 有很透彻的了解并不是一朝一夕可以完成的,可是要对SQL 有个基本的了解并不难。希望在看完这个网站后,您也会有同样的想法。 SQL指令 SELECT 是用来做什么的呢?一个最常用的方式是将资料从数据库中的表格内选出。从这一句回答中,我们马上可以看到两个关键字:从(FROM) 数据库中的表格内选出(SELECT)。(表格是一个数据库内的结构,它的目的是储存资料。在表格处理这一部分中,我们会提到如何使用SQL 来设定表格。) 我们由这里可以看到最基本的SQL 架构: SELECT "栏位名" FROM "表格名" 我们用以下的例子来看看实际上是怎么用的。假设我们有以下这个表格: store_name Sales Date Los Angeles $1500 Jan-05-1999 San Diego $250 Jan-07-1999 Los Angeles $300 Jan-08-1999 Boston $700 Jan-08-1999

SQL查询语句大全集锦(超经典)

SQL查询语句大全集锦 MYSQL查询语句大全集锦 一、简单查询 简单的Transact-SQL查询只包括选择列表、FROM子句和WHERE子句。它们分别说明所查询列、查询的 表或视图、以及搜索条件等。 例如,下面的语句查询testtable表中姓名为“张三”的nickname字段和email字段。 复制内容到剪贴板 代码:SELECT `nickname`,`email`FROM `testtable`WHERE `name`='张三' (一) 选择列表 选择列表(select_list)指出所查询列,它可以是一组列名列表、星号、表达式、变量(包括局部变量和全局变量)等构成。 1、选择所有列 例如,下面语句显示testtable表中所有列的数据: 复制内容到剪贴板 代码:SELECT * FROM testtable 2、选择部分列并指定它们的显示次序 查询结果集合中数据的排列顺序与选择列表中所指定的列名排列顺序相同。 例如: 复制内容到剪贴板 代码:SELECT nickname,email FROM testtable 3、更改列标题 在选择列表中,可重新指定列标题。定义格式为: 列标题=列名 列名列标题 如果指定的列标题不是标准的标识符格式时,应使用引号定界符,例如,下列语句使用汉字显示列 标题:

复制内容到剪贴板 代码:SELECT 昵称=nickname,电子邮件=email FROM testtable 4、删除重复行 SELECT语句中使用ALL或DISTINCT选项来显示表中符合条件的所有行或删除其中重复的数据行,默认 为ALL。使用DISTINCT选项时,对于所有重复的数据行在SELECT返回的结果集合中只保留一行。 5、限制返回的行数 使用TOP n [PERCENT]选项限制返回的数据行数,TOP n说明返回n行,而TOP n PERCENT时,说明n是 表示一百分数,指定返回的行数等于总行数的百分之几。 例如: 复制内容到剪贴板 代码:SELECT TOP 2 * FROM `testtable` 复制内容到剪贴板 代码:SELECT TOP 20 PERCENT * FROM `testtable` (二) FROM子句 FROM子句指定SELECT语句查询及与查询相关的表或视图。在FROM子句中最多可指定256个表或视图, 它们之间用逗号分隔。 在FROM子句同时指定多个表或视图时,如果选择列表中存在同名列,这时应使用对象名限定这些列 所属的表或视图。例如在usertable和citytable表中同时存在cityid列,在查询两个表中的cityid时应使用下面语句格式加以限定: 复制内容到剪贴板 代码:SELECT `username`,citytable.cityid FROM `usertable`,`citytable` WHERE usertable.cityid=citytable.cityid在FROM子句中可用以下两种格式为表或视图指定别名: 复制内容到剪贴板 代码:表名 as 别名 表名别名例如上面语句可用表的别名格式表示为: 复制内容到剪贴板

第三章 SQL语言习题

第3章 SQL语言习题 一、单项选择题 1.SQL语言是()的语言,易学习。 A.过程化 B.非过程化 C.格式化 D.导航式 2.SQL语言是()语言。 A.层次数据库 B.网络数据库 C.关系数据库 D.非数据库 3.SQL语言具有()的功能。 A.关系规范化、数据操纵、数据控制B数据定义、数据操纵、数据控制 C.数据定义、关系规范化、数据控制 D.数据定义、关系规范化、数据操 4.SQL语言的数据操纵语句包括SELECT,INSERT,UPDATE和DELETE等。其中最重要的,也是使用最频繁的语句是()。 A.SELECT B.INSERT C.UPDATE D.DELETE 5.SQL语言具有两种使用方式,分别称为交互式SQL和()。 A.提示式SQL B.用户式SQL C.嵌入式SQL D.解释式SQL 6.SQL语言中,实现数据检索的语句是()。 A.SELECT B.INSERT C.UPDATE D.DELETE 7.下列SQL语句中,修改表结构的是()。 A.ALTER B.CREAT C.UPDATE D .DELETE 8.在SQL中,用户可以直接操作的是()。 A 基本表 B 视图 C 存储文件 D 基本表和视图 9.在SQL的查询语句中,对应关系代数中“投影”运算的语句是()。 A WHERE B FROM C SELECT D HAVING 10.在SELECT语句中,需对分组情况满足的条件进行判断时,应使用()。 A WHERE B GROUP BY C ORDER BY D HAVING 11.SQL中,与“NOT IN”等价的操作符是()。 A =ANY B <>ANY C =ALL D <>ALL 12.视图建立后,在数据字典中存放的是()。 A 查询语句 B 组成视图的表的内容 C 视图的定义 D 产生视图的表的定义 第13到第16题基于这样的三个表即学生表S、课程表C和学生选课表SC,它们的结构如下:S(S#,SN,SEX,AGE,DEPT) C(C#,CN) SC(S#,C#,GRADE) 其中:S#为学号,SN为姓名,SEX性别,AGE为年龄,DETP为系别,C#为课程号,CN为课程名,GRADE为成绩。 13.检索所有比“王华”年龄大的学生姓名、年龄和性别。正确的SELECT语句是()。 A.SELECT SN, AGE, SEX FROM S WHERE AGE>(SELECT AGE FROM S WHERE SN=’王华’) B.SELECT SN, AGE, SEX FROM S WHERE SN=’王华’ C.SELECT SN,AGE,SEX FROM S WHERE AGE>(SELECT AGE WHERE SN=’王华’) D.SELECT SN, AGE, SEX FROM S WHERE AGE>王华.AGE 14.检索选修课程“C2”的学生中成绩最高的学生的学号。正确的SELECT语句是()。 A.SELECT S# FROM SC WHEREC#=’C2’ AND GRADE>= (SELECT GRADE FROM SC WHERE C#=’ C2’) B.SELECT S# FROM SC WHERE C#=’C2’ AND GRADE IN(SELECT GRADE FROM SC WHEREC#=’ C2’) C.SELECT S# FROM SC WHERE C#=’C2’ AND GRADE NOT IN(SELECT GRADE FROM SC WHERE C#=’C2’) D.SELECT S# FROM SC WHERE C#=’C2’ AND GRADE>=ALL (SELECT GRADE FROM SC WHERE

如何做语文课堂教学中的说话训练

如何做好一年级语文课堂教学中的说话训练 小井镇范屯小学李发军 在我们的课堂教学中,经常碰到这样的状况:在提出了一个问题后,学生跃举手发言的积极性非常高,个个摩拳擦掌、跃跃欲试。可很多学生回答起来却语无伦次,他们明明知道答案却无从说起,一个字或一个词都重复了好几遍,怎么也说不出重点,语言的条理性就更加无从谈起了。如何才能使学生不但“愿意说”,而且“会说”呢?(这里的“会说”其实就是指语言表达思路清晰、富有条理性,能将自己的想法完整、清晰地表达给听者。)解决这一问题的主要阵地应该就是我们的语文教学课堂。在语文课堂教学中我们应该从培养学生的语言表达能力方面(也就是我们说的“说话训练”)苦下功夫。 首先我们应该认识到说话训练的重要性。很多大教育家对语言表达能力的培养都有过特别的强调,我们也认识到,要提高学生的语文素质,以适应社会发展的需要,就必须从入学时就注重加强学生的说话训练,使他们掌握说话这一人们赖以交际和沟通思想的最常用、最快捷的工具。语文新课程标准明确指出:“说话训练要贯穿在语文教学的各个环节之中”,“训练方式力求多样”。因此,在语文教学中,说话训练要从刚入学的一年级孩子抓起,找准切入点,把说话训练与语文各环节教学结合起来,使学生在语文学习中不断地培养和提高说话能力。 其次就是如何来展开实施说话训练呢?在低年级特别是一年级的说话训练离不开一个重要的载体和工具,那就是我们的课本。苏教版语文第一册分为“汉语拼音”,“认一认”,“识字”,“练习”和“课文”五个部分。合理利用这几部分展开说话训练,我们的课堂教学就一定能取得理想的效果。 (一)、“汉语拼音” 汉语拼音是识字和学习普通话的工具。初入学的儿童,虽然没有经过对语言文字的规范、系统的学习,但他们在生活环境的熏陶下,在与他人的交往中已具备了一定的语言感受和表达的基础。入学后,他们接触最广、使用最多的便是汉语拼音,大量地学习字母发音,书写记忆字母字形,拼读音节,繁琐单调而枯燥,极易使他们产生厌学情绪。目前苏教版教材中每一课都有意境优美的情景图,这在很大程度上激发了学生说话的欲望。请教了几位有经验的老教师,他们给了我很好的建议:在拼音教学中尤其要利用情境图,以拼音代字,让学生先说后写,边说边听。如教学声母“t”与单韵母“i”组成的音节时,可根据四声练习说话:tī——梯楼梯我每天回家都要爬楼梯;tí——提提醒妈妈常常提醒我做作业要认真,细心;tǐ——体体育我最喜爱上体育课;tì——剃剃头星期天早上我陪爷爷去剃头。学生可以根据四声组不同的词,造不同的句子,这样学生既巩固了音节,又丰富了他们的词汇,既巩固了拼音,又拓宽了思维,还活跃了课堂。 (二)、“认一认”、”识字” 刚刚接触到汉字的学习,虽然只要求学生会读,会认(去除拼音后),但是汉字的学习对于一年级的学生来说,还很有些困难。特别是一些抽象的字,不能用实物来示范,讲解。这时若能在活动中学习汉字,并渗透说话训练,会怎么样呢?我们可以这样做:在教学“认

经典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. dat' --- 开始备份 BACKUP DATABASE pubs TO testBack 4、说明:创建新表 create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..) 根据已有的表创建新表: A:create table tab_new like tab_old (使用旧表创建新表) B:create table tab_new as select col1,col2… from tab_old definition 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 删除视图:drop view viewname 10、说明:几个简单的基本的sql语句 选择:select * from table1 where 范围 插入:insert into table1(field1,field2) values(value1,value2) 删除:delete from table1 where 范围 更新:update table1 set field1=value1 where 范围 查找:select * from table1 where field1 like ’%value1%’ ---like的语法很精妙,查资料! 排序:select * from table1 order by field1,field2 [desc] 总数:select count as totalcount from table1

T-SQL语言基础

第七课T-SQL语言基础 课前导读 基础知识 重点知识 基础知识 SQL语言概述。 重点知识 数据类型、常量、运算符和常用函数,读者应结合上机实战熟练相关操作。 课堂讲解 在SQL Server 2000中,企业管理器是一个功能强大、操作方便的图形化管理工具,几乎所有的操作都可以在其中完成,但它仍不能完全取代SQL语句。无论是SQL Server 2000,还是在其他的数据库中,SQL都扮演了重要的角色,要成为一名突出的数据库开发人员,首先就应该掌握SQL语言。本课将介绍SQL语言的基本概况、数据类型、常量、运算符和常用函数等内容。 SQL语言概述 数据类型 常量 运算符 常用函数 SQL语言概述 SQL是Structured Query Language(结构化查询语言)的缩写,是关系数据库使用的标准数据库查询语言。SQL在20世纪70年代由IBM开发出来,随着关系数据库管理系统的不断推出,SQL语言被广泛应用。 由于关系数据库供应商都根据需要定义了自己的SQL语法规则,例如,Microsoft使用的SQL为Transact-SQL(简称T-SQL),Oracle使用的SQL为SQL-Plus。为了统一各种数据库产品中SQL语法,ANSI(American National Standard Institute,美国国家标准局)制定了SQL语言标准。最早的ANSI标准于1986年完成,它也被叫做SQL-86,目前新的SQL标准是1992年制定的SQL-92。 很显然,各个数据库供应商不可能抛弃自己的专长来适应ANSI标准,所以业界使用的SQL语言基本上是以SQL-92为基础,在加上各供应商自己的特有语法。所以,SQL语言标准有“业界标准”和“ANSI标准”之分。 SQL语言具有“非过程性”的特点,使用SQL编写的程序不能独立运行,必须在特定的数据库管理系统中使用,这与“过程性”的高级程序设计语言,如VB、VC等不同。 SQL语言中的语言可从功能上分为3类:数据定义语言DDL(Data Definition Language)、数据处理语言DML(Data Manipulation Language)和数据控制语言DCL(Data Control Language)。 数据定义语言:用于定义或修改数据库、数据表等对象的SQL语句称为数据定义语言。例如,SQL Server中定义数据库使用的Create Database语句,定义数据表使用的Create Table语句,都是数据定义语言。 数据处理语言:用于完成数据处理的SQL语句称为数据处理语言。例如,完成数据查询的Select 语句,完成添加数据的Insert语句,完成数据修改的Update语句,都是数据处理语言。

小学语文阅读教学中如何落实语言训练

龙源期刊网 https://www.360docs.net/doc/b4402264.html, 小学语文阅读教学中如何落实语言训练 作者:杨举 来源:《中国校外教育·综合(上旬)》2014年第03期 强化语文课堂教学中的训练意识,把语文课上成语言文字训练课,已日渐成为教师们的共识。分析了语言训练的现状,探讨了阅读教学中如何落实语言训练的思路和对策。 小学语文阅读教学语言训练一、语文课的语言训练现状 《新课程标准》实施以来,语文教学在繁荣的背后出现了不少值得忧思的现象,其中一个较严重的问题就是语言训练的削弱。随着新课程的实施,很多教师重视了“自主”“合作”“探 究”“开放”等阅读形式,语言训练的内容越来越少。我们很难看到老师带领学生扎扎实实地学词写字,也很难看到老师切出大块时间进行默读、复述等训练。即使有这样的训练,也因为过分强调了自主而使得训练不到位;过分强调想怎么说就怎么说,缺乏表达的规范性;说写的交流只重视内容的反馈,忽略了语言的形式,且经常得不到时间的保证;教学中逐渐淡化了基础知识的落实和基本技能的训练。 二、语言文字训练的理念和依据 语文课要加强语言文字的训练,但不是盲目机械的,它应该有理有据。 1.依据课程标准,加强语言训练 《语文课程标准》科学地阐明了培养学生理解、运用祖国语言文字的能力是小学语文的特殊任务,是其他任何学科也代替不了的。而要培养学生理解、运用祖国语言文字的能力,就必须依据课程标准,扎扎实实地进行语言文字训练。 2.依据单元、课时教学目标、课后的练习,合理选择语言训练点 单元教学目标以简练的语言阐述了本单元的教学重点与难点,认真解读,可以帮助教师找准本单元的训练点。课时的教学目标与课后的练习,也是教师确定语言训练点的主要参照。课时教学目标中的重点与难点,是根据文本的内容、课后的练习而确定的。在教学中,教师必须要借助语言训练的手段来突破重点与难点。 3.学生是语言文字训练的主体 叶圣陶说过:“学语文主要靠学生自己读书,自己领悟。”在教学中,要突出学生的主体地位,把阅读课变成自主训练、自我提高的过程。比如,在指导学生阅读《小铃铛》时,给学生两幅图,其中一幅是故事的开头,另一幅是故事的结尾。要求学生仔细看图,展开联想,编写故事的中间部分,把首尾连接起来,使之成为完整的故事。然后,用幻灯片出示故事的开头和

经典SQL语句大全_主外键_约束

一、基础(建表、建约束、关系) 约束(Constraint)是Microsoft SQL Server 提供的自动保持数据库完整性的一种方法,定义了可输入表或表的单个列中的数据的限制条件(有关数据完整性的介绍请参见第9 章)。在SQL Server 中有5 种约束:主关键字约束(Primary Key Constraint)、外关键字约束(Foreign Key Constraint)、惟一性约束(Unique Constraint)、检查约束(Check Constraint)和缺省约束(Default Constraint)。 (最后几页介绍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. dat' --- 开始备份 BACKUP DATABASE pubs TO testBack 4、说明:创建新表 create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..) --建表、建约束、关系 create table tableok ( col1 int, col2_notnull int not null, col3_default nchar(1) not null default('男'), --默认男 col4_default datetime not null default(getdate()), --默认得到系统时间 col5_check int not null check(col5_check>=18 and col5_check<= 55),--添加约束,数据值在18到55之间 col6_check nchar(9) not null check(col6_check like 'msd0902[0-9][^ 6-9]'), --添加约束,数据值前7位必须是‘msd0902’,倒数第两位可以是0-9中任意一个数字,最后一位不是6-9之间的数字。 cola_primary nchar(5) not null primary key, --建立主键 colb_unique int unique, --唯一约束 col7_Identity int not null identity(100,1), --自增长,从100开始,每列值增加1个

实验7_T-SQL语言编程基础[1]1

实验七T-SQL语言编程基础 【实验目的与要求】 1.熟练掌握变量的定义和赋值。 2.熟练掌握各种运算符。 3.熟练掌握流程控制语句,尤其是条件语句和循环语句。 【实验内容与步骤】 一、准备实验数据 CPXS数据库包含如下三个表: CP(产品编号,产品名称,价格,库存量); XSS(客户编号,客户名称,地区,负责人,电话); CPXSB(产品编号,客户编号,销售日期,数量,销售额); 三个表结构如图2.1~图2.3所示,请在企业管理器中完成表的创建。 图2.1CP表结构

图2.2XSS表结构 图2.3CPXSB表结构 2.1数据写入操作 在企业管理器中输入如图2.4~图2.6的CP表、XSS表和CPXSB表的样本数据。 图2.4CP表的样本数据

图2.5XSS表的样本数据 图2.6CPXSB表的样本数据 10.1.变量的定义与输出 1.变量的定义和赋值 1)局部变量的声明: DECLARE@variable_name DataType 例如: declare@stuname varchar(20)--声明一个存放学员姓名的变量stuname. declare@stuseat int--声明一个存放学员座位号的变量stuseat 2)局部变量的赋值: 局部变量的赋值有两种方法: a)使用Set语句 Set@variable_name=value b)使用Select语句 Select@variable_name=value 实验: 运行以下程序段,理解变量的使用。 --局部变量的赋值与使用 declare@customer_name varchar(20)--声明变量用来存放客户名称set@customer_name='家电市场'--使用SET语句给变量赋值select* from xss where客户名称=@customer_name--通过局部变理向sql语句传递数据请给出运行结果:

课堂教学语言表达技巧

课堂教学语言表达技巧 第一节教学语言表达的要求 教学是一门艺术。 教学过程属于精神生产劳动;教学感染力的基础是教学艺术。 课堂教学艺术的三种基本功是:语言表达艺术、文字表达艺术、情态表达艺术。 学校青年教师教学基本能力培训——课堂教学语言表达考核指标(权重15%): A级:用学科的专业术语讲授;语言表达符合普通话语法规范,无语病,逻辑性强;语言干净利索,无废话,无赘语,语言连贯流畅;嗓音宏亮,吐字清晰,节奏感强,语调变化有序;语音准确。 C级:基本用学科的专业术语讲授;语言表达基本符合普通话语法规范,无语病,逻辑性较强;语言较干净利索;嗓音较响亮,吐字较清晰,语流较连贯,节奏感较好,注意语调的变化;语音较准确。 课堂教学语言表达主要训练吐字、节奏,强调语调的作用,避免粘、拖、弱、错。 一、研究教学语言表达的意义 教学语言是教学时使用的语言,是教师完成教学任务的主要手段。尽管各种现代教学技术使用得越来越多,但教学

语言的功能和作用是任何传播手段也取代不了的。教师良好的教学语言修养与表达技巧,常常使教学艺术锦上添花。相反,教师教学语言表达不清,往往导致教学的失败,直接影响教学的效果。因此,掌握良好的教学语言表达艺术应该成为教师自觉的追求。 1、教学语言表达影响教学效果 在教学中,大部分信息都是通过教学语言传递的,教师的教学素质和能力也通过语言方式表现出来,可以这样说,教学语言表达是教师全部教学素养的综合体现,它影响和制约着教师教学的效果。一般而言,教学语言的清晰度和严密度对教学效果影响较大,教师的讲解水平与学生的学习成绩成正相关。教学语言清晰度指的是语言表达得是否清晰流畅。教学语言的严密度是教师语言表达的内在逻辑性,严谨、周密、有条理的表达能够增强教学语言的说服力和论证性。 2、教学语言表达影响学生能力的发展 教学语言艺术水平的高低,不仅影响教学效果,而且影响学生的思维能力、语言能力和审美能力的发展。由于语言与思维发展有密切关系,教师的语言艺术水平反映其思维能力的高低。在教学过程中,学生通过教学语言,能探知教师的思维进程,学习思考问题的方法,体验到思维过程的快乐。一般而言,不同特点的语言对学生思维方面的影响是不同的。如概括性语言影响学生的抽象思维,生动形象的语言影响学生的形象思维,而教师的语言机智会影响学生思维的敏

数据库经典SQL语句大全

数据库经典SQL语句大全 篇一:经典SQL语句大全 下列语句部分是Mssql语句,不可以在access中使用。 SQL分类: DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE) DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT) DCL—数据控制语言(GRANT,REVOKE,COMMIT,ROLLBACK) 首先,简要介绍基础语句: 1、说明:创建数据库 CREATE DATABASE database-name 2、说明:删除数据库 drop database dbname 3、说明:备份sql server --- 创建备份数据的 device USE master EXEC sp_addumpdevice 'disk','testBack', 'c:mssql7backupMyNwind_1.dat' --- 开始备份 BACKUP DATABASE pubs TO testBack 4、说明:创建新表

create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..) 根据已有的表创建新表: A:create table tab_new like tab_old (使用旧表创建新表) B:create table tab_new as select col1,col2? from tab_old definition only 5、说明: 删除新表: 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 注:索引是不可更改的,想更改必须删除重新建。

相关文档
最新文档