(一)sql入门 导读
从转行做软件始,就开始接触sql,但还是不怎么深入,回忆3月份找工作的时候,左关联都没有写出来,真是丢脸,以此博客做个认真的开始。
以后的日子,遇到了圆柱体的空心物体,我就应该联想到一样东西,那就是数据库。数据库这个东西就是放数据的仓库。那么什么又是数据呢?数据就是人们对客观事物的描述,就可是数据。如树有高度,有多少片树叶,有绿色等等,这些就算是数据。
计算机时代的到来,让人们不再将数据存放在诸如纸质的资料里,而是存放在存储器里面。如何快速的存取我们得数据呢?人们就设计了一个管理系统,来管理数据的存储和取出。好了,这个系统,就是数据库管理系统。那么现在经常听说的关系型数据库管理系统就是这个了。
关系型数据库里的最简单的存储单元就是表。表与表之间又存在着“关系”。这也是关系型数据库名称的来源。这里我们就好奇了,这个关系是什么呢?关系就是关联,可以这样想,一个表可以通过某种关联找到另一个表里的数据。这个就算是关联。
现在我们进入到表的里面去看看,表的结构是怎么样的?表有行和列之分。行被称为记录。表的列是字段。行与行之间可以通过主键来区分唯一性。对于某一个单元格里放的内容呢,那就要涉及到了这个单元格所处的列了,这个列规定了限制了这个列所有的单元格都要遵守的规范,也就是数据类型,如这列的单元格里面,只能存放字符串,或是只能存放数值类型的等等。按照国际上对关系型数据库的约定的话,各个数据库厂商生产做出来的数据库都应该包含字符串、数值、日期时间类型的数据类型。按我自己的思路我总结了下,就是3+2+1+0。什么意思呢?
1、“3”就是字符串类型、数值类型、日期时间类型。字符串类型又根据长度是否可变分为可变字符串和定长字符串。可变字符串如果变得很大的话,又一种专有的名词来定义,就是大对象类型,如BOLB或TEXT数据类型,前者是二进制字符串,后者如文本的字符串。还有个叫做直义字符串,如“hello”。数值类型呢,就如整数,小数,浮点数。日期时间类型就不用说了。
2、“2”就是null类型和bool类型。
3、“1”就是数据库支持的自定义类型。
4、“0”像个圈,圈就类似区域。故我用”0“来指代数据库里特有的一个名词”域“。域就是某个字段或说某个列能后使用的数据类型的集合,域往往又和约束一起使用,当你去引用一个被约束作用的域后,就可以更加精确的限制某个列能够存储的数据类型。
好了,我们现在对数据库的基本的结构在脑海里有个大致的样子了,就是一个圆柱体里,或者就是某个化工厂里的一个罐罐。哈哈。这里面放了很多二维表,这些表里存放了很多来自客观世界的描述。现在在远处的人们,怎么才能与这个罐罐进行交互呢,用它来存取数据呢?这就要用到一个语言,一个用于人们的客户端与数据库之间进行通信的语言,这个语言就是sql语言。有了这个语言,在远处的某个人,如张三,他想对那个罐罐里的某个表的数据进行查看,他就可以发送一个sql语句到那个罐罐去,那个罐罐接收并处理了那个语句后,如果有数据结果,就会返回出来并发送到张三那去。这个过程就是sql会话。张三能说的话有哪几类能被罐罐数据库理解呢?有如下:
A.数据定义语言DDL。就是定义如表的大致框框如字段是什么,字段的类型是什么,表名是什么等等,这时,这个表只有框架,单元格里并没有存放数据,也就是说记录数是0。
B.数据操作语言DML。就是往数据库里插入、修改、删除记录的操作语言。
C.数据查询语言DQL。就是不操作,仅仅查看。
D.数据控制语言DCL。这是有关于权限的语言。能限制哪些用户能看到哪些数据。
E.数据管理命令。
F.事务控制命令。
具体内容,下回分解。
今日到此为止,晚安!!!
(一)sql入门 导读的更多相关文章
- SQL入门语句之ORDER BY 和GROUP BY
一.SQL入门语句之ORDER BY ORDER BY 是用来基于一个或多个列按升序或降序顺序排列数据 1.从数据库表获取全部数据按字段A的升序排列 select *from table_name o ...
- SQL入门语句之LIKE、GLOB和LIMIT
一.SQL入门语句之LIKE LIKE用来匹配通配符指定模式的文本值.如果搜索表达式与模式表达式匹配,LIKE 运算符将返回真(true),也就是 1.这里有两个通配符与 LIKE 运算符一起使用,百 ...
- SQL入门语句之SELECT和WHERE
一.SQL入门语句之SELECT SELECT语句用于从数据库表中获取数据,结果表的形式返回数据.这些结果表也被称为结果集 1.从数据库表中取部分字段 select 字段A,字段B from tabl ...
- SQL入门语句之INSERT、UPDATE和DELETE
一.SQL入门语句之INSERT insert语句的功能是向数据库的某个表中插入一个新的数据行 1.根据对应的字段插入相对应的值 insert into table_name(字段A, 字段B, 字段 ...
- SQL入门经典(十) 之事务
事务是什么?事务关键在与其原子性.原子性概念是指可以把一些事情当作一个执行单元来看待.从数据库角度看待.他是指应该全部执行或者全部不执行一条或多条语句的最小组合.当处理数据时候经常确保一件事发生另一件 ...
- SQL入门经典(一)之简介
今天是我第一天开通博客,也是我的第一篇博客.以后为大家带来第一篇关于学习技术性文章,这段时间会为大家带来是SQL入门学习.希望大家坚持读下去,因为学历有限.我也是初学者.语言表达能力不好和知识点不足, ...
- SQL入门
# SQL入门 数据库表 一个数据库(database)通常包含一个或多个表(table). 每一个表都有一个名字标识. 表单包含数据的记录(行). 一些重要的SQL命令(常用的吧) 命令 说明 ...
- Linq To sql入门练习 Lambda表达式基础
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...
- sql数据黑马程序员——SQL入门
最近研究sql数据,稍微总结一下,以后继续补充: ---------------------- ASP.Net+Android+IO开辟S..Net培训.等待与您交流! --------------- ...
随机推荐
- python 之sqlalchemy many to many
# -*- coding: utf-8 -*- """ @author: zengchunyun """ from sqlalchemy i ...
- 堆排序 Heapsort
Prime + Heap 简直神了 时间优化好多,顺便就把Heapsort给撸了一发 具体看图 Heapsort利用完全二叉树+大(小)顶锥的结构每次将锥定元素和锥最末尾的元素交换 同时大(小)顶锥元 ...
- *HDU2852 树状数组(求第K小的数)
KiKi's K-Number Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)T ...
- 怎么使用CKEDITOR
出于工作需求,自己在网上找了个文本编辑器控件, 网址是http://ckeditor.com/ 怎么使用? 先插入脚本<script type="text/javascript&quo ...
- Windows 10 Build 14997中Edge浏览器已默认阻止Flash运行
在上周末偷跑的 Windows 10 Build 14997 向我们传递了很多信息,新增了蓝光过滤器等功能,并有望装备在即将到来的 Creators Update 中.经过深入发掘,外媒发现新版系统中 ...
- vpn
https://itunes.apple.com/us/app/sonicwall-mobile-connect/id822514576?mt=12
- INotifyPropertyChanged, Interface
Data Object(class) impliment INotifyPropertyChanged; then the Object can update BindingSource. Impli ...
- opengl中对glOrtho()函数的理解
glOrtho是创建一个正交平行的视景体. 一般用于物体不会因为离屏幕的远近而产生大小的变换的情况.比如,常用的工程中的制图等.需要比较精确的显示. 而作为它的对立情况, glFrustum则产生一个 ...
- angular模块和组件之间传递信息和操作流程的方法(笔记)
angular的模块之间,以及controller.directive等组件之间,是相对独立的,用以实现解耦合. 为实现相互之间传递信息及操作流程,有以下一些机制: 1.事件机制: $scope.$b ...
- 兼容iOS 10 资料整理笔记
原文链接:http://www.jianshu.com/p/0cc7aad638d9 1.Notification(通知) 自从Notification被引入之后,苹果就不断的更新优化,但这些更新优化 ...