`
pqcc
  • 浏览: 124773 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

T-SQL编程概述

阅读更多

T-SQL编程概述

1.SQLServer中支持两种类型的注释:
 (1).单行注释 --
 (2).多行注释/* */

2. 求出选手的最高分:
 declare @MaxValueID   int
 select @MaxValue=Max(score) from Grade where Player='选手一'

3.  临时变量:
 Declare 变量名  变量类型及宽度. 
 
    可以采用Select 语句与Set语句对临时变量进行赋值。例如:
 Declare @var  varchar(12)
 Set @var  ‘test’
 Select @var   ‘test2’
    例如:
 Decalre @score   decimall(10,2)
 Select @Score=score from Grade
 Print @Score
4.   如果在常量字符串中本身包括一个“’“,此时需要用两个单引号来表达一个单引号,例如:
 Declare @City  varchar(30)
 Set @City =’Xi’ ’An’   --在此本意是要将“Xi’An“这一个字符串赋值给@City,但由
     --于这是一个常量字符串,本身要位于一对“’”内,所以在
 --此需要写两个单引号

5.   --求出去掉最高、低分后剩下的平均分(选手的最后得分)
 select avg(score) from Grade where ID not in(@maxValueID,@MinValueID)

6. 
    (1). SET NOCOUNT:
 不返回计数.
 set nocount on: 关闭返回的计数器,也就是不返回受影响的行数。
 SET ANSI_NULL_DFLT_OFF:

    (2).SET ANSI_NULL_DFLT_OFF:
    (3).SET IDENTITY_INSERT:
    (4).SET ROWCOUNT:

7. 临时表:
 临时表都是创建在TempDb系统数据库中的。当SqlServer重新启动时这个系统数据库会被清空。
 

 8. truncate,delete,drop的比较.
不同点:
(1). truncate和 delete只删除数据不删除表的结构(定义)
    drop语句将删除表的结构被依赖的约束(constrain),触发器(trigger),索引(index); 依赖于该表的存储过程/函数将保留,但是变为invalid状态.
(2).delete语句是DML,这个操作会放到rollback segement中,事务提交之后才生效;如果有相应的trigger,执行的时候将被触发.
    truncate,drop是DDL, 操作立即生效,原数据不放到rollback segment中,不能回滚. 操作不触发trigger
(3).delete语句不影响表所占用的extent, 高水线(high watermark)保持原位置不动
    显然drop语句将表所占用的空间全部释放
    truncate 语句缺省情况下见空间释放到 minextents个 extent,除非使用reuse storage; truncate会将高水线复位(回到最开始).
(4).速度,一般来说: drop> truncate > delete
(5).安全性:小心使用drop 和truncate,尤其没有备份的时候.否则哭都来不及
    使用上,想删除部分数据行用delete,注意带上where子句. 回滚段要足够大.
    想删除表,当然用drop
    想保留表而将所有数据删除. 如果和事务无关,用truncate即可. 如果和事务有关,或者想触发trigger,还是用delete.
    如果是整理表内部的碎片,可以用truncate跟上reuse stroage,再重新导入/插入数据

 

分享到:
评论

相关推荐

    Transact-SQL编程规范

    Transact-SQL编程规范 Transact-SQL编程规范 1 概述 3 1.1.基本原则 3 1.2.基本规范 3 命名规范 3 1.3.对象命名 4 1.3.1. 数据库 4 1.3.2. 数据库文件 4 1.3.3. 关系型数据仓库 4 1.3.4. 数据架构 4 1.3.5. 数据表 5...

    Microsoft.SQL.Server.2008技术内幕:T-SQL语言基础.part1

    【概述】: 本书是Microsoft SQL Server 2008系列中的一本。书中全面深入地介绍了T-SQL的基本元素,以及SQL Server 2008中新增加的一些特性。主要包括SQL的基础理论、逻辑查询处理、SELECT查询、连接和子查询、表...

    Microsoft.SQL.Server.2008技术内幕:T-SQL语言基础.part2

    【概述】: 本书是Microsoft SQL Server 2008系列中的一本。书中全面深入地介绍了T-SQL的基本元素,以及SQL Server 2008中新增加的一些特性。主要包括SQL的基础理论、逻辑查询处理、SELECT查询、连接和子查询、表...

    SQL Server 2008管理员必备指南(超高清PDF)Part2

    《SQL Server 2008管理员必备指南》的特点是按照日常工作的逻辑来编排内容,并含有大量实例操作指导、技巧提示及T-SQL代码,方便管理员日常的工作。 《SQL Server 2008管理员必备指南》适合所有SQL Server用户参考,...

    SQL_SERVER_2008_DBA入门经典 NO.4

    Dan与Paul Turley合著了《SQL Server 2005 Transact.SQL编程入门经典》(由清华大学出版社引进并出版)和《T-SQL编程入门经典(涵盖SQL Server2008&2005;》)(由清华大学出版社引进并出版)两本书,同时主编了《SQL...

    SQL_SERVER_2008_DBA入门经典 NO.2

    Dan与Paul Turley合著了《SQL Server 2005 Transact.SQL编程入门经典》(由清华大学出版社引进并出版)和《T-SQL编程入门经典(涵盖SQL Server2008&2005;》)(由清华大学出版社引进并出版)两本书,同时主编了《SQL...

    SQL.Server.2008编程入门经典(第3版).part2.rar

    《SQL Server 2008编程入门经典(第3版)》首先概述了数据库设计的概念,介绍了如何用SQL Setver 2008实现这些基本概念。然后,讲述了RDBMS(关系数据库管理系统)的功能和它在开发系统架构方面的优势。SQL Server ...

    SQL_SERVER_2008_DBA入门经典 NO.3

    Dan与Paul Turley合著了《SQL Server 2005 Transact.SQL编程入门经典》(由清华大学出版社引进并出版)和《T-SQL编程入门经典(涵盖SQL Server2008&2005;》)(由清华大学出版社引进并出版)两本书,同时主编了《SQL...

    SQL Server 2008高级程序设计 2/6

     8.3 使用T-SQL编辑视图  8.4 删除视图  8.5 审核:显示现有代码  8.6 保护代码:加密视图  8.7 关于模式绑定  8.8 使用VIEW METADATA使自己的视图看起来像一个表  8.9 索引(物化)视图  8.10 分区...

    SQL Server 2008高级程序设计 4/6

     8.3 使用T-SQL编辑视图  8.4 删除视图  8.5 审核:显示现有代码  8.6 保护代码:加密视图  8.7 关于模式绑定  8.8 使用VIEW METADATA使自己的视图看起来像一个表  8.9 索引(物化)视图  8.10 分区...

    SQL Server 2008编程入门经典(第3版)

    第3章 T-SQL基本语句 3.1 基本SELECT语句 3.1.1 SELECT语句与FROM子句 3.1.2 WHERE子句 3.1.3 ORDERBY子句 3.1.4 使用GROUPBY子句聚合数据 3.1.5 使用HAVING子句给分组设置条件 3.1.6 使用FORXML子句输出XML 3.1.7 ...

    SQL Server 2008数据库设计与实现

     8.3 通过T-SQL编程对象控制对象访问  8.3.1 存储过程和标量函数  8.3.2 对象内模拟  8.3.3 跨数据库边界  8.3.4 不同的服务器(分布式查询)  8.4 视图与表值函数  8.4.1 一般用法  8.4.2 使用视图...

    SQL.Server.2008编程入门经典(第3版).part1.rar

    《SQL Server 2008编程入门经典(第3版)》首先概述了数据库设计的概念,介绍了如何用SQL Setver 2008实现这些基本概念。然后,讲述了RDBMS(关系数据库管理系统)的功能和它在开发系统架构方面的优势。SQL Server ...

    SQL Server 2008高级程序设计 1/6

     8.3 使用T-SQL编辑视图  8.4 删除视图  8.5 审核:显示现有代码  8.6 保护代码:加密视图  8.7 关于模式绑定  8.8 使用VIEW METADATA使自己的视图看起来像一个表  8.9 索引(物化)视图  8.10 分区...

    SQL Server 2008高级程序设计 3/6

     8.3 使用T-SQL编辑视图  8.4 删除视图  8.5 审核:显示现有代码  8.6 保护代码:加密视图  8.7 关于模式绑定  8.8 使用VIEW METADATA使自己的视图看起来像一个表  8.9 索引(物化)视图  8.10 分区...

    SQL注入攻击与防御

    3.2.4 复查PL/SQL和T-SQL代码 88 3.3 自动复查源代码第1章 什么是SQL注入 94 3.3.1 YASCA 96 3.3.2 Pixy 96 3.3.3 AppCodeScan 97 3.3.4 LAPSE 97 3.3.5 SWAAT 97 3.3.6 Microsoft SQL注入源代码分析器 98 3.3.7 CAT...

    Microsoft SQL Server 2005 Express Edition SP3

    SQL Server Express 是独立软件供应商 (ISV)、服务器用户、非专业开发人员、Web 应用程序开发人员、网站宿主以及客户端应用程序编程爱好者的理想之选。 未及时包括在本自述文件中的任何有关 SQL Server Express 的...

    SQL注入攻击与防御(安全技术经典译丛)

     3.2.4 复查PL/SQL和T-SQL代码  3.3 自动复查源代码第1章 什么是SQL注入  3.3.1 YASCA  3.3.2 Pixy  3.3.3 AppCodeScan  3.3.4 LAPSE  3.3.5 SWAAT  3.3.6 Microsoft SQL注入源代码分析器  3.3.7 ...

    SQL Server 2008高级程序设计 5/6

     8.3 使用T-SQL编辑视图  8.4 删除视图  8.5 审核:显示现有代码  8.6 保护代码:加密视图  8.7 关于模式绑定  8.8 使用VIEW METADATA使自己的视图看起来像一个表  8.9 索引(物化)视图  8.10 分区...

Global site tag (gtag.js) - Google Analytics