山东大学经济学院数据库与程序设计复习材料Word格式文档下载.docx

上传人:b****3 文档编号:6838638 上传时间:2023-05-07 格式:DOCX 页数:73 大小:36.49KB
下载 相关 举报
山东大学经济学院数据库与程序设计复习材料Word格式文档下载.docx_第1页
第1页 / 共73页
山东大学经济学院数据库与程序设计复习材料Word格式文档下载.docx_第2页
第2页 / 共73页
山东大学经济学院数据库与程序设计复习材料Word格式文档下载.docx_第3页
第3页 / 共73页
山东大学经济学院数据库与程序设计复习材料Word格式文档下载.docx_第4页
第4页 / 共73页
山东大学经济学院数据库与程序设计复习材料Word格式文档下载.docx_第5页
第5页 / 共73页
山东大学经济学院数据库与程序设计复习材料Word格式文档下载.docx_第6页
第6页 / 共73页
山东大学经济学院数据库与程序设计复习材料Word格式文档下载.docx_第7页
第7页 / 共73页
山东大学经济学院数据库与程序设计复习材料Word格式文档下载.docx_第8页
第8页 / 共73页
山东大学经济学院数据库与程序设计复习材料Word格式文档下载.docx_第9页
第9页 / 共73页
山东大学经济学院数据库与程序设计复习材料Word格式文档下载.docx_第10页
第10页 / 共73页
山东大学经济学院数据库与程序设计复习材料Word格式文档下载.docx_第11页
第11页 / 共73页
山东大学经济学院数据库与程序设计复习材料Word格式文档下载.docx_第12页
第12页 / 共73页
山东大学经济学院数据库与程序设计复习材料Word格式文档下载.docx_第13页
第13页 / 共73页
山东大学经济学院数据库与程序设计复习材料Word格式文档下载.docx_第14页
第14页 / 共73页
山东大学经济学院数据库与程序设计复习材料Word格式文档下载.docx_第15页
第15页 / 共73页
山东大学经济学院数据库与程序设计复习材料Word格式文档下载.docx_第16页
第16页 / 共73页
山东大学经济学院数据库与程序设计复习材料Word格式文档下载.docx_第17页
第17页 / 共73页
山东大学经济学院数据库与程序设计复习材料Word格式文档下载.docx_第18页
第18页 / 共73页
山东大学经济学院数据库与程序设计复习材料Word格式文档下载.docx_第19页
第19页 / 共73页
山东大学经济学院数据库与程序设计复习材料Word格式文档下载.docx_第20页
第20页 / 共73页
亲,该文档总共73页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

山东大学经济学院数据库与程序设计复习材料Word格式文档下载.docx

《山东大学经济学院数据库与程序设计复习材料Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《山东大学经济学院数据库与程序设计复习材料Word格式文档下载.docx(73页珍藏版)》请在冰点文库上搜索。

山东大学经济学院数据库与程序设计复习材料Word格式文档下载.docx

set@yz=100*0.12+(@w-100)*0.05

print'

邮件的重量是:

+cast(@wasvarchar(20))+'

克'

邮费是:

+cast(@yzasvarchar(20))+'

元'

输入x的值,x>

=1时,输出1,否则输出-1

declare@xint

set@x=-0.5

if@x>

=1

print'

1'

-1'

=1时,输出1,0<

=x<

1时,输出0,否则输出-1.

declare@xfloat

set@x=2

else

=0

0'

break和continue例题

declare@aint,@bint

SELECT@a=1,@b=34

while@a<

10

begin

SELECT@b=@b+1

print('

a='

+convert(varchar(10),@a)+'

b='

+convert(varchar(10),@b))

SELECT@a=@a+1

/*

if@b>

38

break

continue

*/

test'

end

在查询里面执行上面的语句和把注释去再运行对比就知道了有continue时print('

)不会执行

第四周函数例题

printlen(4+2)

