本文内容:

  • 什么是数据库
  • 常见数据库
  • 数据库的基本知识
  • 基本SQL语法

1,什么是数据库?

  数据库就是将大量数据保存起来,通过计算机加工,可以高效访问的数据聚合。

  数据库就是长期存储在计算机内,有组织、可共享的集合。

2,常见的数据库:

  Oracle Database    甲骨文公司

  SQL Server       微软公司

  DB2           IBM公司

  POSTGRESQL        开源

  MySQL         开源

  Access         微软公司

注意:虽然数据库各种各样,但是数据库语句之间具有相同之处。

3,数据库基本知识:

  数据库结构:

  服务器端:接收并处理其他程序发出的请求的程序(软件),或安装此类程序的设备(计算机)。

  客户端:向服务器发送请求的程序(软件),或安装此类程序的设备(计算机)。

  库:就是一堆表的数据集合。

  表(table):类似于Excle,由行和列组成的二维表。

  字段:表的列(垂直方向),可以理解为表的表头。

  记录:表的行(水平方向),可以理解为表的数据。

注意:关系型数据库必须以行为单位进行数据读写。

SQL语句种类:

  SQL语句:是由关键字,表名、列名组合成的一条语句。

  三种SQL语句种类:

    DDL(数据定义语言):创建、修改、删除数据库以及数据库中的表等对象。

      CREATE:创建数据库和表等对象。

      DROP:删除数据库和表等对象。

      ALTER:修改数据库和表等对象。    

    DML(数据操作语言):查询或修改表中的记录。

      SELECT:查询表中的数据。

      INSERT:向表中插入数据。

      UPDATE:修改表中的数据。

      DELETE:删除表中的数据。

    DCL(数据控制语言):确认或取消对数据库中的数据变更的执行操作,以及对用户的操作数据库中对象权限的设定。

4,基本SQL语法:

注意:所有SQL语句结尾一定要用英文分号;

  数据库操作:

    [新建数据库]:    CREATE DATABASE 库名;

    [查看所有数据库]:  SHOW DATABASES;

    [查询当前库名]:   SELECT DATABASE();

    [删除数据库]:    DROP DATABASE 库名;

    [使用数据库]:    USE 库名;

  数据表操作:

    [新建表]:      CREATE TABLE 表名(字段名,字段类型);

    [查看所有数据表]:  SHOW TABLES;

    [删除表]:      DROP TABLE 表名;

    [查看表的类型]:   DESC 表名;

    [删除表的字段]:   ALTER TABLE 表名 DROP 字段名;

    [添加表的字段]:   ALTER TABLE 表名 ADD 字段名 字段类型;

    [修改表的字段]:   ALTER TABLE 表名 CHANGE 字段名 修改字段名,修改字段类型;

   补充:

    字段具有属性:

      主键:PRIMARY KEY   [不能为空且唯一]

      自增长:AUTO_INCREMENT

      非空:NOT NULL

      设置编码类型:CHARSET=UTF8

  数据类型:

    字符串类型

    整数类型

    浮点类型

  数据操作:

    [插入数据]:INSERT INTO 表名 values('数据');

    [插入数据]:INSERT INTO 表名 (字段名) values (‘数据’);

    [查询数据]:SELECT * FROM 表名    查询一个表里的所有字段的数据。

    [查询数据]:SELECT 字段 FROM 表名   查询一个表里某字段的所有数据。

    [修改数据]:UPDATE 表名 SET 字段=‘记录’

    [修改数据]:UPDATE 表名 SET 字段=‘记录’ WHERE 字段=某条件(某记录)。

    [删除数据]:DELETE FROM 表名 WHERE 字段=‘记录’。

  补充:

    具有and、or的使用。

    Mysql字符串是可以接受16进制的。

    SQ注入,注入数据不准使用单引号时,可以使用十六进制转换替代,用0x表示。

    注意:十六进制只能代表数据,不能代表其他东西,比如执行语句等。

        SQL语句本身不区分大小写,但是数据区分大小写。      

    采用关键字大写,表名和列名首字母大写的格式。

    单词使用英文空格或换行符隔开。

    常书写的方式:

      字符串、日期:用单引号括起来''

      数字:直接书写,不用加单引号。

与君共勉:

  生活给你压力,

  你就还它奇迹;

  人生给你考验,

  你就还它经验。

  没有什么能难倒自己,

  只要你愿意坚持,

  愿意付出,

  成功就会眷顾你。

