SQL Server数据库设计基础 ——基于SQL Server 2000 陈志煌 集美大学教务处.

Slides:



Advertisements
Similar presentations
第二章 简单的 SQL 语句. 本章要点  创建一个简单的表  SQL 语句介绍  最简单的查询语句 select  带有限制条件的查询  查询结果的排序显示.
Advertisements

MySQL 基础技能与原理 —— 基础技能 MySQL DBA Team 彭立勋( )
强力推进 积极探索 努力提升计算机审计实施水平 AO案例和审计方法撰写介绍 曹红珍.
第5章 T-SQL语言 5.1 T-SQL语言简介 5.2 常量、变量与数据类型 5.3 运算符与表达式 5.4 流程控制语句
第5章 T-SQL语言 5.1 SQL语言与T-SQL语言 5.2 常量、变量与数据类型 5.3 运算符与表达式 5.4 流程控制语句
数据库原理及应用 第8章 函数 8.1 系统内置函数 8.2 自定义函数.
目 录 第 1 章 数据库技术基础 第 2 章 SQL Server基础 第 3 章 数据库管理 第 4 章 查询和视图
SQL的简单查询.
第2章 SQL语言初步 2.1 SQL的基本概念 2.2 基本表、索引的创建、删除和修改操作 2.3 SQL的查询语句——SELECT
第5章 索引及视图操作 数据库原理应用与实践 SQL SERver2014(第2版) 主编 贾铁军 科学出版社 编著 陈国秦 万程 邢一鸣
数据库技术 实践.
数据库技术及应用 ——SQL Server 任课教师: 毕丛娣 电话: 年3月.
第8章 SELECT敘述的基本查詢 8-1 SELECT查詢指令 8-2 SELECT子句 8-3 FROM子句 8-4 WHERE子句
Access数据库程序设计 总复习.
第14章 預存程序 14-1 預存程序的基礎 14-2 建立與執行預存程序 14-3 預存程序的參數傳遞 14-4 預存程序的傳回值
第4章 关系数据库标准语言SQL 4.1 SQL语言概述 4.2 SQL数据查询功能 4.3 SQL数据操作功能 4.4 SQL数据定义功能.
第3章 SQL的基础知识 数据库管理及应用 3.1 SQL简介 3.2 SQL的数据模型 3.3 标识符 3.4 使用SQL语句管理数据库
第一讲 商品信息表的创建 第二讲 数据库的完整性约束 第三讲 规则和默认值约束 第四讲 数据更新 第五讲 简单查询.
第 10 章 更多的查詢技巧.
创建数据库 MySql创建数据库的语法: CREATE DATABASE 数据库名; 例: CREATE DATABASE mydb;
資料庫設計 Database Design.
第3章 数据查询与SQL命令.
Oracle数据库 Oracle 子程序.
第7章 建立資料表與完整性限制條件 7-1 資料型別 7-2 資料表的建立 7-3 建立完整性限制條件 7-4 修改與刪除資料表
9 SELECT敘述的進階查詢 9-1 SQL的多資料表查詢 9-2 合併查詢 9-3 集合運算查詢 9-4 子查詢
PHP與MySQL 入門學習指南 凱文瑞克 著 第 23 章 資料型別.
第十一章 資料庫設計與權限設定.
第4章 SQL语言基础及数据库定义 4.1 基本概念 4.2 SQL Server 提供的主要数据类型 4.3 数据定义.
EBNF 请用扩展的 BNF 描述 C语言里语句的结构; 请用扩展的 BNF 描述 C++语言里类声明的结构;
教 师:曾晓东 电 话: 数据库技术 教 师:曾晓东 电 话:
Visual Foxpro程序设计 第三章 VisualFoxpro中的数据 123.
SQL Server 2000 数据库入门.
第3章 MySQL教學範本 主從式資料庫系統 - CH3.
第九章 進階的查詢技巧.
第五章 認識 SQL語言與 資料型別.
SQL SERVER 一些经典语句 1.
实验4:PL-SQL编程 1.实验目的 2.实验原理 PL/SQL是一种过程化语言,属于第三代语言,本实验在与熟悉使用PL/SQL编程.
丙級電腦軟設-VB程式設計 資料來源:林文恭研究室 整理:張福生.
第3章 关系数据库标准语言SQL.
第十二章 SQL語言簡介 講授大綱: 新增資料庫 新增資料表 新增資料 修改資料 刪除資料 查詢資料 透視ASP.NET-第12章
iRepor报表设计基础 IReport安装 普通实体报表 数据结果集报表 工作流主从报表 饼状图报表 柱状图,曲线图报表 条形码报表
第二章 Java语言基础.
数据库应用技术 SQL Server 2005.
MySQL开发规范 DB组-张浩.
第4章 PHP流程控制语句.
第3章 关系数据库的创建与维护 Microsoft SQL Server2008 概述 SQL Server数据库基础 数据库的创建与维护
学习目标 1、什么是字符集 2、字符集四个级别 3、如何选择字符集.
第18章 SQL結構化查詢語言 18-1 SQL語言的基礎 18-2 SQL的查詢指令 18-3 SQL子查詢與合併查詢.
資料庫系統 李翊豪 2017/12/21 Reference
4.2 视图 (1) 视图是一个虚拟表,其内容来自对表查询的基础上。
3. SQL语言的应用 3.1 SQL历史和优点 3.2 数据查询 3.3 数据操纵.
SQL查询语句 蔡海洋.
附錄D Access應用說明 主從式資料庫系統 - 附錄D.
C语言程序设计 第一章 数据类型, 运算符与表达式 第二章 顺序程序设计 第三章 选择结构程序设计 第四章 循环控制 第五章 数组.
第4章 表的创建与维护 4.1 数据类型 4.2 数据完整性约束 4.3 创建数据表 4.4 修改数据表 4.5 删除数据表.
第六章 Excel的应用 一、Excel的单元格与区域 1、单元格:H8, D7, IV26等 2、区域:H2..D8, HS98:IT77
第4章 Excel电子表格制作软件 4.4 函数(一).
<编程达人入门课程> 本节内容 为什么要使用变量? 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ:
C++语言程序设计 C++语言程序设计 第四章 数组及自定义数据类型 C++语言程序设计.
8 SELECT敘述的基本查詢 8-1 SELECT查詢指令 8-2 SELECT子句 8-3 FROM子句 8-4 WHERE子句
第4课时 绝对值.
多层循环 Private Sub Command1_Click() Dim i As Integer, j As Integer
ASP.NET实用教程 清华大学出版社 第4章 C#编程语言 教学目标 教学重点 教学过程 2019年5月5日.
学习目标 1、了解基本运算符 2、运算符优先级.
C++语言程序设计 C++语言程序设计 第一章 C++语言概述 第十一组 C++语言程序设计.
数据表示 第 2 讲.
第4章 数据查询.
第三章 流程控制 程序的运行流程 选择结构语句 循环结构语句 主讲:李祥 时间:2015年10月.
第二章 简单数据类型 §2.1 数据类型概述 §2.2 变量和常量 §2.3 简单数据类型 §2.4 简单数据类型的相互转换
学习目标 1、什么是列类型 2、列类型之数值类型.
Presentation transcript:

