你还记的那一年你我学习的-->>用表组织数据*(数据表)
不知不觉,踏上IT之路,光阴似箭,日月如梭.虽好像回到从前,回到那个无忧无虑的童年,回到那个花样少年的青春;回到那个年少幼稚的小学;回到那个整天幻想的初中;回到那个顽强不屈,誓死不弃的高中;回到那个整天望着天空想着大学生活的无忧无虑...
可是时光在流逝,回不去了,对吗?
不悔梦归处,只恨太匆匆.一句话:请珍惜眼前吧!亲们..
好吧!有点伤感!言归正转:数据表
01.四种完整性约束
.实体完整性:针对数据行设置的完整性
.域完整性:针对数据列设置的完整性。
.引用完整性:外键约束
.自定义完整性:为了满足我们的业务需求,我们自己量身定制的完整性约束,一般
通过存储过程。
02.SQL Server中数据类型
下面给大家说说几种常用的几种:
int:存储整型数字
numeric(18, 2):存储小数
decimal(18, 2):存储小数
nvarchar():存储文字
以后严重建议大家只要是保存字符串就用nvarchar()类型,n代表的unicode编码,该编码是国际通用编码,可以避免乱码的出现。var代表长度可变。表中该列真正存储的内容就占它本身的空间,而不会占用该列通过(20)设置的长度所占用的空间。
varchar():存储可变长度的文本
char(4):存储固定长度的文本
text();SQL Sever2000的使用使用的大文本类型,现在2005.2008 2012已经无情的毫无怜悯之心的抛弃了它,
nvarchar(Max)
DateTime:保存日期和时间
照片:image(二进制存储)
--以后我们存储姓名:nvarchar(20)
--存储年龄:int
--存储性别:bit
--存储一篇文章:nvarchar(max)
尽量不要使用ntext或者是text,因为text和ntext读取效率非常低。
03.为表建立约束
01.主键约束
一张表一定要设置主键,否则别人会骂死你。
如果一张表不设置主键,到后续学习框架的时候,框架就欺负你,给你报错。
不能给自增列手动给值,这个值是由系统自动给的。
.非空约束
.默认值约束
.check约束
.外键约束
注意:外键约束只能设置在外键表中
04.外键:
在一张表表A中某列是主键,但是在另外一张表表B中该列不是主键。那么
表A称为主键表,表B称为外键表。
--只能在外键表中设置外键
05.标识列:
为了唯一确定一行数据在该表中唯一而设定的一列。
--应用前提:
01.必须是int(smallint)类型
.在标识规范处设置:标识种子,标识增量
(种子值:)标识种子:从哪个数据开始增长
(步长:)标识增量:每次增长几个数
06.通配符
_:有且只有一个字符
%:任意个任意字符
eg:Email like '%@%'
其中,%代表任意多个字符.关闭后保存表后,该约束建立.以后在向表中输入或插入或更新数据时,约束将起作用,如果Email输入的字符不包括@,将出现错误报告.
07.常见问题:
01.外键把控的不好
.在SQL Server中,字符串和日期类型数据要加单引号,数值类型不用
.每张表中必须都有一个主键,没有主键的表是不行的。
.主键列不允许为空
.不推荐使用复合主键,主键列选择依据:尽量简单。
06.如果找不到有意义的列作为表的主键,那么就加多一列ID作为
该表的主键列。
到这里我们的知识就讲完了!是不是总是不能尽兴呀!不好意思,时间有限,就此别过,下次再聊楼!
你还记的那一年你我学习的-->>用表组织数据*(数据表)的更多相关文章
- 还需要注册的是我们还有一个是“交差集” cross join, 这种Join没有办法用文式图表示,因为其就是把表A和表B的数据进行一个N*M的组合,即笛卡尔积。表达式如下:
还需要注册的是我们还有一个是"交差集" cross join, 这种Join没有办法用文式图表示,因为其就是把表A和表B的数据进行一个N*M的组合,即笛卡尔积.表 ...
- 记升级一次的http2学习
首先,就先对比下http2和http1.X的区别和升级它的优势吧. 在 HTTP .X 中,为了性能考虑,我们会引入雪碧图.将小图内联.使用多个域名等等的方式.这一切都是因为浏览器限制了同一个域名下的 ...
- 记一次svg反爬学习
网址:http://www.porters.vip/confusion/food.html 打开开发者工具后 页面源码并不是真实的数字,随便点一个d标签查看其样式 我们需要找到两个文件,food.cs ...
- 记Windows服务器Redis 6379被攻击 被设置主从模式同步项目数据
在工作中第一次经历被攻击,我是一个前端,同时复负责维护一个已上线的项目,在最近一段时间小程序与后台经常出现这个报错, 搜了下说我的从机是只读模式,不能写入,问了同事得知这个项目是单机模式,根本不存在从 ...
- 容器使用的12条军规——《Effective+STL中文版》试读
容器使用的12条军规——<Effective+STL中文版>试读 还 记的自己早年在学校学习c++的时候,老师根本就没有讲STL,导致了自己后来跟人说 起会C++的时候总是被鄙视, ...
- 利用memcached构建高性能的Web应用程序(转载)
面临的问题 对于高并发高访问的Web应用程序来说,数据库存取瓶颈一直是个令人头疼的问题.特别当你的程序架构还是建立在单数据库模式,而一个数据池连接数峰 值已经达到500的时候,那你的程序运行离崩溃的边 ...
- Memcache应用场景介绍,说明
面临的问题 对于高并发高访问的Web应用程序来说,数据库存取瓶颈一直是个令人头疼的问题.特别当你的程序架构还是建立在单数据库模式,而一个数据池连接数峰 值已经达到500的时候,那你的程序运行离崩溃的边 ...
- memcache的应用场景和实现原理
面临的问题 对于高并发高访问的 Web应用程序来说,数据库存取瓶颈一直是个令人头疼的问题.特别当你的程序架构还是建立在单数据库模式,而一个数据池连接数峰 值已经达到500的时候,那你的程序运行离崩溃的 ...
- 【转】memcached工作原理介绍
FROM: http://my.oschina.net/flynewton/blog/8984 官方主页: http://memcached.org/ 面临的问题 对于高并发高访问的Web应用程序来 ...
随机推荐
- Xcode报错:“Your build settings specify a provisioning profile with the UUID..... however, no such provisioning profile was found”
运行环境: Xcode5 & 5.0及以上版本 对工程进行Archive打包的时候出现如下错误 问题描述: Code Sign error: No matching provisionin ...
- python-推荐
users={"Angelica": {"Blues Traveler": 3.5, "Broken Bells": 2.0, " ...
- Oracle的model语句入门-转
Model语句是Oracle 10g的新功能之一. 本文通过一些简单的例子帮助理解Model语句的用法,复杂使用场景请参考其他文章. 环境:当然需要Oracle 10g以上,本人是在11g上测试的. ...
- 【工作代码】复杂 JSON 值替换处理
总结下最近的工作遇到的点:入参复杂 JSON 层层嵌套,Java 怎么优雅的处理. 一.关于 JSON JSON 是类似 XML 用于存储和交互文本信息.但优于 XML ,其更小,更快,更易懂和解析. ...
- 谈一下OOP的乱用现象
很久很久以前写了两篇设计模式乱用的文章,最近心血来潮,突然想写篇OOP乱用. 最近在移植一个旧项目,接手过程很多嘈想吐,开一篇谈一下OOP的乱用. 大多数公司用MVC是为了解耦合,但是这套代码的MVC ...
- mysql查看和修改最大数量
通常,mysql的最大连接数默认是100, 最大可以达到16384.1.查看最大连接数:show variables like '%max_connections%';2.修改最大连接数方法一:修改配 ...
- using-ef-code-first-with-an-existing-database
http://weblogs.asp.net/scottgu/using-ef-code-first-with-an-existing-database http://weblogs.asp.net/ ...
- SNF开发平台WinForm之十一-程序打包-SNF快速开发平台3.3-Spring.Net.Framework
原来我们用的是微软自带的打包工具去打包,但感觉好像也是第三方做的打包并且很是麻烦,还有时不成功报错.那综合考虑就找一个简单实用的打包工具吧,就找到了NSIS这个.具体打包步骤如下: 1.安装NSIS ...
- smartjs 0.3 DataManager 发布&介绍
在0.3版加入了DataManager,基于策略的数据管理模块:是SmartJS中比较重要的一个系列.整个个DataManager模块包括有:dataManager,dataPolicyManager ...
- Entity Framework访问MySQL数据库的存储过程并获取返回值
一.创建MySql存储过程 1, CREATE PROCEDURE `InsertAlarmInfo`(in businessindex int, in providerindex int, in ...