前端进阶之旅前端进阶之旅
基础篇
进阶篇
高频篇
精选篇
手写篇
原理篇
面经篇
自检篇
每日一题
  • 综合

    • 综合题型
    • 其他问题
    • 设计模式
    • 思维导图
    • 学习路线
  • 前端基础

    • HTTP
    • 浏览器
    • 计算机基础
  • 进阶学习

    • NPM工作流
    • Docker
    • Canvas
    • Node学习指南
    • 前端综合文章
  • 其他

    • Handbook
    • 职场话题
    • CSS可视化
  • 框架文档

    • React
    • Vue3
    • Vite
    • Svelte
    • Angular
    • NodeJS
    • Egg
    • Nest
    • Koa
    • Express
    • Electron
    • Ionic
    • Taro
    • Uniapp
    • React Native
    • Webpack
    • Rollup
    • Jquery API
    • Bootstrap
    • Axios
    • Lodash
    • RXJS
    • Sequelize
    • TypeORM
    • Mongoose
    • GraphQL
    • Puppeteer
    • Sass
    • Less
    • Umi4
    • Miniprogram
  • 文档教程

    • Cheatsheets
    • Devdocs有可能是全球最全的文档库
    • Overapi
    • JavaScript 标准参考教程
    • ES6 入门教程
    • MDN在线文档
    • Typscript中文文档
    • JavaScript Promise迷你书(中文版)
    • Canvas API中文
    • Git中文手册
    • 云开发Cloudbase
    • Serverless中文文档
  • UI组件

    • Ant Design React
    • Ant Design Vue
    • Ant Design Pro
    • ProComponents
    • 腾讯Tdesign
    • NutUI京东风格的轻量级移动端 Vue 组件库
    • Semantic UI Vue
    • Cube UI Vue滴滴
    • Iview UI
    • 有赞Vant Vue3
    • 有赞Vant 小程序
    • Element UI Vue3
  • 可视化

    • Antv
    • Bizcharts
    • Threejs
    • D3js
    • Highcharts
    • Echarts
  • 配置相关

    • ESLint
    • Babel
    • Nginx中文文档
    • Github Action中文
    • Docker官方文档
    • Jenkins官方文档
  • 后端相关

    • Spring官方文档中文版
    • Spring Boot官方文档
    • Spring Cloud官方文档
    • Java8官方文档
    • maven官方文档
    • Tomcat 8官方文档
    • Kafka中文文档
    • MyBatis中文文档
    • RabbitMQ中文文档
    • Dubbo中文文档
    • Netty官方文档
    • Elasticsearch官方文档
    • K8S官方文档
  • 实用工具

    • 在线正则表达式调试工具
    • 在线正则表达式可视化
    • 常用正则表达式大全
    • 可以在线看代码流程的网站:loupe
    • 在线MD5编码工具
    • 在线JWT解码工具
    • 在线JSON解析
    • 在线文本比对
    • 在线JS代码格式化
    • 在线SQL压缩格式化
    • 在线XML压缩格式化
    • 在线时间戳转化工具
    • 在线RGB颜色转化工具
    • 在线HTTP在线接口测试工具
    • 在线IP地址查询
    • 在线菜鸟综合导航工具
  • 在线编程

    • MipCode快速的在线代码创作工具
    • Codepen
    • Jsbin
    • CodeSandBox在线快速学习React/Vue
    • Vue SFC Playground
    • Vue3 模板在线解析查看编译结果
    • Svelte Playground
    • 在线尝试Babel编译
    • Typescript在线编译
    • AST可视化编辑
    • 在线尝试Rollup打包
    • Prettier Playground
    • Stackblitz基于VSCODE的WEBIDE
    • NPM Runkit在浏览器中快速学习及尝试Node.js模块
    • Play with Docker在线体验
  • CSS相关

    • 用来帮助大家查找CSS的相关属性的语法,以及使用方法
    • 提供了CSS相关属性的浏览器兼容表,同时提供了对应属性资源
    • Flex在线动态练习
    • 贝塞尔曲线生成工具
    • SCSS在线转CSS
    • Clip-path在线生成器
    • Animate.css动画效果
    • 按需定制CSS动画效果
    • 一份清单,按字母表顺序列出了每个CSS属性
    • CSS按钮生成器
    • Css3按钮动画
    • CSS3渐变样式生成器,类似Photoshop中的渐变界面
    • CSS3 Maker可在线演示渐变阴影旋转动画并生成代码
    • CSS3 Tool非常方便的生成背景渐变、阴影、旋转和边框圆角效果
    • SVG背景生成
    • 多张图片合成雪碧图
    • 汇集了实现各种加载效果的CSS代码片段
    • SVG滤镜
    • HTML5 元素标签含义大全(元素周期表)
    • HTML语义化
    • KakaCss快速生成Css样式,在任意网站复制内容,再到本页面Ctrl+V
    • CSS参考手册
    • 各种各样的loading效果
    • CSS shadow generator
    • 通过拖拽的形式生成需要的border radius
    • 花式半径生成器-通过拖拽的形式生成需要的border radius
    • cssgrid-generator
  • 综合

    • 可视化学习算法网站
    • 在线Nginx配置
    • React生命周期查看网站
    • CodeFun设计稿智能生成源代码
    • Imgcook由设计稿一键智能生成代码的大厨
  • 创作必备

    • 在线画图processon
    • Draw.io免费的流行的流程图工具
    • 在线思维导图mindline
    • 在线字数统计
    • 在线mardown排版
    • 在线免费图床
    • 在线代码截图carbon
    • 在线短链生成
    • 在线文本替换
    • 在线文件压缩
    • 在线多媒体转换器
    • 在线PDF转化工具SmallPdf
    • 在线任意文件的格式转换Convertio
    • 在线PS工具
    • 在线抠图工具
    • LOGO在线制作
    • 在线制作海报设计工具
    • Open source icons
    • 表情包在线网站
    • 图片智能放大工具
    • ICO图标在线生成
    • 视频转GIF工具
    • 音频在线处理
    • 多图合成GIF工具
    • 在线图片压缩工具
    • Pixabay图片素材库
    • Unsplash图片素材库
    • Pexels图片素材库
