发布网友 发布时间:2022-04-08 00:37
共2个回答
懂视网 时间:2022-04-08 04:58
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!
T-Sql编程基础
标签:
热心网友 时间:2022-04-08 02:06
第1章 T-SQL和数据管理系统简介
1.1 T-SQL语言
1.1.1 T-SQL:是编程语言还是查询语言
1.1.2 SQL Server 2008中的新特性
1.1.3 数据库管理系统(DBMS)
1.2 作为关系数据库管理系统的SQL Server
1.2.1 表
1.2.2 关系
1.2.3 RDBMS与数据完整性
1.3 SQL Server与其他产品
1.3.1 Microsoft SQL Server
1.3.2 Oracle
1.3.3 IBM DB2
1.3.4 Informix
1.3.5 Sybase SQLAnywhere
1.3.6 Microsoft Access(Jet)
1.3.7 MySQL
1.4 小结
第2章 SQL Server基础
2.1 谁使用SQL Server
2.2 SQL Server版本和功能
2.2.1 SQL Server压缩版
2.2.2 SQL Server Express版
2.2.3 SQL Server工作组版
2.2.4 SQL Server标准版
2.2.5 SQL Server企业版
2.2.6 关系数据库引擎
2.3 语义
2.3.1 变化的术语
2.3.2 关系
2.3.3 主键
2.3.4 外键
2.4 规范化规则
2.5 应用规范化规则
2.5.1 想一想
2.5.2 多重关联
2.5.3 多值列
2.5.4 规范化还是去规范化
2.5.5 质疑权威
2.6 查询处理的机制
2.7 AdventureWorks数据库
2.8 小结
第3章 SQL Server工具
3.1 常见的SQL Server任务
3.2 SQL Server Management Studio
3.2.1 工具窗口
3.2.2 工具栏
3.2.3 SQL Server Management Studio配置
3.3 SQL Server Business Intelligence Development Studio
3.4 SQL Server Profiler
3.5 Database Tuning Advisor
3.6 SQL Server Configuration Manager
3.7 命令行工具
3.8 编写查询
3.8.1 脚本选项
3.8.2 使用图形化的查询设计器
3.8.3 使用模板
3.8.4 使用调试功能
3.9 小结
3.10 习题
第4章 T-SQL语言
4.1 SQL的本质
4.2 从哪儿开始
4.3 数据操纵语言(DML)
4.3.1 查询是有层次的
4.3.2 基于集合的操作
4.3.3 基于行的操作
4.3.4 查询语法基础
4.3.5 命名规范
4.3.6 对象的界定
4.3.7 注释脚本
4.3.8 使用模板
4.3.9 生成脚本
4.3.10 管理脚本
4.3.11 版本控制
4.4 数据定义语言
4.4.1 创建表
4.4.2 创建视图
4.4.3 创建存储过程
4.4.4 创建触发器
4.4.5 创建用户自定义函数
4.4.6 脚本编写实践
4.5 数据控制语言
4.6 小结
4.7 习题
第5章 数据检索
5.1 存储与检索
5.2 SELECT语句
5.2.1 列的选择
5.2.2 列的别名
5.2.3 被计算和继承的列
5.2.4 行的过滤
5.2.5 WHERE子句
5.2.6 使用括号
5.2.7 结果排序
5.2.8 排在前面的值
5.3 小结
5.4 习题
第6章 SQL函数
6.1 函数的组成
6.1.1 一个论点
6.1.2 确定性函数
6.1.3 在函数中使用用户变量
6.1.4 在查询中使用函数
6.1.5 嵌套函数
6.2 聚合函数
6.2.1 AVG()函数
6.2.2 COUNT()函数
6.2.3 MIN()与MAX()函数
6.2.4 SUM()函数
6.3 配置变量
6.3.1 @@ERROR变量
6.3.2 @@SERVICENAME变量
6.3.3 @@TOTALE_RRORS变量
6.3.4 @@TOTAL_READ变量
6.3.5 @@VERSION变量
6.3.6 错误函数
6.4 转换函数
6.4.1 CAST()函数
6.4.2 CONVERT()函数
6.4.3 STR()函数
6.5 游标函数与变量
6.5.1 CURSOR_STATUS()函数
6.5.2 @@CURSOR_ROWS全局变量
6.5.3 @@FETCH_STATUS全局变量
6.6 日期函数
6.6.1 DATEADD()函数
6.6.2 DATEDIFF()函数
6.6.3 DATEPART()与DATENAME()函数
6.6.4 GETDATE()与GETUTCDATE()函数
6.6.5 SYSDATETIME()和SYSUTCDATETIME()函数
6.6.6 DAY(). MONTH()和YEAR()函数
6.7 字符串操纵函数
6.7.1 ASCII(). CHAR(). UNICODE()和NCHAR()函数
6.7.2 CHARINDEX()和PATINDEX()函数
6.7.3 LEN()函数
6.7.4 LEFT()与RIGHT()函数
6.7.5 SUBSTRING()函数
6.7.6 LOWER()与UPPER()函数
6.7.7 LTRIM()与RTRIM()函数
6.7.8 REPLACE()函数
6.7.9 REPLICATE()与SPACE()函数
6.7.10 REVERSE()函数
6.7.11 STUFF()函数
6.7.12 QUOTENAME()函数
6.8 数学函数
6.9 元数据函数
6.10 排列函数
6.10.1 ROW_NUMBER()函数
6.10.2 RANK()与DENSE_RANK()函数
6.11.3 NTILE(n)函数
6.11 安全函数
6.12 系统函数与系统变量
6.12.1 COALESCE()函数
6.12.2 DATALENGTH()函数
6.13 系统统计变量
6.14 小结
6.15 习题
第7章 聚合与分组
7.1 分组还是不分组
7.2 使用聚合函数
7.2.1 COUNT()函数
7.2.2 SUM()函数
7.2.3 AVG()函数
7.3 理解统计函数
7.3.1 STDEV()函数
7.3.2 STDEVP()函数
7.3.3 VAR()函数
7.3.4 VARP()函数
7.3.5 用户自定义的聚合函数
7.4 数据分组
7.4.1 GROUP BY子句
7.4.2 HAVING子句
7.4.3 总计与小计
7.4.4 子分组
7.4.5 ROLLUP子句
7.4.6 CUBE子句
7.4.7 GROUPING()函数
7.4.8 COMPUTE与COMPUTE BY子句
7.5 小结
7.6 习题
第8章 多表查询
8.1 理解子查询与连接
8.1.1 在WHERE子句中连接表
8.1.2 在FROM子句中连接表
8.1.3 连接的类型
8.1.4 内连接
8.1.5 外连接
8.1.6 多列连接
8.1.7 非同等连接
8.1.8 特殊目的的连接运算
8.1.9 合并查询
8.2 小结
8.3 习题
第9章 高级查询与脚本
9.1 子查询
9.1.1 标量表达式
9.1.2 交换连接运算
9.1.3 互相关联的子查询
9.1.4 子查询业务案例
9.2 Common Table Expressions(CTE)
9.3 游标
9.3.1 行集(rowset)与游标操作
9.3.2 创建与遍历游标
9.4 小结
9.5 习题
第10章 数据事务
10.1 事务简介
10.1.1 事务类型
10.1.2 ACID测试
10.1.3 事务日志
10.1.4 记入日志的操作
10.2 对数据执行CRUD
10.2.1 添加记录
10.2.2 修改记录
10.2.3 删除记录
10.2.4 用MERGE命令自动完成插入、更新和删除操作
10.3 显式事务
10.4 小结
10.5 习题
第11章 高级功能
11.1 数据的透视
11.1.1 PIVOT操作符
11.1.2 UNPIVOT操作符
11.2 全文索引和近似匹配
11.3 Microsoft 搜索服务
11.3.1 音索匹配
11.3.2 DIFFERENCE()函数
11.4 管理并填写目录
11.5 小结
11.6 习题
第12章 T-SQL编程对象
12.1 视图
12.1.1 虚表
12.1.2 创建视图
12.1.3 保护数据
12.1.4 隐藏复杂性
12.2 存储过程
12.2.1 用存储过程实现带参数的视图
12.2.2 使用参数
12.2.3 返回值
12.2.4 记录的维护
12.2.5 处理和引发错误
12.2.6 错误消息
12.2.7 处理业务逻辑
12.2.8 循环
12.3 用户自定义函数
12.3.1 标量函数
12.3.2 内嵌表值函数
12.3.3 多语句表值函数
12.4 事务管理
12.5 小结
12.6 习题
第13章 创建和管理数据库对象
13.1 数据定义语言
13.1.1 创建对象
13.1.2 修改对象
13.1.3 删除对象
13.1.4 对象的命名
13.1.5 创建DDL脚本
13.1.6 创建表
13.1.7 唯一标识符
13.1.8 约束
13.1.9 创建视图
13.1.10 带索引的视图
13.1.11 创建存储过程
13.1.12 CREATE FUNCTION
13.2 IF EXISTS
13.3 数据库对象的安全
13.3.1 管理安全性对象
13.3.2 数据控制语言
13.4 小结
13.5 习题
第14章 分析和优化查询性能
14.1 数据检索
14.2 分析查询
14.2.1 会话选项
14.2.3 图形化执行计划
14.3 编写高效的T-SQL(最佳实践方式)
14.4 小结
14.5 习题
第15章 T-SQL在应用程序与报表中的应用
15.1 应用程序编程模型
15.2 选择模型
15.2.1 桌面数据库应用程序
15.2.2 客户/服务器数据库解决方案
15.2.3 n层组件解决方案
15.2.4 Web服务器应用程序
15.2.5 多层Web服务解决方案
15.2.6 多系统集成解决方案
15.3 SQL Server 2008报表服务
15.3.1 报表服务的体系结构
15.3.2 SQL Server 2008报表设计器
15.3.3 部署报表
15.3.4 用报表管理器查看报表
15.3.5 报表数据缓存
15.2.6 商业智能和业务报表
15.3.7 报表应用程序的集成
15.4 小结
附录A 命令语法参考
附录B 系统变量与函数参考
附录C 系统存储过程参考
附录D 信息模式视图参考
附录E FileStream对象和语法
附录F 习题答案