说到“数据库”,我总有一种莫名的感觉,在刚刚接触到的数据库中就让我似懂非懂渡过着,于是思考着、于是在冷静的时空中让我回想到了很多的知识,不知你们是怎样过来的,真心希望我的这篇数据库总结能够让我们都有一个更进步的空间。

就像标题中所说的:“数据库之创建与管理数据库表”,或许说不上新颖之作,但我相信应该有能帮大家解决在学习中运到的一些问题,当然谁都不会是完美,都会有不一样的感触,所以也想借此来和大家多多的交流并分享学习数据库时的郁闷与愉快。

那好,就让我们进入我总结”数据库“时空之境吧!!!

如果说创建数据库,那我们首先就应该知道SQL Server中数据类型
         int:存储整型数字
         numeric(18, 2):存储小数
         decimal(18, 2):存储小数(长度上限为18位,逗号前后分别表示为小数的前后)
         nvarchar():存储文字                                                                                                                                                                                unicode编码:
        以后严重建议大家只要是保存字符串就用nvarchar()类型,n代表的unicode编码,该编码是国际通用编码,可以避免乱码的出

现。var代表长度可变。表中该列真正存储的内容就占它本身的空间,而不会占用该列通过(20)设置的长度所占用的空间。
        archar():存储可变长度的文本
        char(4):存储固定长度的文本
       text();SQL Sever2000的使用使用的大文本类型,现在2005.2008  2012已经无情的毫无怜悯之心的抛弃了它,
       nvarchar(Max)通用
       dateTime:保存日期和时间
       照片:image(二进制存储)

为了能让我们在初期对数据库的熟悉,所以特地规范了一些:
       --以后我们存储姓名:nvarchar(20)
       --存储年龄:int
       --存储性别:bit:仅仅包括两个值(true、false)
       --存储一篇文章:nvarchar(max)
      (注意)尽量不要使用ntext或者是text,因为text和ntext读取效率非常低。

其次呢!对于管理表的数据时,我们当然就得有一些约束了,约束中自然是需要相对完整性的,其中就有非常重要的四种,让我们看看吧!

.四种完整性约束
         1.实体完整性:针对数据行设置的完整性 
         2.域完整性:针对数据列设置的完整性。
         3.引用完整性:外键约束
         4.自定义完整性:为了满足我们的业务需求,我们自己量身定制的完整性约束,一般通过存储过程。

以上就是数据库的四种完整性约束,那它们具体的作用是什么,当然就是它们针对数据的设置与约束了,所以这个需要你们仔细的看看了,尤其是主外键之间的关系要理的特别清楚才行,否则你将很难吃透这个数据库,让我们都来理解理解吧!!!

01.主键约束
  老师的这样一句话:“一张表一定要设置主键,否则别人会骂死你“。让我瞬间明白了主键原来这么 重要;
如果一张表不设置主键,到后续学习框架的时候,框架就欺负你,给你报错。
  不能给自增列手动给值,这个值是由系统自动给的。
  02.非空约束:其意相同
  03.默认值约束:其意相同
  04.check约束:通过表达式来给表格中的值定规则
  05.外键约束:在一张表表A中某列是主键,但是在另外一张表表B中该列不是主键。那么表A称为主键表,表B称为外键表。
   (注意:外键约束只能设置在外键表中)

   之后呢!就是我们一般常识的标识列和通用匹配符,虽说简单,但也需要用心去记,否则再简单都终将不再是简单,反而可能会变成心中永远的难点,那么我们就来熟悉熟悉吧!

标识列
 为了唯一确定一行数据在该表中唯一而设定的一列。
--应用前提:
  01.必须是int(smallint)类型
  02.在标识规范处设置:标识种子,标识增量
(种子值:)标识种子:从哪个数据开始增长
(步长:)标识增量:每次增长几个数

通配符:
     _:有且只有一个字符
     %任意个任意字符
       Like ‘’符(用来修饰的)

说了这么多,我们就应该注意一些常见问题了;

01.外键把控的不好
 02.在SQL Server中,字符串和日期类型数据要加单引号,数值类型不用
 03.每张表中必须都有一个主键,没有主键的表是不行的。
 04.主键列不允许为空
 05.不推荐使用复合主键,主键列选择依据:尽量简单。
 06.如果找不到有意义的列作为表的主键,那么就加多一列ID作为该表的主键列。

  剩下的那就是可能会遗漏的一些常识:

数据库表,要想删除有外键关系的表,必须先删除子表(外键表)。

不知不觉已经把数据库的管理数据表的总结差不多写完了,希望能够够帮到你们,不管是你还是我,如果有什么问题,请说出来我们一起去解决,我的进步旅程绝对不能缺少了你,

如果觉得我的总结还不错,那就继续关注我吧!我的”用SQL语句操作数据“即将随风席卷而来,如果你需要,我一定不会让你们等太久的。