小程序题库
公众号动态
博客动态
前端导航
基础篇
进阶篇
高频篇
精选篇
手写篇
原理篇
面经篇
自检篇
每日一题
  • 综合

    • 综合题型
    • 其他问题
    • 设计模式
    • 思维导图
    • 学习路线
  • 前端基础

    • HTTP
    • 浏览器
    • 计算机基础
  • 进阶学习

    • NPM工作流
    • Docker
    • Canvas
    • Node学习指南
    • 前端综合文章
  • 其他

    • Handbook
    • 职场话题
    • CSS可视化
  • 框架文档

    • React
    • Vue3
    • Vite
    • Svelte
    • Angular
    • NodeJS
    • Egg
    • Nest
    • Koa
    • Express
    • Electron
    • Ionic
    • Taro
    • Uniapp
    • React Native
    • Webpack
    • Rollup
    • Jquery API
    • Bootstrap
    • Axios
    • Lodash
    • RXJS
    • Sequelize
    • TypeORM
    • Mongoose
    • GraphQL
    • Puppeteer
    • Sass
    • Less
    • Umi4
    • Miniprogram
  • 文档教程

    • Cheatsheets
    • Devdocs有可能是全球最全的文档库
    • Overapi
    • JavaScript 标准参考教程
    • ES6 入门教程
    • MDN在线文档
    • Typscript中文文档
    • JavaScript Promise迷你书(中文版)
    • Canvas API中文
    • Git中文手册
    • 云开发Cloudbase
    • Serverless中文文档
  • UI组件

    • Ant Design React
    • Ant Design Vue
    • Ant Design Pro
    • ProComponents
    • 腾讯Tdesign
    • NutUI京东风格的轻量级移动端 Vue 组件库
    • Semantic UI Vue
    • Cube UI Vue滴滴
    • Iview UI
    • 有赞Vant Vue3
    • 有赞Vant 小程序
    • Element UI Vue3
  • 可视化

    • Antv
    • Bizcharts
    • Threejs
    • D3js
    • Highcharts
    • Echarts
  • 配置相关

    • ESLint
    • Babel
    • Nginx中文文档
    • Github Action中文
    • Docker官方文档
    • Jenkins官方文档
  • 后端相关

    • Spring官方文档中文版
    • Spring Boot官方文档
    • Spring Cloud官方文档
    • Java8官方文档
    • maven官方文档
    • Tomcat 8官方文档
    • Kafka中文文档
    • MyBatis中文文档
    • RabbitMQ中文文档
    • Dubbo中文文档
    • Netty官方文档
    • Elasticsearch官方文档
    • K8S官方文档
  • 实用工具

    • 在线正则表达式调试工具
    • 在线正则表达式可视化
    • 常用正则表达式大全
    • 可以在线看代码流程的网站:loupe
    • 在线MD5编码工具
    • 在线JWT解码工具
    • 在线JSON解析
    • 在线文本比对
    • 在线JS代码格式化
    • 在线SQL压缩格式化
    • 在线XML压缩格式化
    • 在线时间戳转化工具
    • 在线RGB颜色转化工具
    • 在线HTTP在线接口测试工具
    • 在线IP地址查询
    • 在线菜鸟综合导航工具
  • 在线编程

    • MipCode快速的在线代码创作工具
    • Codepen
    • Jsbin
    • CodeSandBox在线快速学习React/Vue
    • Vue SFC Playground
    • Vue3 模板在线解析查看编译结果
    • Svelte Playground
    • 在线尝试Babel编译
    • Typescript在线编译
    • AST可视化编辑
    • 在线尝试Rollup打包
    • Prettier Playground
    • Stackblitz基于VSCODE的WEBIDE
    • NPM Runkit在浏览器中快速学习及尝试Node.js模块
    • Play with Docker在线体验
  • CSS相关

    • 用来帮助大家查找CSS的相关属性的语法,以及使用方法
    • 提供了CSS相关属性的浏览器兼容表,同时提供了对应属性资源
    • Flex在线动态练习
    • 贝塞尔曲线生成工具
    • SCSS在线转CSS
    • Clip-path在线生成器
    • Animate.css动画效果
    • 按需定制CSS动画效果
    • 一份清单,按字母表顺序列出了每个CSS属性
    • CSS按钮生成器
    • Css3按钮动画
    • CSS3渐变样式生成器,类似Photoshop中的渐变界面
    • CSS3 Maker可在线演示渐变阴影旋转动画并生成代码
    • CSS3 Tool非常方便的生成背景渐变、阴影、旋转和边框圆角效果
    • SVG背景生成
    • 多张图片合成雪碧图
    • 汇集了实现各种加载效果的CSS代码片段
    • SVG滤镜
    • HTML5 元素标签含义大全(元素周期表)
    • HTML语义化
    • KakaCss快速生成Css样式,在任意网站复制内容,再到本页面Ctrl+V
    • CSS参考手册
    • 各种各样的loading效果
    • CSS shadow generator
    • 通过拖拽的形式生成需要的border radius
    • 花式半径生成器-通过拖拽的形式生成需要的border radius
    • cssgrid-generator
  • 综合

    • 可视化学习算法网站
    • 在线Nginx配置
    • React生命周期查看网站
    • CodeFun设计稿智能生成源代码
    • Imgcook由设计稿一键智能生成代码的大厨
  • 创作必备

    • 在线画图processon
    • Draw.io免费的流行的流程图工具
    • 在线思维导图mindline
    • 在线字数统计
    • 在线mardown排版
    • 在线免费图床
    • 在线代码截图carbon
    • 在线短链生成
    • 在线文本替换
    • 在线文件压缩
    • 在线多媒体转换器
    • 在线PDF转化工具SmallPdf
    • 在线任意文件的格式转换Convertio
    • 在线PS工具
    • 在线抠图工具
    • LOGO在线制作
    • 在线制作海报设计工具
    • Open source icons
    • 表情包在线网站
    • 图片智能放大工具
    • ICO图标在线生成
    • 视频转GIF工具
    • 音频在线处理
    • 多图合成GIF工具
    • 在线图片压缩工具
    • Pixabay图片素材库
    • Unsplash图片素材库
    • Pexels图片素材库
