SQL编程自学+必学_第1页
SQL编程自学+必学_第2页
SQL编程自学+必学_第3页
SQL编程自学+必学_第4页
SQL编程自学+必学_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

T-SQL编程T-SQL编程Transact-SQL编程概述Transact—SQL是结构化查询语言(SQL)的增强版本,且只能在SQLSERVER上使用。它是用来让应用程式与SQLServer沟通的主要语言。T-SQL提供标准SQL的DDL和DML功能,加上延伸的函数、系统预存程序以及程式设计结构(例如IF和WHILE)让程式设计更有弹性。T-SQL的功能随著新版的SQLServer而持续成长。

目标变量注释符与运算符常用命令流程控制T-SQL编程示例变量数据在内存中存储可以变化的量叫变量。Transact-SQL可以使用两种变量:局部变量全局变量局部变量局部变量是用户可自定义的变量,它的作用范围仅在程序内部。声明局部变量DECLARE@局部变量名数据类型[,…n]declare@xint为局部变量赋值set@x=500select@x=max(score)fromscore全局变量全局变量是SQLServer系统内部事先定义好的变量,不用用户参与定义,对用户而言,其作用范围并不局限于某一程序,而是任何程序均可随时调用。全局变量通常用于存储一些SQLServer的配置设定值和效能统计数据。全局变量的名称都是以@@开头的。常用的全局全量@@language

当前使用的语言的名称@@IDENTITY

返回最后插入的标识值@@ROWCOUNT

返回受上一语句影响的行数@@VERSION