SQL Server数据库设计基础 ——基于SQL Server 2000 陈志煌 集美大学教务处

第三课 T-SQL 语言概述 一、T-SQL语言基础 二、数据类型 三、变量 四、运算符 五、函数 六、流程控制语句

二、数据类型 整型 :bigint、int、smallint、tinyint 浮点型 :float、real、decimal、numeric 字符型 :char、varchar、text、nchar、nvarchar、ntext 日期时间型 :datetime、smalldatetime 逻辑型 :bit 二进制类型 :binary、varbinary、image

二、数据类型 其他类型 用户自定义类型 cursor-游标类型 sql-variant-可变类型 table-表类型 uniqueidentifer-全局唯一标识符 timestamp-时间戳类型 用户自定义类型 sp_addtype 类型名称,’系统类型’,’处理空值方式’,’所有者’

整型 tinyint smallint int 存储大小:1字节 范围:0到255 存储大小:2字节 范围:-2^15 (-32,768)到2^15-1(32,767 ) int 存储大小:4字节 范围:-2^31 (-2,147,483,648)到2^31-1(2,147,483,647) SQL Server 中主要的整数数据类型

整型 bigint 存储大小:8字节 范围:-2^63 到2^63-1 只有当参数表达式是 bigint 数据类型时,函数才返回 bigint SQL Server 不会自动将其它整数数据类型(tinyint、smallint 和 int)提升为 bigint SELECT 2147483647+1 SELECT CAST(2147483647 AS BIGINT)+1

