T-Sql编程基础

T-sql编程 入门小游戏

T-sql编程基础,包括声明变量,if判断,while循环,以及使用一些基本函数.

记得在学校的时候,写过一个二人对打的文字输出游戏.

上代码

alter proc usp_paly
as

declare @paly1 nvarchar(20),@paly2 nvarchar(20)
declare @atk1 int,@atk2 int
declare @hp1 int,@hp2 int

set @paly1 =‘神秘阿会喃‘
set @paly2 =‘吕布‘
set @hp1 = 1000;
set @hp2 = 1000;

declare @rand int,@times int;
set @times = 0;
set @rand = 0;
 while @hp1 > 0 And @hp2> 0
   begin
     set @times = @times+1;
     print ‘第‘+ cast(@times as varchar(10))+‘回合‘
      set @rand = RAND()*100;  --100以内随机数,每一回合都要比看谁先出手
      --双方攻击力,每次都随机
      set @atk1 = cast(RAND() * 100 as int)+10; --攻击力 10到 110
      set @atk2 = cast(RAND() * 40 as int)+40;  --攻击力 40到80
      if @rand>50
        begin
          --回合制,一人打一回合,玩家1攻击玩家2
          set @hp2 = @hp2 -@atk1;
          print @paly1 +‘ 攻击 ‘+@paly2+‘ , ‘+@paly2+‘ 损伤 ‘+cast(@atk1 as varchar(10))
          --判断 @paly2 是不是挂了
          if @hp2<=0
           begin
              print @paly1 +‘胜利!‘
              BREAK;
           end    

          --没死就玩家2攻击玩家2
          set @hp1 = @hp1 -@atk2;
          print @paly2 +‘ 攻击 ‘+@paly1+‘ , ‘+@paly1+‘ 损伤 ‘+cast(@atk2 as varchar(10))
          --判断 @paly2 是不是挂了
          if @hp1<=0
           begin
              print @paly2 +‘胜利!‘
              BREAK;
           end
        end
       else
        begin

              --没死就玩家2攻击玩家1
              set @hp1 = @hp1 -@atk2;
              print @paly2 +‘ 攻击 ‘+@paly1+‘ , ‘+@paly1+‘ 损伤 ‘+cast(@atk2 as varchar(10))
              --判断 @paly2 是不是挂了
              if @hp1<=0
               begin
                  print @paly2 +‘胜利!‘
                  BREAK;
               end    

              --回合制,一人打一回合,玩家1攻击玩家2
              set @hp2 = @hp2 -@atk1;
              print @paly1 +‘ 攻击 ‘+@paly2+‘ , ‘+@paly2+‘ 损伤 ‘+cast(@atk1 as varchar(10))
              --判断 @paly2 是不是挂了
              if @hp2<=0
               begin
                  print @paly1 +‘胜利!‘
                  BREAK;
               end
         end
         print ‘-----------------------------------------‘
   end
 go
  

运行效果一览

Nice!

时间: 2024-10-05 04:45:07

T-Sql编程基础的相关文章

Oracle PL/SQL 编程基础 实例

create table mytest(name varchar(20),password varchar(30)); create or replace procedure sp_pro2 is begin insert into mytest values('fc','123'); end; 查看错误信息 show error 如何调用该过程: 1, exec 过程名 (参数,..) 2.  call 过程名 (参数  ) set server output on begin dbms_ou

Oracle PL/SQL 编程基础 实例 2

if  循环  控制语句 if--then        endif if----then ----else   endif if-----then --elsif then ----else     endif --编写一个过程,可以 输入一个雇员名,如果该雇员的工资低于2000就给他增加10% create   or replace procedure  sp_pro6(spName varchar2) is v_sal  emp.sal %type; begin select sal in

【PL/SQL编程基础】

[PL/SQL编程基础]语法: declare 声明部分,例如定义变量.常量.游标 begin 程序编写,SQL语句 exception 处理异常 end: / 正斜杠表示执行程序快范例 -- Created on 2016/8/22 by VITAS declare 定义变量 v_num number; v_eno number; v_ename varchar2(10); begin v_num:=234; v_eno:=&empno; 接收输入变量 select ename into v_

pl/sql编程基础