返回SQLServer当前安装的日期、版本和处理器类型注释符与运算符注释符单行注释:--多行注释:/*…*/运算符算术运算符:+-*/%赋值运算符:=比较运算符:><>=<==<>逻辑运算符:ALLANDANYBETWEENEXISTSINLIKENOTOR常用命令PRINT将用户定义的消息返回客户端USE将数据库上下文更改为指定数据库GO用信号通知SQLServer一批T-SQL语句的结束PR芽IN侍T命令PR肾IN旁T:命令笑用于摧在指搁定设约备上勾显示割信息来。可以醒输出南的数缠据类每型只巡寿有:ch原ar、nc田ha欲r、va劝rc号ha浴r、nv殊ar喝ch焰ar以及义全局净变量@@张VE原RS缺IO叨N等。PR灵IN犬T命令串的语胳句如环下:PR火IN极T启'a气ny粥A灿SC补II框t倒ex颗t'预|订@l存oc令al离_v章ar敬ia辞bl忆e误|@辱@F荣UN僵CT老IO傅N冲|饿st订ri访ng计_e享xp固r说明师:'a套ny胆A仅SC辜II版t赏ex皂t':文蔬本或哀字符屋串。@l筒oc舱al路_v侄ar弹ia屠bl父e:字门符类付型的峡局部自变量影。@@迅FU圈NC坐TI牺ON:返英回字厘符串愿结果菠的函普数。st黄ri节ng怕_e彻xp门r:字黎符串宅表达可式,递最长虫为80困00个字去符。批一个物批是故由一镇条或手多条T-冠SQ老L语句婶组成定的语沾句集您,这湾些语马句一完起提歪交并廉作为孔一个础组来蹄执行匀。SQ杜L患Se狐rv菊er将批苗中的骗语句科作为胆一个芽整体磨编译客为一裳个执喝行计锻划。撒因为膛批中讽的语歼句是喘一起仪提交倘给服皇务器携的,粪所以梨可以岸节省彻系统宽开销需。在查装询分良析器锄中,鸭可以坛用GO命令导标志今一个启批的康结束仓。GO不是槽一个访执行匹语句蹦,是役通知持查询谊分析率器有秒多少抖语句叔要包毛含在训当前借的批狗中。棒查询霸分析布器将娃两个GO之间模的语霉句组杯成一唐个字肝符串弄交给揪服务设器去绑执行膀。注意瞒:如果么在一龙个批指处理叹中,富某条威语句逗存在语法拌错误,SQ袍L桑Se筝rv驴er将不煤执行把批处阵理中道的任向何语融句。流程兔控制流程浩控制遗语句眯是用钞来控骆制程诉序执助行流葛程的坚语句永。使深用流蛙程控区制语起句可蜂以提穴高编附程语搁言的锋处理名能力菌。与匹程序皂设计勉语言滚(如C语言欢)一吼样,Tr辛an潜sa怪ct岗-S揪QL语言厕提供尖的流腐程控奴制语省句如面下表刊所示滴:BEGIN…ENDIF…ELSECASEWHILECONTINUEBREAKRETURNGOTOWAITFORBE酬GI熊N…EN叉D包括谋一系蝇列的Tr啊an疤sa沟ct造-S写QL语句晴,使咱得可推以执潜行一金组Tr喊an驻sa各ct求-S谈QL语句脾。语法晒:BE示GI排Nsq件l_膜st义at辣em眼en画tEN摇D参数饮:sq症l_耀st割at掩em盯en啦t是任这何有脂效的Tr谦an司sa丘ct姓-S轨QL语句担或以发语句布块定绪义的曲语句刮分组考。BE谱GI晴N.梅..津EN冻D嵌套端使用BE瓶GI浩N.砍..搞EN葵D语句购可以患嵌套争使用占。例如曾:BE维GI洞NDE惜CL渣AR厚E钟@M圈yV粪ar柳f乏lo修atSE寸T侄@M蔬yV吗ar毛=旱4临56阳.2叔56尖;BE益GI伐NPR码IN属T泄'变量@M讽yV松ar的值防为:';PR来IN创T涛CA核ST父(@捷My唇Va省r纸AS炭v辰ar炸ch暮ar包(1离2)禁);EN希D;EN宾D滴;IF…EL挠SE在执瓜行Tr谣an剧sa摇ct预-S支QL语句呆时强水加条寒件。渣如果术条件沫满足识(布四尔表钱达式伞返回TR辈UE时)申,则滑在IF关键孕字及脆其条恨件之游后执液行Tr撞an福sa粘ct捧-S茎QL语句唇。可秀选的EL扩SE关键塌字引倘入备览用的Tr逢an女sa视ct爽-S宁QL语句倍,当怠不满葛足IF条件包时(扛布尔窄表达冰式返披回FA己LS威E),钻就执吨行这察个语浙句。语法其:IFBo斤ol亩ea飘n_千ex恰pr块es俩si锡onsq球l_四st底at伟em件en岩t[EL度SEsq急l_鹊st成at主em脚en鹅t]参数婆:Bo矛ol框ea书n_为ex姻pr柱es烧si乡丰on:是返皆回TR将UE或FA软LS描E的表姿达式势。sq纪l_锹st猴at仅em慌en由t:是任嗽何有陶效的Tr立an承sa歌ct掩-S呈QL语句然或以虚语句擦块定椅义的仅语句挣分组原。例如轨:IF怠e贼xi眯st希s(浆SE伪LE脉CT值*桌F呼RO由M成绩斤表WH值ER捎E学期=1慢0)SE迟LE弹CT殃*纠F疫RO禾M成绩鞠表WH府ER氏E成绩休编号=1士0EL痰SEPR阴IN殿T‘没有卫这条科记录…’CA势SE计算葛条件屠列表园并返筑回多缘瑞个可齿能结周果表废达式塞之一治。语法咏:CA碧SEin闷pu狱t_棋ex繁pr骑es破si御onWH蹲ENwh与en狡_e睡xp泽re念ss爽io哈nTH杏ENre膏su笼lt厉_e驱xp汗re照ss火io努n[症..炮.n][EL概SEel挥se巩_r桂es距ul存t_炒ex愉pr句es胸si唐on]EN至D例如欣:SE故LE战CT成绩舅编号,学号,课程腐代号,成绩飘状况=CA疮SEWH厨EN课程芽成绩>9茶0菜TH奥EN鼻'优秀搬!'WH蔑EN课程佳成绩>8忍0查TH回EN猜'良!'WH菜EN课程奖成绩>7都0继TH飞EN奏'一般骆!'WH梦EN课程甩成绩>6恶0破TH锈EN肯'及格柏!'EL戒SE戴'不及歼格!'EN状DFR舌OM成绩魂表“成绩红状况”不是窑表中苏的字掉段WH男IL煌E…CO棉NT继IN唤UE…BR扰EA快K设置倾重复掏执行SQ欧L语句模或语再句块顽的条优件。踢只要初指定毅的条效件为贞真,赌就重冻复执穴行语葛句。弦可以裁使用BR兽EA级K和CO逼NT刃IN贴UE关键摘字在扎循环叶内部苗控制WH教IL谷E循环侄中语裁句的辈执行烟。语法足:WH黎IL漏EBo沾ol言ea捆n_笑ex葵pr呜es择si金onsq轻l_笨st中at贼em卡en皂t[BR椅EA煮K][CO剑NT托IN戚UE]例如:DE壳CL党AR锦E波@x唇i争ntSE撕T充@x吩=0WH蹲IL静E颤@x衡<3BE住GI钳NSE砌T岭@x浅=@烂x+枯1PR识IN马T渣'x缴='养+C听ON岸VE创RT藏(c纲ha险r(醉1)亏,@掏x)EN径DRE默TU掠RN从查挪询或瞧过程护中无筛条件戒退出柱。RE淋TU饲RN即时林且完刃全,垄可在席任何盆时候秒用于仆从过痛程、替批处糟理或喷语句新块中误退出佩。不敲执行脊位于RE悉TU号RN之后阶的语习句。语法阳:RE羊TU唇RN[in杂te行ge葱r_胁ex框pr辞es蚕si门on]参数荒:in背te戏ge旦r_昼ex此pr灶es委si使on是返范回的获整型速值。WA由IT的FO虹R指定暑触发躬语句贝块、酬存储锋过程常或事棒务执能行的奸时间梦、时沟间间紧隔或抄事件签。语法届:WA防IT天FO粪R{DE朗LA描Y'ti竟me'|TI兴ME'ti逮me'}参数DE微LA军Y指示SQ反LS鸣er陈ve箭r一直眨等到寺指定锐的时母间过荐去,愿最长伯可达24小时算。TI严ME指示SQ霞LS捐er逐ve讲r等待捏到指运定时中间。例如圆:延迟30秒钟种执行呀查询伸命令膀。WA甲IT佣FO蛙R脏DE臣LA漂Y凝'0妥0:同00茶:3应0'SE载LE糟CT领*怕F擦RO柿M成绩雷表在时仆刻21傅:2选0:爽00时执灯行查帮询命索令。WA楚IT猪FO久R理TI满ME红'2康1:缴20疾:0毙0'SE蜘LE究CT首*防F遗RO粗M成绩姻表总结变量注释垮符与隙运算女符常用唤命令流程萝控制T-水SQ杀L编程针示例上机翁作业造:T-宫SQ庭L编程丘示例将课哀件上柔的所挺有SQ害L代码堡练习宵一遍1、输业出所尼有学无生的报最高专分和孤最低束分2、学哗生表麻中的'路人格甲'是否项是润邪年出乏生的3、计基算1至10舍0之间败的和4、显锐示'王五'的'J尾av蜜a'成绩奇是否圣及格5、30秒后箩显示肤学生食表的娇信息家庭惨作业插:涉及滤到的柳表如乘下:创建适学生渐信息坝表,萄包含感有:汁学号生、姓榜名、缘瑞性别敬、年夫龄和智民族脱等字侍段;创建凭学生粘成绩典表,筑包含举有学婚号和盾成绩昏两个她字段完成匹以下女练习灾:1、打泳印出叉学号裕为‘S0挥2’的学挥生的掉年龄打(要害求以爹变量锡的形月式输脆出)2、查锹询所劫有年博龄大电于'S栗03犹'的学烘生信岸息3、打谋印出st损uI粘nf望o表中事学生笛的平私均年扬龄,疼如果撇平均堆年龄历大于22,则御输出OK,否鹅则输荷出NO4、循待环增咏加学美生信笋息表足中每悲个人请的年冻龄,啦直到菠每个器人的壤年龄驴都大释于等扒于25为止下面转是上膊机作印业的防参考丽代码1、输狐出所断有学燃生的航最高评分和消最低捎分de樱cl投ar寒e挤@m裁ax既r卫ea庸l,夺@m象in拨r锅ea重lse泊le荣ct戒@遇ma掏x=串ma疾x(僻sc矿or条e)根f马ro傅m吧sc袭or串ese越le良ct朴@炊mi笨n=窝mi牵n(盟sc坡or设e)概f键ro歼m锐sc释or么epr沃in豆t蚕'最高蜡分是'+兴lt雨ri达m(浴st位r(节@m湾ax拣))pr狸in严t讨'最低辅分是'+则lt泰ri喜m(鹿st栏r(壮@m消in读))2、学亲生表副中的'路人催甲'是否透是润傍年出脆生de康cl布ar蛙e岸@y幸ea侦r巴in末tse帽le韵ct停@象ye脸ar吐=y携ea泰r(智bi钱rt桥hd咱ay捡)签fr独om勇s谜tu牌de叶nt甚w桨he系re吓n忍am添e=落'路人宗甲'if曲(@倡ye配ar秃%4意=0不a锈nd匪@脖ye丛ar授%1虏00井!=箩0酒or充@蹦ye悉ar需%4叔00达=0岗)pr布in晓t解'路人能甲是注润年垂出生劲的'el篮sepr桌in语t牢'路人源甲不裙是润监年出短生的'3、计问算1至10豆0之间啦的和de罢cl霸ar健e叉@i煎i壳nt括,@弊su屿m蚁in撒tse信t睛@i请=1se孕t昆@s驳um售=0wh刚il偷e(挖@i煎<=蓬10享0)be耗gi冒nse武t怕@s责um钉=@告su黎m+伞@ise限t正@i困=@尾i+蜡1en往dpr俯in箱t脖@s杀um4、显漫示'王五'的'J旁av膛a'成绩赌是否交及格de翠cl参ar点e徐@s凤_i吉d找va鱼rc翅ha攀r(炮20绪)de未cl无ar忆e

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论