小程序题库
公众号动态
博客动态
前端导航
SqlServer2005学习总结
首页
2016-05-17 17:42:17
DataBase
sql

# 第一部分:数据库相关概念

什么是数据库

  • 狭义:

  • 存情数据的仓库

  • 广义:

  • 可以对数据进行存储和管理的软件以及数据本身统称为数据库

数据库是由表、 关系、 操作组成

为什么需要数据库

  • 几乎所有的应用软件的后台都需要数据库

  • 数据库存储数据占用空间小容易持久保存

  • 存储比较安全

  • 容易维护和升级

  • 数据库移植比较容易

  • 简化对数据的操作

  • 为将来学习0racle做准备

  • B/s架构里面包含数据库 数据库的安装和卸载

  • sq12000

  • 解决挂起的问题

预备知识

  • 学习SqlServer2005必须的先学一门编程语言么
  • 不需要,但是懂一门编程语言的话会有助于学习sqlserver2005 的TL SQ

数据结构和数据库的区别

  • 数据库是在应用软件级别研究数据的存储和操作数据结构是在系统软件级别研究数据的存储和操作

什么是连接 【重点】

  • 有了编程语言为什么还需要数据库
  • 对内存数据操作是编程语言的强项, 但是对硬盘数据操作却是编程语言的弱项对硬盘数据操作是数据库的强项, 是数据库研究的核心同题

建议初学者从三个方面学习数据库数据库是如何存储数据的

  • 字段记录表约束(主键外键唯一键非空 check default触发器)

  • 数据库是如何操作数据的 insert update delete T-SQL 存储过程函数触发器

  • 数据库是如何显示数据的 select(重点的重点)

