WEB——06.MySQL(1)

WEB——06.MySQL(1)

DBMS

  • DataBaseManagementSystem,数据库管理系统(数据库软件)

SQL

  • Structured Query Language:结构化查询语言。
  • 通过这门语言让程序员和数据库软件进行交流。

和数据库软件建立连接

  • 通过命令行/终端和数据库建立连接
    • 首先检查MySQL/MariaDB服务是否开启。此电脑->右键管理->服务和应用程序(services.msc)
    • 退出:exit
    • 建立连接指令:mysql -uroot -proot
  • 通过三方的可视化工具和数据库软件建立连接

数据库相关

  • 在MySQL数据库软件中保存数据要先建数据库再建表,然后再往表里添加数据。
创建数据库
查询所有数据库
  • 格式:show databases;
创建数据库
  • 默认字符格式:create database 数据库名;
  • 指定字符集格式:create database 数据库名 charset=utf8/gbk;
  • 举例:
    • create database db1;
    • create database db2 charset=utf8;
    • create database db3 charset=gbk;
查询数据库信息
  • 格式:show create database 数据库名;
  • 举例:
    • show create database db1;
    • show create database db2;
    • show create database db3;
删除数据库
  • 格式:drop database 数据库名;
  • 举例:
    • drop database db2;
    • drop database db2;
使用数据库
  • 在执行表相关和数据相关的SQL语句之前必须使用了某个数据库
  • 格式:use 数据库名;
  • 举例:
    • use db1;
数据库相关练习
  • 创建 mydb1和mydb2 数据库 字符集分别为utf8和gbk

    • create database mydb1 charset=utf8;
    • create database mydb2 charset=gbk;
  • 查询所有数据库检查是否创建成功

    • show databases;
  • 检查两个数据库的字符集是否正确

    • show create database mydb1;
    • show create database mydb2;
  • 先使用mydb2 再使用 mydb1

    • use mydab1;
    • use mydab2;
  • 删除两个数据库

    • drop database mydb1;
    • drop database mydb2;

表相关

  • 执行表相关的SQL之前必须使用了某个数据库。
    • create database newdb1 charset=utf8;
    • use newdb1;
创建表
  • 格式:create table 名字(字段1名 类型,字段名2 类型…)
  • 举例:
    • create table person(name varchar(50),age int)charset=utf8;
    • create table student(name varcgar(50),chinese int,math int,english int);
查询所有表
  • 格式:show tables;
查询表信息
  • 格式:show create table person;
查询表字段
  • 格式:desc 表名
    • desc student;
删除表
  • 格式:drop table 表名
    • drop table student;
修改表名
  • 格式:rename table 原名 to 新名
    • rename table person to per;
表相关练习
  1. 创建数据库mydb3 字符集gbk 并使用

    create database mydb3 charset=gbk;
    use mydb3;

  2. 创建t_hero英雄表, 有名字和年龄字段 默认字符集

​ create table t_hero(name varchar(),age int);

  1. 修改表名为hero

​ rename table t_hero to hero;

​ 4.查看表的字符集

​ show create table hero;

​ 5.查询表字段

​ desc hero;

​ 6.删除表

​ drop table hero;

​ 7.删除数据库

​ drop database mydb3;

表相关(续)

添加表字段

create database newdb2;

use newdb2;

create table emp(name vatchar(30));

  • 最后面添加格式alter table emp add 字段名 类型;
  • 最前面添加格式alter table emp add 字段名 类型 first;
  • 某字段后面添加格式alter table emp add 字段名 类型 after 字段名;
  • 举例:
    • alter table emp add age int;
    • alter table emp add id int first;
    • alter table emp add gender varchar(10) after name;
删除表字段
  • 格式:alter table 表名 drop 字段名;
  • alter table emp drop id;
修改表字段
  • 格式:alter table 表名 change 原名 新名 新类型;
  • 举例:
    • alter table emp change age gender varchar(10);
查看其他库中的表
  • show tabels from 数据库名
表相关练习题

1.创建数据库mydb4字符集utf8并使用

​ create database mydb4 charset=utf8;

2.创建teacher表,有名字字段

create table teacher(name varchar(50));

3.添加表字段:最后添加age;最前面添加id,age前面添加salary工资

alter table teacher add age int;

alter table teacher add id int first;

alter table teacher add salary int after name;

4.删除age字段;

alter table teacher drop age;

5.修改表名为t;

rename table teacher to t;

6.删除表

drop table t;

7.删除数据库

drop database mydb4;

数据相关

create database mydb5;

use mydb5;

create table person(name vatchar(50),age int);

插入数据
  • 全表插入格式:insert into 表名 values(值1,值2);
  • 指定字段插入格式:insert into 表名(字段1,字段2) values(值1,值2);
  • 举例:
    • insert into person values(‘tom’,18);
    • insert into person(name) values(‘jerry’);
  • 批量插入格式:insert into 表名 values(值1,值2),values(值1,值2);
  • 批量指定字段插入格式:insert into 表名(字段1,字段2) values(值1,值2),values(值1,值2);
  • 中文问题:
  • insert into person values(‘刘德华’,50);执行本SQL语句报错的话,执一下命令。 set names gbk;
查询数据
  • 格式:select 字段信息 from 表名;
  • 举例:
    • select name from person;
    • select name,age from person;
    • select * from person;
    • select * from person where age>20;
    • select age from person where name=‘tom’;
修改数据
  • 格式:update 表名 set 字段名=值,字段名=值 where 条件;
  • 举例:
    • update person set name =‘汤姆’ where name=‘tom’;
    • update person set name=“杰瑞” where name=“jerry”;
删除数据
  • 格式:delete from 表名 where 条件;
  • 举例:
    • delete from person where name=‘汤姆’;
综合练习题

1.创建数据库day1db 字符集utf8并使用
create database day1db charset=utf8;
use day1db;
2.创建t_hero表, 有name字段 字符集utf8
create table t_hero(name varchar(20))charset=utf8;
3.修改表名为hero
rename table t_hero to hero;
4.最后面添加价格字段money, 最前面添加id字段, name后面添加age字段
alter table hero add money int;
alter table hero add id int first;
alter table hero add age int after name;
5.表中添加以下数据: 1,李白,50,6888 2,赵云,30,13888 3,刘备,25,6888
insert into hero values(1,‘李白’,50,6888),(2,‘赵云’,30,13888),(3,‘刘备’,25,6888);
6.查询价格为6888的英雄名
select name from hero where money=6888;
7.修改刘备年龄为52岁
update hero set age=52 where name=‘刘备’;
8.修改年龄小于等于50岁的价格为5000
update hero set money=5000 where age<=50;
9.删除价格为5000的信息
delete from hero where money=5000;
10.删除表, 删除数据库
drop table hero;
drop database day1db;

常见错误提示

  • You have an error in your SQL;你的SQL语句中有个错(检查SQL拼写)。
  • database exists;数据库已存在。
    ‘刘备’;
    8.修改年龄小于等于50岁的价格为5000
    update hero set money=5000 where age<=50;
    9.删除价格为5000的信息
    delete from hero where money=5000;
    10.删除表, 删除数据库
    drop table hero;
    drop database day1db;

常见错误提示

  • You have an error in your SQL;你的SQL语句中有个错(检查SQL拼写)。
  • database exists;数据库已存在。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值