浮点型 float 和 real 用于表示浮点数据的科学记数法 表示的数据为近似值 在其数据类型范围内,并非所有的数据都能精确地表示

float(n) real 范围:- 1.79E + 308 到 1.79E + 308 n为从 1 到 53 之间的值 存储大小为 4 字节

decimal 和 numeric decimal (p,s) numeric (p,s) - 10^38 +1 到 10^38 - 1 s-小数位数,值需在 0 到 p 之间 存储大小取决于p的值 在 1- 9 之间,需 5 字节 在 10-19 之间,需 9 字节 在 20-28 之间,需 13 字节 在 29-38 之间,需 17 字节

字符型 char 、 varchar 和 text char(n) n介于1到8000之间 存储大小为n字节,固定长度 varchar(n) 存储大小为实际输入的数据长度 text 最多可存储2^31-1个字符 存储大小为字符个数

char 、 varchar 和 text 用于存储非 Unicode 的字符数据 char与varchar 则默认长度为 1 如果没有使用 CAST 函数指定 n, 则默认长度为 30

字符型 nchar 、 nvarchar 和 ntext nchar(n) n介于1到4000之间 存储大小为n的两倍字节,固定长度 存储大小为实际输入数据长度的两倍 ntext 最多可存储2^30-1个字符 存储大小为字符个数的两倍

nchar 、 nvarchar 和 ntext 用于存储 Unicode 的字符数据 nchar与nvarchar 在数据定义或变量声明语句中,没有指定 n, 则默认长度为 1 如果没有使用 CAST 函数指定 n, 则默认长度为 30

日期时间型 datetime smalldatetime 从 1753 年 1 月 1 日到 9999 年 12 月 31 日 精确度为百分之三秒 .000、001调整为.000 .002、.003、.004调整为.003 .005、.006、.007、.008调整为.007 .009调整为.010 smalldatetime 从 1900 年 1 月 1 日到 2079 年 6 月 6 日 精确到分钟 ,29.998 秒向下舍,29.999 秒向上进

逻辑型 bit 整型数据 1、0 或 NULL 不能对 bit 类型的列使用索引 存储优化 依此类推

二进制类型 binary 和 varbinary binary(n) varbinary(n) 存储空间大小为实际输入数据长度 +4 个字节 如果在数据定义或变量声明语句中没有指定 n,默认长度为 1 如果没有用 CAST 函数指定 n,默认长度为 30

image 可存储 0 到 2^31-1 字节 二进制数据 存储文件用image类型

其他类型 cursor-游标类型 table-表类型 uniqueidentifer-全局唯一标识符 timestamp-时间戳类型 用在变量或存储过程 OUTPUT 参数 table-表类型 只能用于定义 table 类型的局部变量或用户定义函数的返回值 uniqueidentifer-全局唯一标识符 以一个 16 位的十六进制数表示全局唯一标识符 timestamp-时间戳类型 用于表示 SQL Server 在一行上的活动顺序,按二进制格式以递增的数字来表示

sql-variant-可变类型 可存储除text、ntext、image、timestamp 和 sql_variant 外,各种数据类型值 sql_variant 类型的列可以包含不同数据类型的行 最大长度可达 8016 字节 必须先将 sql_variant 数据类型投影为其基本数据类型值,才能使其参与加和减这类运算

