1.基础概念:

Microsoft提供的T-SQL是标准SQL的一种方言或扩展,在它的RDBMS(Microsoft SQL Server)上负责处理数据。

关系模型定义了规范化规则(也成为范式):(只讨论1NF,2NF,3NF)

1NF:原子性。每条记录的属性是原子的,不可再分的。

2NF: 1NF+完全依赖性。每个非键属性必须完全依赖于每个候选键。(候选键:能够唯一标识一行数据)

3NF:2NF+非传递依赖。所有非键属性必须非传递依赖于候选键。(所有非键属性必选相互独立,or,所有非键属性不能依赖于其他非键属性)

数据生命周期:

  联机事务处理(OLTP,online transactional processing):数据首先进入。主要处理的事务包括插入,更新和删除数据。

  数据仓库(DW,data warehouse):专门针对数据检索和生成报表而设计的环境。

  联机处理分析(OLAP,online analytical processing):对聚合后的数据进行动态的在线分析。

  数据挖掘(DM,data mining):为用户提供所有可能问题的答案。 

2.SQL server体系结构。

  SQL server实例:安装的一个SQL Server数据库引擎/服务。

  数据库:各种对象(对象放在架构中,架构包含在数据库中)的容器。每个SQL server实例可以包含多个数据库。

  模式/架构:数据库包含多个架构,而每个架构包含多个对象。可以再架构级别上控制对象的访问权限。架构也是一种命名空间。(dbo是默认架构)

  数据库对象:表Table,视图View,存储过程stored procedure统称为对象。

3.创建表和定义数据完整性。

  创建名为testdb的数据库:DB_ID(数据库名称)返回内部数据库ID,如果不存在返回NULL。

  IF DB_ID('testdb') IS NULL  CREAT DATABASE testdb;

  在testdb中建立一个名为Employees的表: OBJECT_ID(对象名称,对象类型(U代表用户表))返回内部对象ID,如果不存在返回NULL。 

USE testdb;
IF OBJECT_ID('ado.Employees','u') IS NOT NULLDROP TABLE ado.Employees;
CREATE TABLE ado.Employees
(empid        INT                     NOT NULL, firstname   VARCHAR(30)     NOT NULL,lastname    VARCHAR(30)     NOT NULL,hiredata     DATE                  NOT NULL,mgrid         INT                     NULL,ssn             VARCHAR(20)     NOT NULL,salary         MONEY               NOT NULL
);    

    定义数据完整性:主键约束、唯一约束、外键约束、检查约束、默认约束

转载于:https://www.cnblogs.com/heartCraft/p/5015864.html

第一章:T-SQL查询与编程基础相关推荐

  1. 第三章 matlab学习入门之编程基础

    系列文章目录 第三章 matlab学习入门之编程基础 在这一章,你会学到的知识: 变量与语句: 程序控制: M文件: 脚本: 函数: 变量检测: 程序调试: 文章目录 系列文章目录 前言 一.变量与语 ...

  2. 第 17 章 Native SQL查询

    第 17 章 Native SQL查询 你也可以使用你的数据库的Native SQL语言来查询数据.这对你在要使用数据库的某些特性的时候(比如说在查询提示或者Oracle中的 CONNECT关键字), ...

  3. 第一章 matlab 学习入门之matlab基础

    matlab系列文章目录 第一章 matlab 学习入门之matlab基础 在这一章会学习到: 数据类型(数值,字符串,结构,单元数组,函数句柄,映射容器) 运算符与运算(算术运算符,关系运算符,逻辑 ...

  4. 第一章 InterSystems SQL简介

    文章目录 第一章 InterSystems SQL简介 架构 特点 符合SQL-92 拓展 互操作性 JDBC ODBC 嵌入式SQL 动态SQL 限制 第一章 InterSystems SQL简介 ...

  5. 《MySQL知必会》第一章了解SQL

    大家好! 我是小黄,很高兴又跟大家见面啦 ! 今天更新的是: <MySQL知必会>第一章了解SQL. 往期检索:程序设计学习笔记--目录 创建时间:2020年12月5日 软件版本: Min ...

  6. 计算机与信息技术基础第一章总结,第一章信息与计算机《计算机应用基础》.ppt...

    <第一章信息与计算机<计算机应用基础>.ppt>由会员分享,可在线阅读,更多相关<第一章信息与计算机<计算机应用基础>.ppt(20页珍藏版)>请在人人 ...

  7. 第一节:C#工业控制编程基础--点亮LED灯实验

    第一节:C#工业控制编程基础–点亮LED灯实验 文章目录 第一节:C#工业控制编程基础--点亮LED灯实验 一.实验目的: C#入门基础学习. 二.实验内容: 用C#控制LED的亮灭. 三.实验步骤: ...

  8. mysql lambda查询_MySQL高级查询和编程基础

    学习概述 随着数据库管理信息系统的日益复杂和庞大,软件应用系统对数据库设计.数据存储.数据查询和数据维护等提出了更高的要求.本书主要介绍数据库设计的方法和技术.子查询技术.MySQL编程基础知识和存储 ...

  9. java mysql 多表查询_Java编程基础32——MySQL多表联查

    SQL 会创建多表及多表的关系 1.多表之间的关系如何来维护 添加外键约束: foreign key alter table product add foreign key(cno) referenc ...

最新文章

  1. DDD 领域驱动设计-如何 DDD?
  2. progress与meter的区别
  3. 廖雪峰js教程笔记9 json
  4. 设置Tomcat管理员用户名和密码
  5. Python二级笔记(11)
  6. 未来计划让儿子和他爷爷出国游一次
  7. ThinkPHP5最新URL访问:PATH_INFO和兼容模式
  8. 树莓派安装mysql并设置远程访问
  9. torch.index_select与torch.gather
  10. python安卓下载-QPython - Python for Android
  11. oracle中使用kill,WINDOWS和LINUX服务器级别的KILLORACLE进行方法
  12. Clone()方法C#
  13. Linux怎么删掉ftp服务器,Linux怎么删掉ftp服务器
  14. Python_动态二维码的制作
  15. 一个USB设备超过其集线器端口的电源限制
  16. 微信小程序模板消息接口下线了,不用慌,调用统一服务消息接口来实现相同功能
  17. 关于MySQL加载驱动错误问题。
  18. gird和flex布局
  19. Unity Tilemap Collider 总结
  20. 北京科技大学计算机导师怎么样,【计算机考研导师】北京科技大学计算机科学与技术系硕士生导师王卫苹...

热门文章

  1. Apollo 对表名区分大小写 如何配置MYSQL不区分大小写呢
  2. 聚集索引,非聚集索引的区别是什么
  3. node-sass安装报错node-sass@4.12.0 postinstall: `node scripts/build.js`
  4. SpringBoot中修改tomcat最大连接数、最大线程数、最大等待数
  5. Android开发笔记(五十二)通知推送Notification
  6. Spring MVC开启注解
  7. Java中Int转byte分析
  8. Eclipse离线安装Emmet插件----web开发者绝对熟悉的插件之一
  9. Java设计模式—工厂方法模式抽象工厂模式
  10. [Android实例] 天天动听 悬浮歌词(迷你歌词)效果解读