1.mysql入门

1.1.数据库相关概念

1.1.1.什么是数据?

描述事物的符号记录称为数据,描述事物的符号可以是数字、文字、声音、图片、视频等,有多种表现形式,都可以经过数字化后存入计算机

1.1.2.什么是数据库?

数据库(DataBase,简称DB),从字面上理解就是数据仓库,用来存放数据的仓库,这个仓库在计算机存储设备上,按一定的格式存放数据

1.1.3.什么是数据库管理系统

数据库管理系统(DataBase Management System 简称DBMS),数据存储在数据库中,如何科学的组织和存储数据,如何从数据库中高效获取和维护数据,这都是数据库管理系统要完成的事情

需要明白的是,数据库管理系统是一个系统软件,本质上是一个具有组织管理数据的软件,那么具有类似功能的软件就会有很多,例如:MySQL、Oracle、SQLite、Access、SQL Server、Mongodb等

1.1.4.字段、记录、表

字段用来描述事物的某一具体特征,例如,一个商品的商品名称、价格、库存等,可以对应excel表格中的单元格来理解,也就是excel表格中的列

记录可以看作是excel表格中的行,描述一件商品时,需要抽取这件商品的典型特征,商品名称、价格、库存、折扣等,这些特征不同,也会组成不同的记录

数据库中的表也可以看作时excel中的表,是很多行的集合,一个表中可以放n多行

1.1.5.数据库服务器、数据库管理系统、数据库、数据表、记录、字段的关系

在服务器中安装数据库管理系统,提供数据服务,就是我们说的数据库服务器(其实就是一台运行数据库管理系统的远程电脑) 数据库管理系统可以有效管理数据库,数据库中组织了很多数据表,数据表中存放了很多条数据记录,每条记录由多个字段描述而成

1.2.mysql的安装与配置

mac 上安装

brew install mysql

设置密码

mysql_secure_installation

开启服务

brew services start mysql

windows 使用集成环境

工具下载地址:

http://nodeing.com/group/4

1.3.mysql的常用命令

1.3.1.登陆和退出

mysql -uroot -p
exit 或者  \q

1.3.2.查看数据库

SHOW DATABASES;

1.3.3.创建数据库

CREATE DATABASE 数据库名 charset utf8

1.3.4.选择数据库

USE 数据库名

1.3.5.删除数据库

DROP DATABASE  [IF EXISTS] db_name

1.3.6.查看数据表

SHOW TABLES

1.3.7.创建数据表

CREATE TABLE [IF NOT EXISTS] table_name(
column_name data_type,
)

主键约束 PRIMARY KEY 每张数据表只能存在一个主键,主键保证记录的唯一性,主键自动为NOT NULL

自动编号 AUTO_INCREMENT 自动编号必须于主键组合使用 默认情况下,起始值为1,每次增加1

1.4.可视化工具的使用

mysql可视化工具下载地址:http://nodeing.com/group/4/thread/22

1.5.常见数据类型

1.5.1.数字类型

INT 正常大小的整数,可以有符号,也可以没有符号。如果是有符号整数,其允许的取值范围是-2147483648~2147483647;无符号整数的取值范围是从0至4294967295。最高可指定11位数字。

TINYINT 非常小的整数,分为有无符号两种。前有符号时,其允许取值范围是-128127;无符号时的取值范围为0255。所以,最高可指定4位数字。

SMALLINT 较小的整数,分为有无符号两种。前有符号时,其允许取值范围是-3276832767;无符号时的取值范围为065535。所以最高可指定5位数字。

MEDIUMINT 中型大小的整数,分为有无符号两种。前有符号时,其允许取值范围是-83886088388607;无符号时的取值范围为016777215。所以,最高可指定9位数字。

BIGINT 较大型的整数,分为有无符号两种。前有符号时,其允许取值范围为-92233720368547758089223372036854775807;无符号时的取值范围为018446744073709551615。最高可指定20位数字。

FLOAT(M,D) 不带符号的浮点数。M 代表显示长度,D 代表小数位数。这两个参数都不是必需参数,它们默认为10, 2,表示小数点后有2位数字,而整个数字的位数为10(包含小数位数)。FLOAT 类型的小数精度可以达到24位。

DOUBLE(M,D) 不带符号的双精度浮点数。M 代表显示长度,D 代表小数位数。这两个参数都不是必需参数,它们默认为16, 4,表示小数点后有4位数字,而整个数字的位数为 16(包含小数位数)。DOUBLE 类型的小数精度可以达到53位。DOUBLE 与 REAL 同义。