用户自定义类型 sp_addtype 类型名称,’系统类型’,’处理空值方式’,’所有者’

五、函数 数学函数 日期/时间函数 聚合函数 字符串函数

数学函数 ABS() 返回给定数字表达式的绝对值 CEILING() 返回大于或等于所给数字表达式的最小整数 FLOOR() 返回小于或等于所给数字表达式的最大整数 RAND() 返回 0 到1 之间的随机值 ROUND() 四舍五入

例: USE pubs GO SELECT RAND() FROM titles

日期/时间函数 GETDATE() 返回当前系统日期和时间 DATEADD() 格式:DATEADD ( datepart , number, date ) 参数datepart Year (yy,yyyy)、quarter (qq,q)、Month (mm,m) Day (dd,d)、Week (wk,ww)、Hour (hh) minute (mi,n)、second (ss,s)、millisecond (ms) 参数number 若指定不是整数值,则将废弃此值的小数部分

例: USE pubs GO SELECT pubdate , DATEADD(day, 1, pubdate) AS timeframe FROM titles

DATEDIFF() 返回两个指定日期和时间之间的间隔 语法:DATEDIFF ( datepart , startdate , enddate ) 参数datepart 参数startdate计算的开始日期 用 smalldatetime 值时,计算秒和毫秒总是 0 参数enddate是计算的终止日期 返回整型值

DATENAME() 返回代表指定日期指定部分的字符串 语法:DATENAME ( datepart , date ) 参数datepart weekday(dw)返回星期几 返回类型:nvarchar

DATEPART() 返回代表指定日期的指定部分的整数 语法:DATEPART ( datepart , date ) 参数datepart 默认:任何一年的 1 月 1 日定义了 week 日期部分的开始数字 weekday (dw) 日期部分返回对应于星期中的某天的数 。默认:Sunday = 1、Saturday = 7 返回类型:int

聚合函数 AVG() SUM() COUNT() MAX() MIN() AVG ( [ ALL | DISTINCT ] expression ) SUM() SUM ( [ ALL | DISTINCT ] expression ) COUNT() COUNT ([ ALL | DISTINCT ] expression ] | * ) MAX() MIN()

聚合函数 USE pubs GO SELECT COUNT(*),COUNT (city), COUNT(DISTINCT city) FROM authors

聚合函数 USE pubs GO SELECT COUNT(*), AVG(price) , MAX(price), MIN(price) FROM titles WHERE advance > $1000

字符串函数 ASCII和CHAR CHARINDEX CHAR(n)中n应在0-255之间的整数, 否则返回值为NULL 返回字符串中指定表达式的起始位置 CHARINDEX (字符串1 ,字符串2 , 起始位置 ) 字符串1或2为NULL时,返回NULL 在字符串2中没找到字符串1,返回0

LEFT与RIGHT LTRIM与RTRIM LEN LOWER与OPPER STR LEFT(字符串,n) RIGHT(字符串,n) LOWER(字符串) UPPER(字符串) STR

REPLACE与STUFF SPACE与REPLICATE REVERSE SUBSTRING

六、流程控制语句 BEGIN … END语句 格式: BEGIN <语句1> <语句2> … END

IF … ELSE语句 格式: IF <条件表达式> <语句1> ELSE <语句2>

CASE语句 格式1: CASE <测试表达式> WHEN <表达式1> THEN <结果表达式1> … ELSE <结果表达式N> END

CASE语句 格式2: CASE WHEN <布尔表达式1> THEN <结果表达式1> … ELSE <结果表达式N> END

WHILE语句 格式: WHILE <布尔表达式> BEGIN <语句1> [BREAK] <语句2> [CONTINUE] <语句3> … END

GOTO语句 格式: lable: <语句> … GOTO lable

RETURN语句 无条件退出 不执行位于之后的语句

WAITFOR语句 格式: WAITFOR DELAY 时间 WAITFOR TIME 时间

PRINT语句 格式: PRINT 字符串 | 局部变量 | 函数 | 字符串表达式