PL/SQL 1.过程.函数.触发器是pl/sql编写的 2.过程.函数.触发器是存放在oracle数据库中的 3.pl/sql是非常强大的过程化语言 4.过程.函数.触发器可以在java程序中调用 pl/sql编写能节省一点时间就是提高了性能(量大),java直接调用数据库存放的过程,解析时间就节省下来了,提高了性能 模块化的设计思想----->存储过程 网络传输(java程序中编写的sql语言),直接调用数据库的过程节省了传输量 提高安全性(存储过程避免了数据库信息的泄漏) 缺点: 移植性不

PL/SQL编程基础

范例:编写不做任何工作的PL/SQL块 BEGIN NULL ; END ; /   范例:编写一个简单的PL/SQL程序 DECLARE v_num NUMBER ; -- 定义一个变量v_num BEGIN v_num := 30 ; -- 设置v_num的内容 DBMS_OUTPUT.put_line('V_NUM变量的内容是:' || v_num) ; END ; / 范例:编写PL/SQL块,输入一个雇员编号,而后取得指定的雇员姓名 DECLARE v_eno NUMBER ; v_e

PL/SQL 编程(一)基础,变量,分支,循环,异常

SQL和PL/SQL: SQL 结构化查询语言(Structural Query Language),是用来访问和操作关系型数据库的一种标准通用语言,属于第四代语言(4GL).可以方便的调用相应语句来去的结果,特点是非过程化,使用的时候不用指明执行的具体方法,不用关注实现的细节,但是某些情况下满足不了复杂业务流程的需求. PL/SQL是 Procedure Language & Structured Query Language 的缩写.属于第三代语言(3GL),是一种过程化语言.PL/SQL是

[python] 专题九.Mysql数据库编程基础知识

在Python网络爬虫中,通常是通过TXT纯文本方式存储,其实也是可以存储在数据库中的:同时在WAMP(Windows.Apache.MySQL.PHP或Python)开发网站中,也可以通过Python构建网页的,所以这篇文章主要讲述Python调用MySQL数据库相关编程知识.从以下几个方面进行讲解: 1.配置MySLQ 2.SQL语句基础知识 3.Python操作MySQL基础知识 4.Python调用MySQL示例 一. 配置MySQL 首先下载mysql-5.0.96-winx64,安装

[顶]ORACLE PL/SQL编程详解之二:PL/SQL块结构和组成元素(为山九仞,岂一日之功)

原文:[顶]ORACLE PL/SQL编程详解之二:PL/SQL块结构和组成元素(为山九仞,岂一日之功) [顶]ORACLE PL/SQL编程详解之二: PL/SQL块结构和组成元素(为山九仞,岂一日之功) 继上四篇:ORACLE PL/SQL编程之八:把触发器说透                ORACLE PL/SQL编程之六:把过程与函数说透(穷追猛打,把根儿都拔起!)                [推荐]ORACLE PL/SQL编程之四:把游标说透(不怕做不到,只怕想不到) [推荐]

[推荐]ORACLE PL/SQL编程详解之三:PL/SQL流程控制语句(不给规则,不成方圆)

原文:[推荐]ORACLE PL/SQL编程详解之三:PL/SQL流程控制语句(不给规则,不成方圆) [推荐]ORACLE PL/SQL编程详解之三: PL/SQL流程控制语句(不给规则,不成方圆) ——通过知识共享树立个人品牌. 继上五篇: [顶]ORACLE PL/SQL编程详解之二:PL/SQL块结构和组成元素(为山九仞,岂一日之功) [推荐]ORACLE PL/SQL编程之四:把游标说透(不怕做不到,只怕想不到) [推荐]ORACLE PL/SQL编程之五:异常错误处理(知已知彼.百战不

[推荐]ORACLE PL/SQL编程详解之一:PL/SQL 程序设计简介(千里之行,始于足下)

原文:[推荐]ORACLE PL/SQL编程详解之一:PL/SQL 程序设计简介(千里之行,始于足下) [推荐]ORACLE PL/SQL编程详解之一: PL/SQL 程序设计简介(千里之行,始于足下) ——通过知识共享树立个人品牌. 继上六篇: [顶]ORACLE PL/SQL编程详解之二:PL/SQL块结构和组成元素(为山九仞,岂一日之功) [推荐]ORACLE PL/SQL编程详解之三:PL/SQL流程控制语句(不给规则,不成方圆) [推荐]ORACLE PL/SQL编程之四:把游标说透(