从转行做软件始,就开始接触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入门 导读的更多相关文章

  1. SQL入门语句之ORDER BY 和GROUP BY

    一.SQL入门语句之ORDER BY ORDER BY 是用来基于一个或多个列按升序或降序顺序排列数据 1.从数据库表获取全部数据按字段A的升序排列 select *from table_name o ...

  2. SQL入门语句之LIKE、GLOB和LIMIT

    一.SQL入门语句之LIKE LIKE用来匹配通配符指定模式的文本值.如果搜索表达式与模式表达式匹配,LIKE 运算符将返回真(true),也就是 1.这里有两个通配符与 LIKE 运算符一起使用,百 ...

  3. SQL入门语句之SELECT和WHERE

    一.SQL入门语句之SELECT SELECT语句用于从数据库表中获取数据,结果表的形式返回数据.这些结果表也被称为结果集 1.从数据库表中取部分字段 select 字段A,字段B from tabl ...

  4. SQL入门语句之INSERT、UPDATE和DELETE

    一.SQL入门语句之INSERT insert语句的功能是向数据库的某个表中插入一个新的数据行 1.根据对应的字段插入相对应的值 insert into table_name(字段A, 字段B, 字段 ...

  5. SQL入门经典(十) 之事务

    事务是什么?事务关键在与其原子性.原子性概念是指可以把一些事情当作一个执行单元来看待.从数据库角度看待.他是指应该全部执行或者全部不执行一条或多条语句的最小组合.当处理数据时候经常确保一件事发生另一件 ...

  6. SQL入门经典(一)之简介

    今天是我第一天开通博客,也是我的第一篇博客.以后为大家带来第一篇关于学习技术性文章,这段时间会为大家带来是SQL入门学习.希望大家坚持读下去,因为学历有限.我也是初学者.语言表达能力不好和知识点不足, ...

  7. SQL入门

    ​ # SQL入门 数据库表 一个数据库(database)通常包含一个或多个表(table). 每一个表都有一个名字标识. 表单包含数据的记录(行). 一些重要的SQL命令(常用的吧) 命令 说明 ...

  8. Linq To sql入门练习 Lambda表达式基础

    using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...

  9. sql数据黑马程序员——SQL入门

    最近研究sql数据,稍微总结一下,以后继续补充: ---------------------- ASP.Net+Android+IO开辟S..Net培训.等待与您交流! --------------- ...

随机推荐

  1. GO语言练习:反射

    列举几个反射的例子:1)简单类型反射,2)复杂类型反射,3)对反射回来的数据的可修改属性 1.简单类型反射 1.1)代码 package main import ( "fmt" & ...

  2. mac java环境变量设置

    Mac下添加java环境变量 方法一:全局配置   1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 #临时提权   sudo su   #输入密码   vi /et ...

  3. windows环境 andorid JNI开发

    1.下载并安装GNUstep 下载地址:http://www.gnustep.org/experience/Windows.html 安装文件 a.GNUstep MSYS System   b.GN ...

  4. iOS UIView 动画浅谈

    UIView 等会效果简单实现,哪一个登录页面的demo来举例子吧. + (void)animateWithDuration:(NSTimeInterval)duration animations:( ...

  5. info.plist、pch和四大对象(UIApplication、UIApplicationDelegate、UIWindow、UIViewController)

    本文目录 1.程序配置文件info.plist,全局头文件pch 2.应用程序对象UIApplication介绍 3.UIApplicationDelegate介绍,程序启动过程 4.UIWindow ...

  6. MySQL(Percona Server) 5.6 主从复制

    MySQL(Percona Server) 5.6.15 主库:192.168.2.21 从库:192.168.2.22 例如我们同步的数据库为:test. 如果需要同步多个数据库下面会有说明. My ...

  7. python UnicodeDecodeError: 'ascii' codec can't decode byte 0xa6 in position 907: ordinal not in range(128)

    import sysreload(sys)sys.setdefaultencoding('utf-8')

  8. 关于页面中table中相同的列自动合并

    代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w ...

  9. Linq分组

    1.lin语句 int[] nums = { 5, 4, 1, 3, 9, 8, 6, 7, 2, 0, 3 }; DataTable table = new DataTable("Numb ...

  10. angular 数据绑定

    1.ng-band 使用在index.html页面使用,该页面不要直接使用双花括号,否则网络延迟的时候页面会显示双花括号,由于通常只在index.html里导入angular.js,所以在其他模板页面 ...