printlen('

4+2'

I'

maboy'

'

a'

山大'

printdatalength('

prtintdatalength('

declare@tnochar(10)

set@tno='

01234567'

printdatalength(@tno)

printlen(@tno)

declare@tnovarchar(10)

declare@tnonchar(10)

declare@tnonvarchar(10)

例2-1

DECLARE@tnonchar(10),@tnamenvarchar(20),@tdeptnvarchar(30);

SELECT@tno=N'

012567'

@tname=N'

ZhangHua'

@tdept=N'

Management'

PRINT'

No.:

+@tno

Name:

+@tname

Deptment:

+@tdept+'

School'

例2位运算符及表达式举例

32进制00000011

92进制00001001

select3&

9and运算最后一位都是1结果为1

select3|9or运算倒数1、2、4位都是1结果为11

select3^9两者不相同(1与0)结果才是1,相同结果为0,所以结果为1010,也就是10

字符串函数

select'

a'

+space

(2)+'

b'

selectreplicate('

8'

3),replicate('

P'

4)888pppp

DECLARE@nINT

SET@n=1

WHILE@n<

=6

BEGIN

PRINTSPACE(11-@n)+REPLICATE('

*'

@N)

SET@n=@n+1

END

*

**

***

****

*****

******

第五周函数例题

printabs(4)

selectacos(0),acos

(1)

selectasin(0),asin

(1)

printatan(0)

selectceiling(2.2),ceiling(-2.2)

selectsin(0),sin(pi()/2),cos(pi()/2)注意函数pi()

selectfloor(2.2),floor(-2.2)

printexp

(2)

printlog(2.2)

printlog10(10)

printpower(3,2)

selectradians(70),radians(110),radians(120)注意取整数,不四舍五入

printrand()此函数为不确定函数

printround(3.1246,3)注意小数取位,对小数点后第四位四舍五入,第三位后的数全部变为0

printround(3.1246,2)注意小数取位

printround(3.1,2)小数位不足,数值保持不变

printsquare

(2)

printsqrt(4)

printsquare(3)

printascii('

asd'

)97

printchar(66)B

printcharindex('

as'

'

bbasd'

)3

printleft('

ab山东大学'

4)ab山东

printreplace('

abcdefg'

cd'

kkkk'

)abkkkkefg

printright('

4)山东大学

q'

+ltrim('

abc'

)qabc

printrtrim('

abc'

)+'

abcq

printspace(4)

printstr(3.123567,8,3)3.124

printsubstring('

山东大学经济学院'

3,2)结果为:

大学不是:

printunicode('

ASD'

)A的ASCII码值65

printupper('

abcd'

),lower('

ACD'

第六周函数例题

1、计算1!

+2!

+3!

+……+10!

declare@iint,@sint,@pint

set@p=1

=10

set@p=@p*@i

set@s=@s+@p

print@s

4037913

2、计算m和n两个正整数的最大公约数和最小公倍数(分m>

=n、m和n大小不确定两种情况)

当m>

n时,编程结果

declare@mint,@nint,@rint,@m1int,@n1int

set@m=216

set@n=14

set@m1=@m

set@n1=@n

set@r=@m1%@n1

while@r!

set@m1=@n1

set@n1=@r

set@r=@m1%@n1

printstr(@m)+'

和'

+str(@n)+'

的最大公约数为:

+str(@n1)

的最小公倍数为:

+str(@m*@n/@n1)

216和16的最大公约数为:

8

216和16的最小公倍数为:

432

当m和n大小不确定时,编程结果。

declare@mint,@nint,@tint,@rint,@m1int,@n1int

set@m=16

set@n=216

if@m<

@n

set@t=@m

set@m=@n

set@n=@t

3、找出0~999之间所有的等于其各位数字立方和的数。

declare@nint,@aint,@bint,@cint

set@n=0

while@n<

=999

set@a=@n/100

set@b=(@n-100*@a)/10

set@c=@n-100*@a-10*@b

ifpower(@a,3)+power(@b,3)+power(@c,3)=@n

print@n

set@n=@n+1

1

153

370

371

407

4、二重循环举例

公鸡5元一只,母鸡3元一只,小鸡1元3只,百元买百鸡,问公鸡、母鸡、小鸡各多少只?

Declare@xint,@yint

Set@x=1

While@x<

=20

Begin

Set@y=1

While@y<

=33

Begin

If5*@x+3*@y+(100-@x-@y)/3=100

Select@x,@y,100-@x-@y

Set@y=@y+1

End

Set@x=@x+1

本题中结果有不符合实际的情况。

改进

If5*@x+3*@y+(100-@x-@y)/3=100and(100-@x-@y)%3=0

Select@xas公鸡,@yas母鸡,100-@x-@yas小鸡

第七周函数例题

printdateadd(yy,5,getdate())

printdateadd(qq,5,getdate())加一个季度

printdateadd(mm,5,getdate())

printdateadd(ww,5,getdate())

printdateadd(dd,5,getdate())

printdatediff(dd,'

20110903'

getdate())

printdatediff(ww,'

20100917'

printdatediff(mm,'

printdatediff(yy,'

其中2010年9月17日的有效格式为:

、'

09/17/2010'

0917,2010'

、'

09,172010'

09172010'

根据上面的函数,假设2012年7月1日放暑假,计算还有多少天放暑假

printdatename(dd,'

20110501'

printdatename(mm,'

printdatename(yy,'

比较以下的区别

)+3前一个是字符串+数字字符串+数字为数字型

3'

后一个是字符串+字符串

printdatepart(dd,'

printdatepart(mm,'

printdatepart(yy,'

printdatepart(dy,'

)一年的第几天

)+3运算结果为数字型

运算结果为数字型

printday(getedate())

printmonth(getedate())

printyear(getedate())

printcast('

asnchar(10))+'

20110501q

asnvarchar(10))+'

20110501q

printcast(3asnchar

(2))+'

3q

printconvert(varchar(20),getdate(),21)

printconvert(varchar(20),getdate())

printconvert(varchar(20),3)

printday(getdate())

printmonth(getdate())

printyear(getdate())

看看下列的命令执行结果是多少,要会分析

printday(getdate()+3)

printmonth(getdate()+3)

printyear(getdate()))+3

第7—9周课本例题及补充

例1

Createdatabasestudentonprimary(name=student,filename='

d:

\1234\student.mdf'

size=3,maxsize=unlimited,filegrowth=10%)

Logon(name=student_log,filename='

\1234\student_log.ldf'

size=4,maxsize=unlimited,filegrowth=10%)

注意扩展名不能省略

例2

alterdatabasestudentaddfile(name=student_1,filename='

\1234\student_1.ndf'

size=5MB,maxsize=100MB,filegrowth=5MB)

go

alterdatabasestudentaddlogfile(name=student_1_log,filename='

\1234\student_1_log.ldf'

注意扩展名不能省略,go可以去掉

例3

Usestudent

Go

Alterdatabasestudentmodifyfile(name=student_1,size=20MB)

注意必须使用逻辑名称name

例4

Alterdatabasestudentremovefilestudent_1.ndf

应该去掉.ndf才对,如果是删除日志文件,文件名称为student_1_log

例5

Execsp_renamedb'

student'

studentls'

例6

Alterdatabasestudentlsmodifyname=student

删除数据库(注意一般不要删除)

Dropdatabasestudent

例10

Executesp_helpstudent

例12

Altertablecoursealtercolumncnamenvarchar(50)

例13

Altertablecourseaddpre_cnonvarchar(3)null

例14

Altertablestudentdropcolumnls

例16

Droptablesclyls

例18

Insertintocoursevalues('

c01'

N'

大学计算机基础'

3,null)

例19

Insertintocourse(cname,pre_cno,ccredit,cno,csemester)values(N'

C语言'

4,'

c02'

2'

建立student数据库

Student表命令建立法

Createtablestudent(snonvarchar(7)notnullprimarykey,snamenvarchar(10)notnull,ssexnvarchar

(1),sdeptnvarchar(20)notnull,shifobit,sresumetext,sbirthdaydatetime)

使用t-sql语句创建course表结构

Createtablecourse(cnonvarchar(3)notnullprimarykey,cnamenvarchar(30)notnullunique,csemesternvarchar

(1),ccreditintnotnull,pre_cnonvarchar(3))

有关SC表的建立办法

例9:

方法一

Createtablesc6(snonvarchar(7)notnullforeignkeyreferencesstudent(sno),cnonvarchar(3)notnullforeignkeyreferencescourse(cno),gradedecimal(4,1)notnullcheck(

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 工作范文 > 行政公文

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2