网络安全从入门到精通 (第二章-2) 后端基础SQL—MySQL数据库简介及SQL语法的更多相关文章

  1. 网络安全从入门到精通 (第二章-6) 后端基础PHP—表单验证

    本文内容: 什么是表单? 如何创建一个表单: 接收并验证: PHP和数据库交互 1,什么事表单? 表单在网页中主要负责数据采集. 表单由三部分组成: 表单标签:这里面包含了处理表单数据所用动态脚本的U ...

  2. 网络安全从入门到精通(第二章-3)后端基础SQL— MySQL高级查询与子查询

    本文内容: MySQL的基础查询语句 链接查询 联合查询 子查询 渗透测试常用函数 1,MySQL基础查询语句: select * from 表 order  by ASC/DESC; ASC:从小到 ...

  3. 网络安全从入门到精通 ( 第二章-5) 后端基础PHP—简介及基本函数-下

    本文内容: 循环语句 PHP获取表单信息 PHP操作Mysql语句 语法SQL注入 1,循环语句: for循环: 语法:for($x=0,$x<10;$x++){执行语句;} 注意:$x++,先 ...

  4. 网络安全从入门到精通 (第二章-4) 后端基础PHP—简介及基本函数-上

    本文内容 什么是PHP PHP的基础语法 运算符 条件分支语句 1,什么是PHP? PHP(超文本预处理器)是一种通用开源语言,(是动态语言中的一种,动态语言还有ASP,ASPX,JSP). PHP语 ...

  5. 网络安全从入门到精通 (第二章-1) Web安全前端基础

    本文内容: 前端是什么? 前端代码 HTML CSS JS !!!醋成酒的小墨,促成就的小墨,小墨促成就,!!! 1,前端是什么? 网站一般用两部分组成,前端负责展示,后端负责处理请求. 2,前端代码 ...

  6. ABP从入门到精通(2):aspnet-zero-core 使用MySql数据库

    关于 asp.net zero core 项目的启动及说明,请观看我前面的博文 http://www.cnblogs.com/stulzq/p/7237153.html 本操作对于ABP默认项目应该也 ...

  7. SaltStack 入门到精通第二篇:Salt-master配置文件详解

    SaltStack 入门到精通第二篇:Salt-master配置文件详解     转自(coocla):http://blog.coocla.org/301.html 原本想要重新翻译salt-mas ...

  8. ArcGIS for Desktop入门教程_第二章_Desktop简介 - ArcGIS知乎-新一代ArcGIS问答社区

    原文:ArcGIS for Desktop入门教程_第二章_Desktop简介 - ArcGIS知乎-新一代ArcGIS问答社区 1 Desktop简介 1.1 ArcGIS for Desktop ...

  9. 第二章:python基础,数据类型

    """第二章:python基础,数据类型2.1 变量及身份运算补充2.2 二进制数2.3 字符编码每8位所占的空间位一个比特,这是计算机中最小的表示单位.每8个比特组成一 ...

随机推荐

  1. MyBatis学习笔记一:MyBatis最简单的环境搭建

    MyBatis的最简单环境的搭建,使用xml配置,用来理解后面的复杂配置做基础 1.环境目录树(导入mybatis-3.4.1.jar包即可,这里是为后面的环境最准备使用了web项目,如果只是做 my ...

  2. [CF1009F] Dominant Indices (+dsu on tree详解)

    这道题用到了dsu(Disjoint Set Union) on tree,树上启发式合并. 先看了CF的官方英文题解,又看了看zwz大佬的题解,差不多理解了dsu on tree的算法. 但是时间复 ...

  3. Rime输入法一些设定

    有鉴于谷歌搜狗拼音等不太好用,但是博主一直页没找到合心的输入法,直到遇见Rime,中州韵就是我想要的输入法.记录一下自己用的时候的修改,以备查询.注意:缩进不要弄丢,所有更改完都需要重新部署才能生效. ...

  4. javascript学习内容

    http协议 犀牛书 MDN js单线程 let只在代码块内有效 es5只有全局作用域 const变量指向的内存地址不得改动,值不能保证不变 全局变量不加var node.js 更改连接到服务器的方式 ...

  5. iOS适配UIViewView/WKWebView,H5生成长图,仿微信进度条

    前段时间撸代码猥琐发育的时候,设计师老王给了张截图某宝APP上一个生成长图分享的功能,正好公司有这个需求,于是在立马开始操练起来!在万能的度娘上搜集整理资料后发现很多文章介绍的方案对WKWebView ...

  6. 什么是SNAT

    SNAT是源地址转换,其作用是将ip数据包的源地址转换成另外一个地址,可能有人觉得奇怪,好好的为什么要进行ip地址转换啊,为了弄懂这个问题,我们要看一下局域网用户上公网的原理,假设内网主机A(192. ...

  7. C++扬帆远航——1

    问题及代码: /* * Copyright (c) 2016,烟台大学计算机与控制工程学院 * All rights reserved. * 文件名:test.cpp * 作者:常轩 * 完成日期:2 ...

  8. python爬虫-纠正MD5错误认知

    m = md5(".encode()) print(m.hexdigest()) # 25d55ad283aa400af464c76d713c07ad m = md5(".enco ...

  9. Java程序员考研失败后的面试经历,oppo、VIVO、等面经

      温馨提示:有些可能会遗漏个别问题,都是最近一周的面试,有点忘了. 浪潮(一面挂) 你是网络工程的?对网络很了解? 解释一下什么是广播域 怎么划分子网 说一下CSS的几种分类器 数据库中有哪些聚集函 ...

  10. ArrayList集合不能使用foreach增加、删除、修改元素的原因

    大家先看两段代码 第一段代码: List<String> arrayList1 = new ArrayList<String>(); arrayList1.add(" ...