DECIMAL(M,D) 非压缩的无符号浮点数。 在未压缩十进制中,每一位十进制数都对应一个字节。需要定义显示长度(M)和小数位数(D)。DECIMAL 与 NUMERIC 同义。

1.5.2.日期与时间类型

DATE YYYY-MM-DD (年-月-日)格式显示的日期,取值范围从1000-01-01 到 9999-12-31。比如1973年的12月30日就存为 1973-12-30。

DATETIME 按照 YYYY-MM-DD HH:MM:SS 格式组合显示的日期与时间,取值范围从1000-01-01 00:00:00 到 9999-12-31 23:59:59。比如说1973年的12月30日下午3 : 30就存为1973-12-30 15 : 30 : 00。

TIMESTAMP 介于1970年1月1日凌晨与2037年某个时间点之间的一种时间戳。这种格式与之前的 DATETIME 格式相仿,只不过少了数字间的连字符。1973年12月30日下午3 : 30被存为19731230153000(YYYYMMDDHHMMSS)。

TIME 按照 HH:MM:SS 格式存储的时间。

YEAR(M) 用2位或4位格式存储的时间。如果把长度定为2,比如说YEAR(2),那么可以表示从1970年到2069年的这些年份(70-69)。如果把长度定为4,YEAR(4),则可以表示从1901年到2155年。默认长度为4。

1.5.3.字符串类型

CHAR(M) 长度固定的字符串,长度范围从1~255个字符,比如CHAR(5)。在存储时,会向右用空格补齐指定长度。长度并非必须参数,默认长度为1。

VARCHAR(M) 长度不定的字符串,长度范围从1~255个字符。比如:CHAR(25)。在创建VARCHAR字段时,必须定义长度。

BLOB or TEXT 最大长度为65535个字符的字段。BLOB是Binary Large Objects(二进制大型对象)的缩写,专用于保存大量的二进制数据,比如图片或其他类型的文件。TEXT 类型的文件也能保存大型数据。这两者的区别在于存储数据的排序和对比方面,BLOB类型数据是大小写敏感的,而TEXT类型数据则不是。另外,不能指定它们的长度。

TINYBLOB or TINYTEXT 最大长度为255个字符的 BLOB 或 TEXT 字段。同样也不能指定它们的长度。

MEDIUMBLOB or MEDIUMTEXT 最大长度为16777215个字符的 BLOB 或 TEXT 字段。同样也不能指定它们的长度。

LONGBLOB or LONGTEXT 最大长度为4294967295个字符的 BLOB 或 TEXT 字段。同样也不能指定它们的长度。

ENUM 枚举类型,是一种很独特的列表类型。ENUM 类型的数据实际是一个包含多个固定值的列表,只能选择这些值(包括 NULL 值)。例如,如果希望某个字段包含 "A"、"B" 和 "C",必须这样定义:ENUM ('A', 'B', 'C'),只有这些值(或 NULL 值)能够填充到该字段中。

1.6.基本CURD

1.6.1.查询数据

查询一张表中的所有数据

# user为表名
SELECT * FROM user

查询表中的某个字段

SELECT name FROM user

查询符合条件的数据

SELECT * FROM user WHERE name = "xiaoqiang"

1.6.2.插入数据

INSERT INTO user VALUES(null, 'zhangsan', 20)

1.6.3.修改一条数据

UPDATE user SET name = 'zhangsan' WHERE id=2

1.6.4.删除一条数据

DELETE FROM user WHERE id=3

螺钉课堂视频课程地址:http://edu.nodeing.com