必各的一些操作

  • 如何建数据库
  • 如何删除数据库
  • 如何附加和分高数据库
  • 设置登录用户名和密码
  • 如何创建用户

数据库是如何解决数据存储问题的 【最基础内容, 必须掌握】

1.表的相关数据

  • 字段

  • 一个事物的某一个特征

  • 记录

  • 字段的组合表示的是一个具体的事物

  • 表

  • 记录的组合表示的是同一类型事物的集合

表和字段、记录的关系

  • 字段是事物的属性

  • 记录是事物本身

  • 表是事物的集合

  • 列

  • 字段的另一种称谓

  • 属性

  • 字段的另一种称谓

  • 元组

  • 记录的另一种称谓

2. create table命令

  • 通过图形化界面建表 create table最后一个字段的后面建议不要写逗号说明:简単掌握后面我们会再详细的介绍

3. 什么是约束

  • 定义

    • 对一个表中属性操作的限制叫做约束
  • 分类

  • 主键约束 不允许重复元素選免了数据的冗余

  • 外键约束

    • 通过外键约束从语法上保证了本事物所
    • 关联的其他事物一定是存在的

事物和事物之间的关系是通过外键来体现的

  • check约束

  • 保证事物属性的取值在合法的范围之内

  • default约束

  • 保证事物的属性一定会有一个值

  • 唯一约束

  • 保证了事物属性的取值不允许重复,但允许其中有一列且只能有一列为空

间题:

ul,i que键是否允许多列为空?

答:

  • SqlServer2005只允许一个uni que列为空
  • Oracle1 IG允许多个uni que列为空

not null

  • 要求用户必须的为该属性赋一个值,否则语法出错!

  • 如果一个字段不写n,11也不行not n,11

  • 则默认是rm11即默认允许为空,用户可以不给该字段赋值

  • 如果用户没有为该字段赋值,则该字段的值默认是nd1

要注意nu11和 default的区别

  • 相同点:
  • 都允许用户不赋值
  • 不同点:
  • nu11修饰的字段如果用户不赋值则默认是nu1 1
  • default修饰的字段如果用户不赋値则默认是default指定的那个值

4. 表和约束的异同

  • 数据库是通过表来解决事物的存備同题的

  • 数据库是通过约束来解决事物取值的有效性和合法性的问题

  • 建表的过程就是指定事物属性及其事物属性各种约束的过程

  • 什么是关系

  • 定义: 表和表之间的联系

  • 实现方式

  • 通过设置不同形式的外键来体现表和表的不同关系

  • 分类(假设是A表和B表)

  • 一对一 既可以把表A 的主键充当表B的外键 也可以把表B的主键充当表A的外键

  • 一对多【重点】 把表A 的主键充当表B的外键 或者讲: 把A表的主键添加到B表来充当B表的外键

在多的一方添加外键

  • 多对多 多对多必须的通过単独的一张表来表示

例子

  • 班级和教师
  • 班级是一张表
  • 教师是一张表
  • 班级和教师的关系也是一张表

6. 主键

  • 定义

  • 能够唯一标示一个事物的一个字段或者多个字段的组合, 被称为主键

  • 主键的特点【重点】:

  • 含有主键的表叫做主键表

  • 主键通常都是整数不建议使用字符串当主體(如果主體是用于集群式服务,才可以考虑用字符串当主體)

  • 主键的值通常都不允许修改, 除非本记录被删除

  • 主键不要定义成i d, 而要定义成表名 Id或者表名_i d

  • 要用代理主键,不要用业务主键

  • 任何一张表, 强烈建议不要使用有业务含义的字段充当主键

  • 我们通常都是在表中単独添加一个整型的编号充当主键字段

  • 主键是否连续增长不是十分重要

7. 外键

  • 定义:
  • 如果一个表中的若干个字段是来自另外若干个表的主键或唯一键 则这若干个字段就是外键

注意:

  • 外键通常是来自另外表的主键而不是唯一键, 因为唯一键可能为M11
  • 外键不一定是来自另外的表, 也可能来自本表的主键
  • 含有外键的表叫外建表, 外键字段来自的那一张表叫做主键表

问题:

  • 先删主键表还是外建表?

答集: 先删外建表 如果先删主键表,会报错,因为这会导致外建表中的数据引用失败


# 第二部分:查询

査询【最重要难度最大,考试必考内容,强烈建议所有的学生都要熟练掌握査询的内容】

1.计算列

select* from emp;

  • – *表示所有的
  • – from emp 表示从emp表査询

select empno, ename from emp

seleot ename, sa1 from emp;

fe
Preview
  • 第一部分:数据库相关概念
  • 第二部分:查询

← HTML5+CSS3 最酷的 loading 效果收集7种常用的排序算法总结 →