SQL基础入门

SQL基础入门

数据库基础

什么是数据库

数据库(database):保存有组织的数据的容器,可以简单地理解为存储数据的仓库。

数据模型 数据库按照数据结构来组织、存储和管理数据,数据库一共有三种模型:

  • 层次模型:以“上下级”层次来组织数据,类似一棵树;

层次模型

  • 网状模型:把每个数据节点都和其他很多数据节点连接起来,类似一张网;

网状模型

  • 关系模型:把数据表当作一个二维表格,任何数据都可通过行号+列号唯一确定,类似于excel工作表。

关系模型

关系模型占据了绝对的市场份额,而我们经常使用的MySQL也是数据关系型数据库。

什么是表

(table):是一种结构化的文件,可用来存储某种特定类型数据,对于MySQL数据库中的表,可以简单地类比为Excel工作表。

表的结构

一张数据表包含了表名、列、列名以及行

  • (column):表中的一个字段,所有表都是由一个或多个列组成的。
  • (row):表中的数据是按行存储的,每一行也称为一个记录(record)。

学生表

主键

主键(primary key):在关系表中,任意两行数据不能重复,也就是必须拥有可以唯一标识自己的一列,这一列就称为主键。

其实主键的概念,在我们的日常生活中也经常用到,比如每个人都会有的身份证号码,就可以认为是一个主键;以及在读书时拥有的学号,也是一种主键。

数据类型

数据类型(datatype):每个表列都有相应的数据类型,它限制(或容许)该列中存储的数据。

对于每一个关系表,都需要定义列名和每一列的数据类型,关系型数据库支持的常用数据类型:

常用数据类型

SQL

什么是SQL

SQL是结构化查询语言(Structured Query Language)的缩写,是一种专门用来与数据库通信的语言。

SQL定义了几种操作数据库的能力:

  • DDL(Data Definition Language):允许用户定义表、删除表、修改表结构这些操作,通常由数据库管理员执行;
  • DML(Data Manipulation Language):允许用户添加、删除、更新数据,应用程序对数据库的日常操作;
  • DQL(Data Query Language):允许用户查询数据,最频繁的数据库操作。

SQL语法特点

  • SQL语句以英文分号(;)结尾;
  • SQL语句不区分关键字的大小写;
  • 输入符号的时候只能使用英文符号。

MySQL

MySQL简介

什么是MySQL

数据的存储、检索、管理和处理实际上是由数据库软件——DBMS(数据库管理系统)完成的。MySQL是一种DBMS,即他是一种数据库软件。

安装MySQL

首先应该安装MySQL数据库,安装过程参考: mysql数据库安装教程

安装MySQL之后通常会安装图形化管理工具,如果没有图形化管理工具的话就要通过命令行查看数据库,非常不方便。 两种常用的图形化管理工具:

  • phpMyAdmin(如果安装了xampp就已经有了,网页形式,免费)
  • Navicat(客户端形式,收费)

管理MySQL

数据库操作

连接数据库

下面用Navicat演示一下在图形化界面的情况下,如何第一次连接上数据库。 Step1 新建连接

Step2 填写连接数据

  • 连接名:这个连接的名称,随便写一个;
  • 主机:IP地址,本机是localhost;
  • 端口:数据库端口号,默认3306;
  • 用户名:数据库登录用户名;
  • 密码:数据库登录密码,无密码则空着。

Step3 测试连接 如果看到弹出“连接成功”,则说明已经成功连接上MySQL数据库,接下来就可以对数据库进行操作了。

Step4 打开连接

成功打开连接之后就能看到系统自带的一些数据库。

采用命令行连接数据库

mysql -u root -p

连接数据库

注:如果没有密码,则在输入以上命令之后直接Enter键即可。

退出数据库

EXIT;

退出数据库

查询数据库

-- 列出所有数据库
SHOW DATABASES;

显示所有数据库

注意:information_schema、mysql、performance_schema和phpmyadmin为系统库,不要随意改动。

新建数据库

图形界面操作

新建数据库

注意字符集要选择utf8,这样才能在同时显示中英文字符,不会出现乱码。

填写数据库相关内容

SQL语句操作

CREATE DATABASE test1;

删除数据库

DROP DATABASE test1;

注意:为避免出现问题,一般不要轻易删除数据库。

表操作

在针对某一个数据库里面的表进行操作时,要切换至当前数据库

USE practice;

切换到practice数据库

新建表

  1. 新建表,添加字段(列)
  1. 添加完所有字段之后,保存

然后关闭该窗口,就能在数据库里面看到这张新建的表。

列出表

-- 列出当前数据库的所有表
SHOW TABLES;

列出所有表

查看表

-- 查看一个表的结构
DESC students;

查看一个表的结构

-- 查看创建该表的SQL语句
SHOW CREATE TABLE students;

查看创建该表的SQL

删除表

-- 删除test表
DROP TABLE test;

修改表

修改表的图形界面操作

  1. 右键单击想要进行修改的表,选中“设计表”
  1. 填写需要修改的内容,保存

新增列

-- 给students表新增一列birth
ALTER TABLE students ADD COLUMN birth VARCHAR(10) NOT NULL;

新增一列

修改列

-- 修改birth列,把列名改为birthday,数据类型改为VARCHAR(20)
ALTER TABLE students CHANGE COLUMN birth birthday VARCHAR(20) NOT NULL;

修改列

-- 删除birthday列
ALTER TABLE students DROP COLUMN birthday;

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

扫码关注云+社区

领取腾讯云代金券