node+ajax实战案例(1)的更多相关文章

  1. node+ajax实战案例(2)

    2.静态资源渲染 2.1.创建http服务器 var http = require('http'); var url = require('url'); var app = http.createSe ...

  2. node+ajax实战案例(6)

    8.删除客户 8.1.发送id到后台 删除用户信息比较简单,只需要把对应行的id发送到后台就可以了 oTable.onclick = function (ev) { var ev = ev || ev ...

  3. node+ajax实战案例(5)

    6.添加客户 6.1.点击添加按钮,弹出表单框 // 添加用户 显示对话框 var addBtn = document.getElementById('add-btn'); var addUser = ...

  4. node+ajax实战案例(4)

    4.用户登录实现 4.1.用户登录实现思路 1 用户输入登录信息,点击登录的时候把用户登录的这些信息收集起来,然后组装数据通过ajax方式发送到后台 2 后台接到用户输入的登录信息,把这些信息拿去和数 ...

  5. node+ajax实战案例(3)

    3.用户注册实现 3.1.注册用户功能的实现逻辑 1 用户在表单上输入注册信息 2 点击注册后,收集用户在表单上输入的注册信息并且发送给后台 3 后台接收用户发送过来的注册信息 4 后台需要处理数据并 ...

  6. 《Node.js实战(双色)》作者之一——吴中骅访谈录

  7. 如何从40亿整数中找到不存在的一个 webservice Asp.Net Core 轻松学-10分钟使用EFCore连接MSSQL数据库 WPF实战案例-打印 RabbitMQ与.net core(五) topic类型 与 headers类型 的Exchange

    如何从40亿整数中找到不存在的一个 前言 给定一个最多包含40亿个随机排列的32位的顺序整数的顺序文件,找出一个不在文件中的32位整数.(在文件中至少确实一个这样的数-为什么?).在具有足够内存的情况 ...

  8. Flume实战案例运维篇

    Flume实战案例运维篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Flume概述 1>.什么是Flume Flume是一个分布式.可靠.高可用的海量日志聚合系统,支 ...

  9. 使用Zabbix监控Nginx服务实战案例

    使用Zabbix监控Nginx服务实战案例 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任.  一.编译安装nginx步骤详解并开启状态页 博主推荐阅读: https://www.cn ...

随机推荐

  1. 【HIVE】数据分析HQL的编写方法/思路

    SQL编写一般思路: 1)复杂的查询,先划分为小任务,以降低难度.分别实现各个小任务后,再进行汇总: 2)涉及多表时,先进行联表查询: 3)简单分组,一般只需要group by即可: 4)组内TopN ...

  2. 【Linux】CentOS 7安装与使用,安装jdk1.8,安装mysql

    虚拟机软件VMware Workstation Pro 安装CentOS7,准备好镜像文件! 一定要勾选"启动时连接" 语言选英语 时区点击上海 确认硬盘,就是点击黄色警告的那个, ...

  3. C# Winform学习(六)

    目标: 1.树型控件TreeView 2.列表视图控件ListView 一.树型控件 1.命名:tv开始 2.作用:用来显示有层次结构的数据 3.特点 1)允许有多个根节点 2)每个节点可以有多个子节 ...

  4. Java实现 蓝桥杯VIP 算法训练 最大值与最小值的计算

    输入11个整数,计算它们的最大值和最小值. 样例输入 0 1 2 3 4 5 6 7 8 9 10 样例输出 10 0 import java.util.Scanner; public class 最 ...

  5. Java实现 蓝桥杯VIP 算法提高 三角形面积

    算法提高 三角形面积 时间限制:1.0s 内存限制:256.0MB 问题描述 由三角形的三边长,求其面积. 提示:由三角形的三边a,b,c求面积可以用如下的公式: s=(a+b+c)/2 输入格式 由 ...

  6. java实现拉丁方块填数字

    "数独"是当下炙手可热的智力游戏.一般认为它的起源是"拉丁方块",是大数学家欧拉于1783年发明的. 如图[1.jpg]所示:6x6的小格被分为6个部分(图中用 ...

  7. 【asp.net core 系列】4. 更高更强的路由

    0. 前言 在之前我们介绍了请求通过路由寻找到控制器,以及控制器与视图的数据流转.那么,我们回过头来,再看看路由的一些其他用法. 1. 路由属性(Route Attribute) 按照英文的直接翻译, ...

  8. java调用linux下的so库

    1.编写java类 public class Abc { static { System.loadLibrary("abc"); } public native static St ...

  9. Entity Framework Core遇到的问题汇总

    1.add-migration : 无法将“add-migration”项识别为 cmdlet.函数.脚本文件或可运行程序的名称.请检查名称的拼写,如果包括路径,请确保路径正确,然后再试一次. 使用E ...

  10. 钻进 Linux 内核看个究竟

    Linux 内核,这个经常听见,却不不知道它具体是干嘛的东西,是不是觉得非常神秘? Linux 内核看不见摸不着,而对于这类东西,我们经常无从下手.本文就以浅显易懂的语言,带你钻进 Linux 内核, ...