数据库(SQL Server)管理数据库表~新奇之处的更多相关文章

  1. 数据库管理工具神器-DataGrip,可同时管理多个主流数据库[SQL Server,MySQL,Oracle等]连接

    前言 DataGrip:Jet Brains出品的一款数据库管理工具(没错,是Jet Brains出品,必属精品).DataGrip整合集成了当前主流数据库(如:SQL Server, MySQL, ...

  2. 数据库表设计时一对一关系存在的必要性 数据库一对一、一对多、多对多设计 面试逻辑题3.31 sql server 查询某个表被哪些存储过程调用 DataTable根据字段去重 .Net Core Cors中间件解析 分析MySQL中哪些情况下数据库索引会失效

    数据库表设计时一对一关系存在的必要性 2017年07月24日 10:01:07 阅读数:694 在表设计过程中,我无意中觉得一对一关系觉得好没道理,直接放到一张表中不就可以了吗?真是说,网上信息什么都 ...

  3. 解决SQL Server管理器无法连接远程数据库Error: 1326错误

    解决SQL Server管理器无法连接远程数据库Error: 1326错误 我们在在使用SQL Server时都会遇到使用SQL Server Management Studio无法连接远程数据库实例 ...

  4. 解决SQL Server管理器无法连接远程数据库的问题(转)

    add by zhj: 本文最后那个数据库别名没搞明白,在我的测试中没有建别名,是可以的.远程登陆时,服务器名称: 服务器IP,端口号 (如223.42.155.248,52134 如果是默认端口号1 ...

  5. sql server的数据库个数、表个数及表的数据量统计

    sql server的数据库个数.表个数及表的数据量统计   --由于今天要监控数据,急需统计实例中1有多少库2库里有多少表3每个表有多少数据 --将写好的代码贴出来,用到如下的: --sysobje ...

  6. SQL Server 2012 数据库笔记

    慕课网 首页 实战 路径 猿问 手记     Python 手记 \ SQL Server 2012 数据库笔记 SQL Server 2012 数据库笔记 2016-10-25 16:29:33 1 ...

  7. SQL Server中数据库文件的存放方式,文件和文件组

    原文地址:http://www.cnblogs.com/CareySon/archive/2011/12/26/2301597.html   SQL Server中数据库文件的存放方式,文件和文件组 ...

  8. 微软ASP.NET网站部署指南(2):部署SQL Server Compact数据库

    1. 综述 对于数据库訪问,Contoso University程序要求以下的软件必须随程序一起部署.由于不属于.NET Framework: SQL Server Compact (数据库引擎) A ...

  9. 使用Oracle Sql Developer将SQL SERVER 2008数据库移植到Oracle 11g

    ORACLE官方提供的Sql Developer自带的Oracle Migration Workbench. 什么是Oracle SQL Developer?在官方页面上,是这样介绍它的: Oracl ...

  10. sql server 2008 数据库管理系统使用SQL语句创建登录用户步骤详解

    介绍了sql server 2008 数据库管理系统使用SQL语句创建登录用户步骤详解 --服务器角色: --固定服务器角色具有一组固定的权限,并且适用于整个服务器范围. 它们专门用于管理 SQL S ...

随机推荐

  1. Shell $? $* $@ 等含义

    $0 ------>脚本名 $1 ------>传入的第一个参数值 $? ------>脚本执行的结果.成功==0,不成功==非0 $* ------>所有参数的内容 $@ - ...

  2. iOS 系统数字键盘左下角加确定按钮

    首先在 viewWillAppear 方法中注册监听相应的键盘通知,并且要在 viewWillDisappear 方法中注销通知- (void)viewWillAppear:(BOOL)animate ...

  3. October 30th Week 45th Sunday 2016

    Genius is nothing but labor and diligence. 天才不过是勤奋而已. Labor and diligence are the requirements for s ...

  4. EditView 输入限制(软键盘限制)

    众所周知EditView有个inputType 属性可以设置输入的类型. 如下设置,则只能输入数字: android:inputType="number" 但是有时候需要自定义输入 ...

  5. iOS 导出 ipa 包时 四个选项的意义

    iOS 导出 ipa 包时 四个选项的意义 如图  在 iOS 到处 ipa包的时候 会有四个选项 1.Save for iOS App Store Deployment 保存到本地 准备上传App ...

  6. [PHP]加密解密函数

    非常给力的authcode加密函数,Discuz!经典代码(带详解) function authcode($string, $operation = 'DECODE', $key = '', $exp ...

  7. Eclipse中使用Maven创建web项目

    一.创建一个Maven项目 1.Eclipse中用Maven创建项目 上图中点击next 2.继续next 3.选maven-archetype-webapp后,next 4.填写相应的信息,Pack ...

  8. 简单爬虫,突破IP访问限制和复杂验证码,小总结

    简单爬虫,突破复杂验证码和IP访问限制 文章地址:http://www.cnblogs.com/likeli/p/4730709.html   好吧,看题目就知道我是要写一个爬虫,这个爬虫的目标网站有 ...

  9. 【Hibernate框架】flush机制

    背景: 一个偶然的机会,我做了一个例子,中间我遇到了一个有意思的问题,就是在执行commit方法之前,做了两次save操作,如下: SessionFactory sf = new Configurat ...

  10. jQuery的DOM操作详解

    DOM(Document Object Model-文档对象模型):一种与浏览器, 平台, 语言无关的规则, 使用该接口可以轻松地访问页面中所有的标准组件DOM操作的分类 核心-DOM: DOM Co ...