主键:每个表,只能有一个主键,主键不能为NULL,且必须是唯一的。主键最好是由单个列组成,但这不是必须的,主键也可以是由多个列组成,如果表的两个列组合在一起能唯一标识一个行,而单个列不能,则可以将这两个列组合在一起作为主键。

:在定义表的列时,至少需要定义下列三项:1.列的名称,2.列的数据类型,3.列是否允许为空(NULL)。

列名:列名要简单直观,例如:LastName或者EmployeeID,而不应该使用比较繁琐的名字,例如:EmployeeLastName.

数据类型:选择数据类型的一般规则是,尽量使用最小的数据类型,因为这可以节省内存与磁盘空间。还要注意的是,SQL Server处理数字的效率,比字符高得多,所以应该尽量使用数字。除了数学运算之外,在排序与比较时,也应该优先选择数字,而不是字符。在设计表,为每个列选择数据类型的时,宜保守一些,尽可能使用小而高效的数据类型。与此同时,还应该考虑一些不常见的例外情况,确保所选择的类型,能满足所有这些要求。

char类型:是固定长度的数据类型,用于保存字符数据,可保存的字符数量为1~8000个。

varchar类型:除了长度可变,数据类型和char是相同的,假如定义了一个类型为char(8)的列,那么这个列将占用8个字节,即使该列只包含了3个字符,varchar类型的列,则只占用它需要的空间。通常来讲,char数据类型适合用于数据处理,而varchar类型适合于数据存储。一般的规则是,如果数据都接近所定义的长度,就使用char类型,如果数据差别很大,就使用varchar类型,比如可以使用varchar(167)来保存世界上最长的城市名称。

nchar也是固定长度的数据类型,nvarchar也是长度可变的数据类型。

【读书笔记】--SQL基础概念复习相关推荐

  1. Docker:学习笔记(1)——基础概念

    Docker:学习笔记(1)--基础概念 Docker是什么 软件开发后,我们需要在测试电脑.客户电脑.服务器安装运行,用户计算机的环境各不相同,所以需要进行各自的环境配置,耗时耗力.为了解决这个问题 ...

  2. 《统计自然语言处理》读书笔记 一.基础知识及概念介绍

    最近准备学习自然语言处理相关的知识,主要参考<统计自然语言处理·宗成庆>和<Natural Language Processing with Python>,推荐大家阅读.第一 ...

  3. 读书笔记:云计算概念、技术和架构

    最近开始看之前买了好久的书<云计算概念.技术和架构>,最近公司和部门都在紧锣密鼓地推动云计算在生产运维中部署落地,未来的五年规划更是围绕云计算进行铺开,在这个背景下实在有必要多啃几本关于云 ...

  4. 《数据密集型应用系统设计》读书笔记——数据系统基础

    因为个人兴趣,想学学分布式方面的知识,然后找到了这本<数据密集型应用系统设计>,确实非常的不错,无论对于以前的工程还是现在的科研都有启迪和感悟,所以就写份读书笔记记录一下,里面提到的知识非 ...

  5. 笔记-项目管理基础知识-复习要点

    1. 项目的特点 临时性(一次性).独特性.渐进明确性 2. 项目目标包括成果性目标和约束性目标 ●笔记-项目管理基础知识-项目目标 3. 项目目标的特点 多目标性.有限性.层次性 4. ▲项目管理5 ...

  6. 数据库学习笔记---SQL基础-->层次化查询(START BY ... CONNECT BY PRIOR)

    SQL基础-->层次化查询(START BY ... CONNECT BY PRIOR) 技术qq交流群:JavaDream:251572072  教程下载,在线交流:创梦IT社区:______ ...

  7. Docker笔记1 基础概念和镜像

    基础概念 开发环境deepin linux 15.11.安装docker之后,执行命令: sudo usermod -aG docker $USER_NAME 让docker和当前用户在一个组中,可以 ...

  8. lua笔记1 基础概念

    基础概念 Lua的变量默认是全局的,如果想要清除,只需要设置为nil.没有赋值的变量也是nil.注意lua是动态语言,变量不需要声明类型,而且自动类型转换. b = 1 print(b) b = ni ...

  9. 云计算HCIA学习笔记-云计算基础概念

    第1章 云计算基础概念 1.1 云计算课程安排说明 (IA-虚拟化-FC / IP-Linux OpenStack 桌面云/IE-备份容灾迁移) 1.2 为什么云计算IA讲虚拟化? 提前告知学员,为什 ...

  10. Java编程思想 第四版 读书笔记巩固基础,完善知识框架。

    Java编程思想读书笔记 此笔记仅仅是作者的阅读此书时,发现自己错误认识和不牢固的知识,用来完善作者的知识框架,其列出重点不具有参考性,代码也是为了省工作量,简写代码,能看懂即可,语法并不规范 第一章 ...

最新文章

  1. 开源!北大研究生把《统计学习方法》书中全部算法都实现了!
  2. java中的mmap实现--转
  3. python+mysql:实现一千万条数据插入数据库
  4. VTK:图片之ImageShrink3D
  5. QT右键点击添加库不响应的解决办法
  6. composer设置代理_composer 设置代理
  7. Magento 自定义后台menu Insert dynamical menu in Magento’s Admin
  8. Redis学习总结(10)——缓存雪崩、缓存穿透、缓存并发、缓存预热、缓存更新、缓存降级、缓存算法的概念及解决思路总结
  9. 外星人台式电脑_2020年双11:高端电竞游戏笔记本电脑本推荐:联想、惠普、雷神、ROG、外星人等品牌游戏本挑选指南...
  10. js ajax进度条,js 异步处理进度条
  11. java技术可行性分析_java毕业设计管理系统需求分析
  12. 2022年中级网络工程师备考(网络知识部分)
  13. 两个正态总体均值差的置信区间
  14. 计算机快捷键知识点,电脑常用快捷键复习知识点.pdf
  15. IP地址和long互转
  16. 一键去除txt文本重复行(带界面版)
  17. 关于URP中RendererFeature的使用及毛发效果的几种实现方式
  18. 个人喜欢的8本销售、职场、外企商战类书籍
  19. 彻底关闭删除macOS苹果系统下的.DS_Store文件方法
  20. gis等时圈怎么做_画个圈就叫“等时圈”?别逗了!手把手教你做等时圈

热门文章

  1. 安装face_recognition(ModuleNotFoundError: No module named 'face_recognition')
  2. 编程求一个四位自然数ABCD,它乘以A后变成DCBA
  3. oracle 取表字段,oracle 取多级的表字段
  4. 自由移动的气泡_MBBR工艺—移动床生物膜反应器
  5. delphi listview怎么自动宽度_黑龙江胶带纸管切割机企业该怎么选择
  6. pythontab_PythonTab 中文网简介
  7. BZOJ3673/3674:可持久化并查集
  8. tomcat 严重: Could not contact localhost:8005. Tomcat may not be running.
  9. 惠普公司推出新的数据中心动态冷却技术
  10. Android系统源码分析--Context