前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >SQL基础入门

SQL基础入门

作者头像
活用数据
发布2019-06-03 17:06:31
9360
发布2019-06-03 17:06:31
举报
文章被收录于专栏:数据医生专栏

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 打开连接

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

采用命令行连接数据库

代码语言:javascript
复制
mysql -u root -p

连接数据库

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

退出数据库
代码语言:javascript
复制
EXIT;

退出数据库

查询数据库
代码语言:javascript
复制
-- 列出所有数据库
SHOW DATABASES;

显示所有数据库

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

新建数据库

图形界面操作

新建数据库

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

填写数据库相关内容

SQL语句操作

代码语言:javascript
复制
CREATE DATABASE test1;
删除数据库
代码语言:javascript
复制
DROP DATABASE test1;

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

表操作

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

代码语言:javascript
复制
USE practice;

切换到practice数据库

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

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

列出表
代码语言:javascript
复制
-- 列出当前数据库的所有表
SHOW TABLES;

列出所有表

查看表
代码语言:javascript
复制
-- 查看一个表的结构
DESC students;

查看一个表的结构

代码语言:javascript
复制
-- 查看创建该表的SQL语句
SHOW CREATE TABLE students;

查看创建该表的SQL

删除表
代码语言:javascript
复制
-- 删除test表
DROP TABLE test;
修改表

修改表的图形界面操作

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

新增列

代码语言:javascript
复制
-- 给students表新增一列birth
ALTER TABLE students ADD COLUMN birth VARCHAR(10) NOT NULL;

新增一列

修改列

代码语言:javascript
复制
-- 修改birth列,把列名改为birthday,数据类型改为VARCHAR(20)
ALTER TABLE students CHANGE COLUMN birth birthday VARCHAR(20) NOT NULL;

修改列

代码语言:javascript
复制
-- 删除birthday列
ALTER TABLE students DROP COLUMN birthday;
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019.05.08 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 数据库基础
    • 什么是数据库
      • 什么是表
        • 表的结构
        • 主键
        • 数据类型
    • SQL
      • 什么是SQL
        • SQL语法特点
        • MySQL
          • MySQL简介
            • 什么是MySQL
            • 安装MySQL
          • 管理MySQL
            • 数据库操作
            • 表操作
        相关产品与服务
        云数据库 SQL Server
        腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档