每天一点数据库之-----Day 2 创建与管理数据库表
每天一点数据库之-----Day 2 创建与管理数据库表
----转载请注明出处:coder-pig
本节引言:
本节介绍的是数据库中表的创建与管理,另外,因为不同DBMS所
支持的数据类型有所差别,这里就不慢慢阐述了,有需要的自行百度~
1.创建一个最简单的表
假如:我们定义一个名叫
T_Person的表,表中有三个字段,FId(人员id),FName(人员姓名)
FAge(人员年龄),数据类型依次是:整数,长度不确定的字符串类型,整数
SQL语句如下:
虽然可以这样写,但是却不建议这样写,因为当字段太多的时候,这样写会过于杂乱,
而且很容易写错,另外,报错的时候是根据行号来进行提示错误信息的,所以建议你还是
按下面这种写法写吧:
ps:另外,切记最外层用的是"()"圆括号而非"{}"尖括号!!!
2.定义非空约束
有些时候,某些字段的值不能够为空值,我们可以在定义类型后增加NOT NULL
如:上面建表那里,我们设FId为非空,先把T_Person表删掉哦!
执行下述SQL代码:
会发现表结构中的FId变成了不允许NULL值:
当然,可以为多个字段设置NOT NULL
3.定义默认初始值
很多时候,在往数据库中录入数据的时候,某些字段通常都有默认初始值,比如,员工表的在职情况
大多数是在职的,设置了默认值,录入的时候就可以少写一个字段~这里演示设置年龄初始值为18
比如我们添加一个简单的记录:1 Tom ,故意不写FAge的值,运行下述代码后:
查询结果:
4.定义主键
主键,前面已经讲过,唯一识别一行记录的字段,特点是:唯一和非空!!!
另外建议为每个表都定义一个主键,因为表关联的时候,关联的媒介就是
关联表的主键!我们再建表的时候,把FId设置为主键,SQL语句如下:
如果是在MSSQL中,还可以看到一个小钥匙:
当然我们也可以自行验证主键的唯一与非空,只需要在加数据的时候弄个重复的Fid或者NULL值
就会看到结果了!
另外,还有一个叫做联合主键的玩意:就是由两个或以上个字段的组合来代替主键,
比如PRIMARY KEY (Cid,Sid)不过建议还是少用这东西,因为效率低,而且会让数据库
结构设计变得糟糕,还有外键关联的问题,结果就会增加开发难度咯!所以除非特殊场合,
否则都应该使用唯一主键!
5.表关联之外键
Day 1我们就介绍过表关联了,这里就来编码实现吧
先建立公司信息表T_FIRM:
接下来就到员工信息表了,这里就用到外键了!
好了,接下来这两个表就建立了外键关联了,如果是在MSSQL中打开数据库关系图可以看到:
6.修改数据库表
可能我们在一开始创建表的时候,考虑不周或者其他的原因,现在需要对表中的字段
进行删除或者增加,这个时候就要用到ALTER这个东东了
当前的表结构:
实例:
①往之前创建的T_Person表中添加一个FSex的字段
SQL运行前后的结果:
②吃饱饭没事做,我们再把添加进去的FSEX字段去掉
看看运行结果,果然被删掉了!
7.删除数据库表:
直接使用DROP TABLE即可
比如这里删除T_Person表使用以下SQL语句:
另外在MSSQL中使用下述语句报下面的错:
无法对 表 'T_Person' 执行 删除,因为它不存在,或者您没有所需的权限。
笔者是使用sa账户登录的,不应该存在权限的问题,另外T_Person表也是存在的,
原来新建查询的时候没有选择到表所在的数据库那里!!!切记!删除前后比较如下:
ps:另外删除的表具有关联表时,要把关联表删除后才能删除,不然会报错,
比如人员表与公司表,要先删除人员表,再删除公司表,不然会报错哦!
最后说几句:
关于数据库中创建表,删除表,修改表就讲到这里~
每天一点数据库之-----Day 2 创建与管理数据库表相关推荐
- 数据库笔记06:创建并管理数据表
目录 /* 预备任务:创建数据库"选课",包含一个数据文件与一个日志文件 */ /* 任务:创建数据表(CREATE TABLE) */ --1. 创建Department表(表设 ...
- 数据库笔记05:创建与管理数据库
/**************************** 第五单元:创建与管理数据库 *****************************/ /* 任务:创建数据库friend,包含两个数据 ...
- SQL Server 2008 - 第2章 创建、管理 数据库
第2章 创建数据库 数据库是用来存储数据的空间,它作为存储结构的最高层次是其他一切数据库操作的基础.用户可以通过创建数据库来存储不同类别或者形式的数据. 因此,在本章用户将详细地学习针对数据库的基本 ...
- 实验:使用SSMS创建并管理数据库及其基本表
目录 题目要求 1.创建数据库 2.创建三个表 3.修改限制条件 4.创建及管理约束条件 5.录入基本数据 6.数据的更改和插入 7.分离与附加数据库 题目要求 实验课程 数据库系统原理 专业 计算机 ...
- SQL Server 【附】创建商品管理数据库、学生选课数据库的SQL语句
附:(创建"商品管理数据库"的SQL语句) --建立"商品管理数据库"数据库-- create database 商品管理数据库 on(name='商品管理数据 ...
- oracle之创建和管理数据库用户账户
创建和管理数据库用户账户 sys 查看数据库里有多少用户? select username from dba_users; 9.1.1用户的缺省表空间 每个用户账户都可以指定默认的表空间,用户创建的任 ...
- mysql创建库命令_mysql命令之创建、管理数据库的命令
本节内容: mysql命令之创建.管理数据库 1,创建数据库 注意:创建数据库之前,要先连接Mysql服务器. 命令:create database 例1:建立一个名为xhkdb的数据库 复制代码 代 ...
- 数据库系统概论 实验报告答案 实验三:创建及管理数据表
实验三:创建及管理数据表 一.实验目的 熟悉数据表的特点: 熟悉在Management Stuio中创建.编辑及删除数据表: 熟悉使用T-SQL创建.编辑及删除数据表: 二.实验学时 2学时 三.实验 ...
- 数据库系统概论 实验报告答案 实验二:创建及管理数据表
实验二:创建及管理数据表 一.实验目的 掌握数据库模式的创建方法: 掌握数据表的特点: 掌握在Management Stuio中创建.编辑及删除数据表: 掌握使用T-SQL创建.编辑及删除数据表: 二 ...
最新文章
- C#_asp.net页面转向
- 40万总奖金!顶级云服务免费用!2021全球高性能云计算创新大赛报名中!
- eclipse中查看android源码
- 基于NHibernate的留言本
- leetcode59. 螺旋矩阵 II
- no python application found_为什么我会得到“uWSGI Error Python application not found”?
- VMware服务器虚拟化平台应急方案
- 估值模型不适用_揭开市盈率估值法的真正面纱 | 实战案例系列
- 软件测试中的“银行企业银行对公渠道转账和财务查询和银企对账项目”
- Jenkins-构建项目
- 图像检索基于BOF(Bag-Of-Features Models)
- 服务器FPM日志出现seems busy (you may need to increase pm.start_servers解决办法
- 一张图解释什么是遗传算法_通俗易懂地解释遗传算法
- RISC和CISC,究竟有何不同?
- 【开源】从零构建NB-IOT物联网项目开发,代码实现功能:人体红外传感
- 宝宝生活点滴(2009.12)
- 反向放大器的缺点-运算放大器-运放
- minor.major version 详解
- kotlin面向对象之枚举、印章类
- PC端抖音HTML布局,从抖音网页版上线、微信PC版可发朋友圈,看互联网「全端化」布局...