T-SQL基础(1) - T-SQL查询和编程基础
2024-10-14 01:58:34
第一范式: 第一范式要求表中的行必须是唯一的,属性应该是原子的(atomic)。这个范式对于关系的定义来说是冗余的,换句话说,如果一个表真可以表示一个关系,那么它一定符合第一范式。
行的唯一性是可以通过在表中定义一个唯一的主键而实现的。
对于属性,只能使用随属性的数据类型定义一起定义的操作来对它们进行操作。和集合定义具有主观性一样,属性的原子性也是主观的。例如,以Employees关系中的雇员名字为例,应该将它表示为一个属性(fullname),两个属性(firstname, lastname),还是三个属性(firstname, middlename, lastname)?应该依据程序而定。
第二范式:非键属性(nonkey attribute)和候选键属性之间必须满足一定的条件。对于每个候选键,每个非键属性都必须完全函数依赖于整个候选键。换句话说,一个非键属性不能只完全函数依赖于候选键的一部分。非正式的说,如果要获取任何非键属性,就必须提供同一行中某个候选键的所有属性值。如果知道了一个候选键的所有属性值,就能够找到任意行的任意属性值。
第三范式:所有非键属性必须非传递依赖于候选键。通俗的说,所有非键属性都必须相互独立。换句话说,一个非键属性不能依赖于其他非键属性。
最新文章
- 关于安卓6.0权限申请 PermissionDog
- 理解javascript中的对话框
- 随便选择两个城市作为预选旅游目标。实现两个独立的线程分别显示10次城市名,每次显示后休眠一段随机时间(1000ms以内),哪个先显示完毕,就决定去哪个城市。分别用Runnable接口和Thread类实现。
- 腾讯优测优分享 | Android碎片化问题小结——关于闪光灯的那些事儿
- [CareerCup] 5.4 Explain Expression ((n &; (n-1)) == 0) 解释表达式
- 使用 Vagrant 打造跨平台开发环境
- MySql 查询一周内最近7天记录
- 【综述】(MIT博士)林达华老师-";概率模型与计算机视觉”
- WordPress BackWPup插件‘tab’参数跨站脚本漏洞
- SuperMap iClient
- iOS程序生命周期 AppDelegate
- phpcms 制作简单企业站的常用标签
- vue-router 中踏过的坑
- python第二天,list和tuple
- MongoDB 安装教程
- 安装CDH5时出错 5.68.168.192.in-addr.arpa domain name pointer bogon.
- fzu1901 kmp
- Debian 使用 cron 执行定时任务
- 1、	小白带你入坑xamarin系列之环境搭建和准备
- drupal中安装CKEditor文本编辑器,并配置图片上传功能 之 方法二
热门文章
- sharepoint 2010 显示和隐藏Ribbon区域条
- 理解 Python 中的线程
- 拿到阿里,网易游戏,腾讯,smartx的offer的过程 (转)
- 在Activity中为什么要用managedQuery()
- iOS发展 ---- 至iPhone 6自适应布局设计 Auto Layout
- mysql增量ID 启动值更改方法
- HTC one/M7电信802d 毒蛇ViperOne2.1.0/高级毒蛇工具/完美root,精简/更多自定义,稳定,流畅ROM
- LAMP配置参考地址
- php(LAMP)开发环境配置相关问题及解决办法
- Android平台调用Web Service:螺纹的引入