今天学习啦所谓的高级语言啦

今天又回到啦SQL Servel语言的学习啦,嘿嘿,感觉这些都是我迫不及待要学习的啦,在这学习的每一天感觉好多的知识都是我乐意去学习的啦,我来到这里就是因为知道自己有太多不会的东西啦,所以每当接受新的知识时间感觉自己可以很轻松的学习啦,不是逼迫的自己的感觉真好啦,我在我们上完课后练习啦一遍,然后感觉对着电脑时间太长啦,于是就出去飘啦一圈休息一下下啦。学习固然重要,但是疲劳的感觉好难受啦,我们还是要学会调节下自己的状态啦,当然,以后工作啦也会是这样的吧,当有项目工作啦,我们就忘记啦休息吧,或许那时间正在焦虑的思考怎么结局问题忘记啦休息,嘿嘿,一定要记得给自己片刻停留的气息,让自己心晴气爽啦。好啦,下面总结下我今天学习的数据库系统操作的高级语言啦。

一.局部变量与全局变量的定义

我们之前已经学习了C#的基础,那么在Sql中局部变量的定义和C#中是一样的啦,只是定义的格式区别很大啦,下面就写下Sql中局部变量的定义啦

--局部变量
declare @str char(20)       --定义参数
select @str =‘hello word‘   --用select给参数赋值
set @str =‘hell‘            --或者用set给参数赋值
print @str                  --输出@str的值

--全局变量
print @@version             --全局变量一般我们使用系统里面给我们写好的

二.流程控制语句的使用

1.条件判断语句(if...else...)

--条件判断语句(if...else...)
--某地到青岛的邮政里程为1043,通过邮政局向青岛城区交 "特征专递"邮件, 24小时之内达到。计费每克0.12元
--但超过100克,超过数量每克0.05元,算出邮费
 declare @a real, @b int
 set @a=120
 if @a <100
 begin                   --begin end 相当于C#中的花括号的使用方法
    set @[email protected]*0.12
 end
 else
 begin
    set @b=0.12*100+(@a-100)*0.05
 end
 print‘距离是‘++cast(@a as varchar(50))
 print ‘邮费是‘+cast(@b as varchar(50))

--定义一个用户名和密码,判断是否正确
declare @user varchar(20),@pwd varchar(20)
select @user =‘admin‘,@pwd =‘admin‘
if @user=‘zhangsan‘
begin
      if @pwd=‘123‘
      print ‘用户名或者密码不正确,请重新输入‘
      else
      print ‘密码错误‘
end
else if @user=‘lisi‘
begin
      if @pwd=‘123‘
      print ‘用户名或者密码不正确,请重新输入‘
      else
      print ‘密码错误‘
end
else if @user=‘admin‘
begin
      if @pwd=‘admin‘
      print ‘输入正确‘
      else
      print ‘密码错误‘
end
else
begin
       set @pwd=‘密码不正确‘
end
print @pwd 

2.while表达式

--while 条件表达式
  --begin
  --命令行或程序
  --end

  --求1-100的和
   declare @x int,@sum int
   select @x=1,@sum=0
   while @x>0 and @x<=100
   begin
       set @[email protected]+@x
       set @[email protected]+1
   end
   print ‘1-100的和:‘+cast(@sum as varchar(20))

3.关键字break的使用

 --break的用法
   declare @i int,@sum0 int
   select @i=1,@sum0=0
   while @i>0 and @i<=100
   begin
       set @[email protected]+@i
       set @[email protected]+1
       if @i>50          --当i>50时间跳出当前循环
       break
   end
   print ‘1-50的和:‘+cast(@sum0 as varchar(20))

4.关键字continue的使用方法

 --continue的用法
   declare @num int,@sum1 int
   select @num=1,@sum1=0
   while @num>0 and @num<=100
   begin
        set @num [email protected]+1
        if @num%2=1
        continue
        else
        set @[email protected]+@num
   end
   print ‘1-100间的偶数的和:‘+cast(@sum1 as varchar(20))

