SQL Serever学习6——数据表
数据表
表的构成
数据库中的基本表由记录(行)和字段(列)构成,SQLServer2008每个表可以有1024个列,每个列可以有8060字节(不包括iamge,ntext,text类型)。
- 记录(Record):表中的行,保存某一个相关属性的一组数据。
- 字段(Field):表中的列,保存某些事物的某一个属性值。
表的分类
- 系统表,保存系统信息,只有管理员有权使用
- 临时表,数据库运行中创建的临时存储数据的表,断开连接被删除
- 分区表,数据量很大时,可以将其中数据分成多个部分,分别放在数据库的多个文件组中,访问时不是访问整个数据表,而是分区表,大大提高了访问速度
数据类型
- 数字类型,bigint,int smallint,tinyint,decimal,bit,float,real
- 日期类型,datetime,smalldatetime
- 字符类型,char,varchar,nchar,nvarchar,text
- 货币类型,money,smallmoney
- 二进制类型,binary,varbinary,image
数据表创建



数据表的高级设置
- 数据的完整性
- 实体完整性,通过索引,UNIQUE唯一约束,PRIMARY KEY主键约束,IDENTITY列标识,实现
- 域完整性,特定字段的有效性,可以通过数据类型,check约束限制格式,foreign key约束,default定义,not null定义来实现
- 参照完整性,通过foreign key和check约束实现
- 用户定义完整性,包括各种约束,存储过程,触发器实现
- 主键和外键
- 主键primary key,可以使用多个字段组合作为主键,但是主键要尽量少,并且要稳定
- 外键foreign key
- 标识列
- 标识列IDENTITY需要设置种子(初始化值,一般为1)和增量(新增数据自增的值,一般为1)
- 默认值
- 默认值default,为了减少用户工作,设置默认值,用户输入时,系统会自动添加
- 检查约束
- check约束,定义列可以接受的数据值或者格式,比如 价格>0
设置主键
选择表,右键,设计,打开表的设计视图,然后选择商品编号,右键,选择设置主键,设置好以后会在字段左边出现一把钥匙图标



设置默认值
选择品牌字段,在下方的列属性,默认值或绑定中输入:A牌。然后回车,系统会自动加引号。

设置check约束
选进价,右键,选择check约束

点击添加,修改约束名称为:CK_商品表_1

设置表达式,进价>0,然后关闭,然后记得保存。

输入数据进行验证

前一种方法是修改表结构,另外一种方法是直接添加约束


未完待续。。。
SQL Serever学习6——数据表的更多相关文章
- SQL Serever学习8——数据表3
创建索引 索引就像是字典的目录一样,可以快速的指定需要的数据. 有没有索引的区别 一个没有索引的集合,如果我们需要查找某一个对象,需要遍历整个集合,直到找到匹配的对象,整个工作费时费力,这只是找一个对 ...
- SQL Serever学习7——数据表2
修改数据表的属性 保存数据表的修改的时候,总会弹出阻止修改的警告. 解决方法2种: 1.可以使用T-sql语句强行修改 2.工具>选项>设计器>表设计器和数据库设计器>阻止保存 ...
- Sql Server系列:数据表操作
表是用来存储数据和操作数据的逻辑结构,用来组织和存储数据,关系数据库中的所有数据都表现为表的形式,数据表由行和列组成.SQL Server中的数据表分为临时表和永久表,临时表存储在tempdb系统数据 ...
- 使用Sql语句快速将数据表转换成实体类
开发过程中经常需要根据数据表编写对应的实体类,下面是使用sql语句快速将数据表转换成对应实体类的代码,使用时只需要将第一行'TableName'引号里面的字母换成具体的表名称就行了: declare ...
- 【SQL Server】sql server更改了数据表的字段/新增数据表的字段 无法保存
sql server更改了数据表的字段/新增数据表的字段 无法保存 解决方法:进入 工具-->选项-->Designers-->表设计器和数据库设计器-->取消勾选 即可
- MyBatis学习(二)---数据表之间关联
想要了解MyBatis基础的朋友可以通过传送门: MyBatis学习(一)---配置文件,Mapper接口和动态SQL http://www.cnblogs.com/ghq120/p/8322302. ...
- 定制Asp.NET 5 MVC内建身份验证机制 - 基于自建SQL Server用户/角色数据表的表单身份验证
背景 在需要进行表单认证的Asp.NET 5 MVC项目被创建后,往往需要根据项目的实际需求做一系列的工作对MVC 5内建的身份验证机制(Asp.NET Identity)进行扩展和定制: Asp.N ...
- SQLite学习手册(数据表和视图)
如何列出SQLite数据库中的所有表 SQLite数据库中的信息存在于一个内置表sqlite_master中,在查询器中可以用 select * from sqlite_master 来查看,如果只要 ...
- MySQL学习3 - 数据表的操作
本节掌握 一.存储引擎(了解) 二.mysql支持的存储引擎 1.InnoDB 存储引擎 2.MyISAM 存储引擎 3.NDB 存储引擎 4.Memory 存储引擎 5.Infobright 存储引 ...
随机推荐
- .NET处理HTTP请求
第一种:使用HttpWebRequest string result = ""; HttpWebRequest request = (HttpWebRequest)WebReque ...
- .Net生成导出Excel
概述 在做.Net web开发的过程中经常需要将查出的数据导成Excel表返给用户,方便用户对数据的处理和汇总.这里我将导出Excel表格的代码做一个总结,这也是我项目中经常用到的,代码简单易懂,使用 ...
- Promise之你看得懂的Promise
本文由作者陈旭锋(任职网易考拉)授权网易云社区发布. Promise源码详解 学习知识要善于思考,思考,再思考. -- 爱因斯坦 1.回调地狱 曾几何时,我们的代码是这样的,为了拿到回调的结果,不得不 ...
- jquery屏蔽掉键盘enter提交 onkeydown
屏蔽掉enter提交onkeydown onkeydown="if(event.keyCode==13){return false;}"
- Struts2、SpringMVC、Servlet(Jsp)性能对比 测试
Struts2.SpringMVC.Servlet(Jsp)性能对比 测试 . Servlet的性能应该是最好的,可以做为参考基准,其它测试都要向它看齐,参照它. 做为一个程序员,对于各个框架的性能要 ...
- 【k8s】kubernetes(k8s)介绍
转自 http://blog.csdn.net/Real_Myth/article/details/78719244 一.Kubernetes系列之介绍篇 •Kubernetes介绍 1.背景介绍 ...
- oracle常用cmd命令
登陆 sqlplus username/password; 切换: conn username/password; 显示当前登陆用户: show user; 查看用户列表 select usernam ...
- BLE pairing vs. bonding
differece between pairing and bonding .see
- 通过view实现字段的只读、隐藏操作【转】
原文地址:http://cn.openerp.cn/view_groups/ 在OpenERP V7视图(ir.ui.view)多了一个非常有用的字段(groups_id) 'groups_id': ...
- 学习Linux最简单的方法
大多数初学者在刚刚接触Linux都会有非常陌生的感觉.往往会有一些疑惑和问题.而我们就沿着这些问题,从远及近,从宏观到微观来理解Linux的简洁和美丽. 问题1:Winows有注册表,为什么Linux ...