MySql基础知识

本文介绍了数据库的基本概念和优点,重点讲解了MySQL数据库的使用,包括单行和多行注释,以及如何创建数据库和表。详细阐述了SQL的DDL(结构定义语言),如创建表并设置主键约束,DML(数据操作语言)的插入、删除和更新数据,以及DQL(数据查询语言)的基础查询操作。此外,还展示了如何在MySQL中插入、更新和删除数据,并给出了实例。
摘要由CSDN通过智能技术生成

目录

数据库概述

MySQL数据库

SQL--DDL(结构定义)

SQL--DML(数据操作)

SQL--DQL(基础查询)


数据库概述

优点:

1.数据库可以实现数据持久化到本地(持久保存)

2.数据库使用完整的管理系统统一管理,可以实现结构化查询,方便管理;(方便存储和管理)

DB(数据库):数据存储的容器,用来保存一系列有组织的数据

SQL语言(结构化查询语言):将数据库按照特定规则存储,使用SQL语言对数据进行管理(创建表结构,增删改查)

DBMS(数据库管理系统):数据库软件或数据库产品,用于创建或管理DB

数据库分类:

关系型数据库:mysql,sqlserve,orace db2

非关系型数据库:redis缓存

 MySQL数据库

单行注释:#;--

多行注释:/*  */

MySQL的安装

MySQL不支持修改数据库名称

不区分大小写,建议关键字大写

表与表之间的关联关系:关系数据库管理系统

SQL--DDL(结构定义)

创建数据库,创建表

CREATE dATABASE SCHOOLDB//创建表
CREATE table student (num INT,
sname Varchar(5),
gender char (1),
birthday date,
phone varchar (11),
address varchar (50),
height double(3,2),
reg_time datetime)

行     列:

一行就是一条记录

一列就是一个信息

创建表:

存储什么信息--表名

表中存储哪些信息--列名

列的数据类型:

字符型

   char      定长的  例如定义长度为5,如果只存储了2个字符,也是会补全到5个长度字符
   varchar   变长的  例如定义长度为5,如果只存储了2个字符,实际就只占两个字符
日期型
        date  年月日(日期)
        datetime 年月日时分秒(时间)

 数值型
       浮点
       float
       double  常用的  精度高   
 整数
        TINYINT 1
        SMALLINT 2
        MEDIUMINT 3
        int  4
        bigint  8

 text文本类型 ,可以存储更多的字符
       TINYTEXT、TEXT、MEDIUMTEXT和LONGTEXT

逐行删除数据:DROP DATABASE +表名

删除表结构:DROP TABLE STH

清空整个表数据,是DDL级别的

DELETE FROM player WHERE num=1
             表名         想删除的行

主键约束:主键列不能为空,不能重复,MySQL还支持主键列自动增长.主键约束,表中必须有一列的值,能够唯一表示一条记录,主键列在一张表中只能有一个

(列名)INT PRIMARY KEY AUTO_INCREMENT

CREATE TABLE basketballteam(
num  INT PRIMARY KEY AUTO_INCREMENT ,
sname VARCHAR(5) NOT NULL,
address VARCHAR (50) NOT NULL)

CREATE DATABASE SCHOOLDB
CREATE TABLE student (num INT,
sname VARCHAR(5),
gender CHAR (1),
birthday DATE,
phone VARCHAR (11),
address VARCHAR (50),
height DOUBLE(3,2),
reg_time DATETIME)

SQL--DML(数据操作)

insert(插入数据),delete(删除数据),update(修改数据)

CREATE DATABASE scoredb
CREATE TABLE student (
num CHAR(1),
sname VARCHAR (5)NOT NULL,
ssubject VARCHAR(5)NOT NULL,
score CHAR(3))
 

INSERT INTO student(num,sname,ssubject,score)
VALUES('1','张三','语文','70'),
('1','张三','数学','80'),
('1','张三','英语','66'),
('2','李四','语文','50'),
('2','李四','数学','75'),
('2','李四','英语','80'),
('3','王五','语文','77'),
('3','王五','数学','55'),
('3','王五','英语','88'),
('3','王五','物理','90')

SQL--DQL(基础查询)

特点:

查询列表可以是:表中的文字段,常量,表达式,函数

查询的结果:虚拟的表格

小例:

1.创建一个NBA管理系统数据库

2.根据图中所给的信息创建球员信息表和球队信息表

3.使用insert into语句向球员表和球队表插入数据
   使用update语句更新球员和球队表信息
   使用delete语句删除球员和球队表信息

CREATE TABLE basketballteam(
num  INT PRIMARY KEY AUTO_INCREMENT ,
sname VARCHAR(5) NOT NULL,
address VARCHAR (50) NOT NULL)

INSERT INTO basketballteam (sname,address)
VALUES('湖人','洛杉矶'),
('火箭','休斯顿'),
('凯尔特人','波士顿'),
('骑士','克利夫兰'),
('马刺','圣安东尼奥'),
('魔术','奥兰多')

CREATE TABLE player(
num INT PRIMARY KEY AUTO_INCREMENT,
pname VARCHAR (10)NOT NULL,
birthday DATE,
height INT ,
weight INT ,
address VARCHAR (20)
)
INSERT INTO player (pname,birthday,height,weight,address)
VALUES('怀德恩-韦德','1982-1-17','193','96','null'),
('勒布朗-詹姆斯','1984-12-30','203','113','前锋'),
('科比-布莱恩特','1978-8-23','198','99','后卫'),
('德克-诺维斯基','1978-6-19','213','111','null'),
('克里斯-保罗','1985-5-6','182','79','后卫'),
('托尼-帕克','1982-5-17','187','83','后卫'),
('凯文-加内特','1981-7-14','212','113','null'),
('保罗-皮尔斯','1977-10-13','200','106','前锋'),
('迈克尔-乔丹','1963-2-17','198','98','前锋'),
('德怀特-霍华德','1985-12-8','210','120','中锋'),
('姚明','1980-9-12','229','140','中锋'),
('沙奎尔-奥尼尔','1972-3-6','215','147','中锋')

UPDATE  player SET address='其他位置'WHERE num=1
UPDATE  player SET address='其他位置'WHERE num=4
UPDATE  player SET address='其他位置'WHERE num=7

DELETE FROM player WHERE num=1

SELECT *FROM player
SELECT *FROM player WHERE height>200
SELECT * FROM basketballteam
SELECT * FROM basketballteam WHERE num=2

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值