5.case语句的使用

--case语句
 --case [表达式]
 --   when  条件表达式1 then  结果1
 --   when  条件表达式2  then  结果2
 --  ........
 --  else
 --    结果表达式n
 --  end

--输入学生的成绩 1-100之间,否则就会提示"您输入的成绩不对,成绩应该在0-100之间"
--成绩        评语
--90-100     优秀
--80-90      优良
--70-80      中等
--60-70      及格
--60分一下    不及格

declare @score float,@str varchar(50)
select @score=53,@str=
case
    when @score>100 or @score<0 then‘您输入的成绩格式不对‘
    when @score>=60 and @score<70 then ‘及格‘
    when @score>=70 and @score<80 then ‘中等‘
    when @score>=80 and @score<90 then ‘优良‘
    when @score>=90 and @score<100 then ‘优秀‘
    else
    ‘不及格‘
end
print ‘评语是:‘+@str

--查询不同仓库的平均工资
select *,不同仓库的平均工资=
case
     when 仓库号=‘wh1‘ then(select AVG(工资) from 职工 where 仓库号=‘wh1‘)   --在then后面是查询出平均工资
     when 仓库号=‘wh2‘ then(select AVG(工资) from 职工 where 仓库号=‘wh2‘) --即在通过仓库号查询各个仓库号的平均工资
     when 仓库号=‘wh3‘ then(select AVG(工资) from 职工 where 仓库号=‘wh3‘)
     when 仓库号=‘wh4‘ then(select AVG(工资) from 职工 where 仓库号=‘wh4‘)
end
from 职工

三.视图的创建删除以及修改

create view v1
as
select 仓库号,城市,面积 from 仓库

create view v2
as
select 姓名,工资 from 职工 where 工资>1800

create view v3
as
select 仓库.仓库号,仓库.城市,仓库.面积,仓库.创建时间,职工.姓名,职工.性别,职工.工资 from 仓库,职工 where 仓库.仓库号=职工.仓库号

alter view v2                    --修改视图
as
select 仓库.仓库号,城市,面积 from 仓库

drop view v3   --删除视图

update test set 面积=面积+88 where 仓库号=‘wh1‘   --修改视图

delete test where 仓库号=‘wh1‘   

四.存储过程的操作

--存贮过程
--create procedure name  --创建存储过程
--@parms....
--as
--begin
--end

---execute name 参数1  参数2   --执行存储过程
--1.
create procedure proc_sql
as
begin
declare @i int
set @i=0;
while(@i<10)
    begin
    print char(ascii(‘a‘)[email protected])+‘的ascii码‘+cast(ascii(‘a‘)[email protected] as varchar(50))
    set @[email protected]+1
    end
end
excute proc_sql

--2.
--无参数的存贮过程执行
create procedure proc2
as
begin
  select * from 职工 where 工资>2000
end

execute proc2

--有参数的存贮过程
--3.求三个数中的最大值
create procedure proc4
@x1 int,@x2 int,@x3 int
as
begin
declare @max int
if @x1>@x2
    set @max=@x1
else
    set @max=@x2
if  @x3>@max
    set @max=@x3

 print ‘3个数字中的最大值是‘+cast(@max as varchar(50))
end
execute proc4 15,18,39

--3.
create procedure sq7
@mingz int,@maxgz int
as
select * from 职工 where 工资 between @mingz and  @maxgz
execute sq7 1500,2000

4.
create procedure  sq8
@cangkuhao varchar(50),
@maxgz int output,
@avggz real output
as
begin
select * from 职工 where 仓库号=@cangkuhao
select @maxgz=MAX(工资)from 职工 where 仓库号=@cangkuhao
select @avggz=AVG(工资) from 职工 where 仓库号=@cangkuhao
end

declare @x1 int,@x2 real
execute sq8 ‘wh2‘,@x1 output,@x2 output
select @x1 as wh2职工最大工资,@x2 as wh2职工平均工资

execute sp_rename sq7,rocky    --重命名

五.触发器

--触发器是一种特殊的存贮过程,他就相当于c#中的事件触发器主要是通过事件触发而被执行的
--create trigger 触发器名称 on 表 for insert[update,delete] as
-- begin
--程序块
--end
create trigger rockyR on 仓库 for update   --创建
as
begin
   insert into 仓库(仓库号,城市,面积,创建时间) values(‘wh01‘,‘郑州‘,1800,‘2014-12-12‘),(‘wh02‘,‘北京‘,1700,‘2014-12-13‘),(‘wh03‘,‘上海‘,1600,‘2014-12-15‘)
end

update 仓库 set 面积=面积-10 where 仓库号=‘wh2‘     --修改

create trigger rk on 仓库 for insert,update,delete
as
begin
   execute xp_sendmail ‘[email protected]‘
end

--alter trigger rockyR on 表名 for insert[update,delete]   --修改触发器

drop trigger rk   --删除触发器

六.索引的操作

在sql中,讲SQL语句组成一个事务,其目的是保证这一组sql语句能够得到可靠地执行,如果系统中出现了错误阻碍sql的执行,并且只要其中任何一条语句出现错误,事务中所有的sql语句都不会被执行,即要么全部sql执行,要么全不执行,即创建索引的格式如下:

create unique index unique_index on 仓库(仓库号)

好啦今天就总结到这里啦,嘿嘿,今天的比较多吧,但是还是要好好练习的啦,嘿嘿。

时间: 2024-12-21 06:48:39

今天学习啦所谓的高级语言啦的相关文章

机器语言、汇编语言、高级语言

汇编和高级语言的区别: 首先,汇编语言直接对应机器语言,不同类型电脑不能兼容.有些高级语言是在机器语言上开发的面向对象(用户等)的高层次语言. 因为高级语言要编译成机器语言才能运行,高级语言是编一些应用软件,与硬件不直接打交道的语言,比较直接,易于常人操作.一般人都用高级语言编写程序应用程序就是由机器语言组成的,机器语言可以对应汇编语言.其次,汇编语言的主要特点:汇编语言程序与处理器指令系统密切相关程序员可直接.有效地控制系统硬件形成的可执行文件运行速度快.占用主存容量少汇编语言与处理器密切相关

汇编学习笔记01(基础知识)

自己在学习C语言的时候, 有的时候碰到自己理解不了的技术点的话, 就无从下手了, 但是这些技术点如果用汇编来理解的话, 可能非常好理解, 也更容易让大家理解, 所以感觉汇编是很强大的, 对我们学习一些其它的高级语言也很有用, 所以希望自己可以对伟大的汇编语言有一定的了解和认知, 对计算机的思维方式也有更进一步的认识, 对自己的编码习惯有一个好的影响或者改变, 同时对自己的能力有些提高吧. 1. 我们首先要知道什么是机器语言? 也就是机器指令的集合, 机器指令也就是一台机器可以正确执行的命令. 机

计算机编程之高级语言

高级语言(High-level programming language)相对于机器语言(machine language,是一种指令集的体系.这种指令集,称机器码(machine code),是电脑的CPU可直接解读的数据)而言.是高度封装了的编程语言,与低级语言相对.它是以人类的日常语言为基础的一种编程语言,使用一般人易于接受的文字来表示(例如汉字.不规则英文或其他外语),从而使程序编写员编写更容易,亦有较高的可读性,以方便对电脑认知较浅的人亦可以大概明白其内容.由于早期电脑业的发展主要在美

高级语言程序设计

计算机语言具有高级语言和低级语言之分.而高级语言又主要是相对于汇编语言而言的,它是较接近自然语言和数学公式的编程,基本脱离了机器的硬件系统,用人们更易理解的方式编写程序. 高级语言并不是特指的某一种具体的语言,而是包括很多编程语言,如目前流行的java,c,c++,C#,pascal,python,lisp,prolog,FoxPro,VC,易语言等等,这些语言的语法.命令格式都不相同. 低级语言分机器语言(二进制语言)和汇编语言(符号语言),这两种语言都是面向机器的语言,和具体机器的指令系统密

Python实现各种排序算法的代码示例总结

Python实现各种排序算法的代码示例总结 作者:Donald Knuth 字体:[增加 减小] 类型:转载 时间:2015-12-11我要评论 这篇文章主要介绍了Python实现各种排序算法的代码示例总结,其实Python是非常好的算法入门学习时的配套高级语言,需要的朋友可以参考下 在Python实践中,我们往往遇到排序问题,比如在对搜索结果打分的排序(没有排序就没有Google等搜索引擎的存在),当然,这样的例子数不胜数.<数据结构>也会花大量篇幅讲解排序.之前一段时间,由于需要,我复习了

深入理解计算机系统(3.1)------汇编语言和机器语言

<深入理解计算机系统>第三章--程序的机器级表示.作者首先讲解了汇编代码和机器代码的关系,阐述了汇编承上启下的作用:接着从机器语言IA32着手,分别讲述了如何存储数据.如何访问数据.如何完成运算以及如何进行跳转.通过这些步骤,又告诉了我们分支语句.循环语句是怎么完成的,函数调用.栈帧结构以及递归过程.最后能通过编译器产生的汇编代码表示,我们要了解编译器和它的优化能力,知道编译器能为我们完成哪些工作. 而这篇博客我们将讲解汇编和机器代码的关系.首先下面一张图是C语言.汇编语言以及翻译过的机器语言

swift基础:第一部分:基本数据类型及结构

首先谈点开心的:今天是周二,广州的天气格外明朗,早上上班的心情也不一样,最值得高兴事,很快到五一劳动节了,说到劳动节,放假是吧.你懂的.再来谈谈我上周的工作总结,上周可以说是黑轮压城城欲摧,甲光向日金鳞开,上周公司计划在一周之内完成项目上线,可能会有人问,一周之内怎么可能完成一个项目,呵呵,一周内理论而言不可能完成一个项目,我们只是在老板的要求下做出一个半成品来,发布上线,看看用户对我们的软件的反馈和体验方面的建议.希望用户能给我们更多的建议,我们才能将我们的产品做得更优,更至.回过头来再来说说

汇编语言入门:debug调试工具

对于大学生来说,基本都需要学习高级编程语言,相信大多数理工类大学生都知道c++.c语言.Java语言等高级语言,也知道机器语言这个最低级的语言,但是却有很多都不知道汇编语言,或许听过这个名字,却不知道用途等.现在我就来给大家讲解一下汇编语言以及入门.我也是刚学习汇编语言,大家可以跟着我一起学习.汇编语言与高级语言不同,它是面向机器的语言,最接近于机器语言.学习汇编语言,必须要了解计算机中机器指令.数据.符合的表示形式和存储格式以及机器指令程序的运行方式等.汇编语言的实践性很强,必须要边学习边动手

一&#183;python入门

Python简介 一.1.什么是编程语言? 人与计算机之间沟通交流的媒介 2.什么是编程? 将人的思维逻辑通过计算机能够读懂的方式写下来 3.为什么要编程? 解放人力,让计算机能够按照人的思维逻辑去帮你干活 一套完整的计算机系统包括以下三部分 1.应用程序 2.操作系统 3.计算机硬件 计算机硬件五大组成部分 1.控制器 2.运算器 逻辑运算:判断事物对错 数学运算:加减乘除等数学相关 控制器+运算器 = 中央处理器(cpu) 3.存储器 内存:基于电工作的(电信号只有高低电频 01010101