MySQL的基本语句

本文介绍了SQL的四大类语句——DDL(数据定义语言),DML(数据操作语言),DQL(数据查询语言)和TCL(事务控制语言)。通过实例详细讲解了如何使用DDL创建和管理数据库及表,包括创建、查看、删除数据库和表,以及修改表结构。DML部分则涉及数据的插入、更新和删除操作。同时,提到了数据类型的使用。
摘要由CSDN通过智能技术生成

SQL语⾔分为以下⼏种:

1)DDL: (Data Definition Language )如何定义的语⾔ (如何创建数据库,创建表,创建字段等)

2)DML: (数据库操作语⾔) ⼀般指的是(数据新增,修改,删除等)

3)DQL: (查询语⾔,重中之重)(数据的各种查询,你每天都在查数据)

4)TCL: (Transaction Control Language) ⽐如修改密码,创建⼀个⽤⼾,赋予权限等。

注意:在MySQL中的语句结尾都要加上英文的;

一,DDL

1.数据库管理

create database db01; ---创建一个数据库db01
create database db02 character set utf8; ---创建一个支持中文的数据库

utf8:只支持中文的一个字符集。字符集从ASCII(里面涵盖了不同的文字和数字之间的对应关系)可以查询。

mysql> show databases; --查看所有的数据库
+--------------------+
| Database           |
+--------------------+
| __recycle_bin__    |
| db01               |
| db02               |
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
7 rows in set (0.04 sec)
mysql> drop database db01; ---删除数据库
Query OK, 0 rows affected (0.02 sec)

mysql> show databases; ---验证一下db01是否被删除
+--------------------+
| Database           |
+--------------------+
| __recycle_bin__    |
| db02               |
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
6 rows in set (0.04 sec)

2.表的管理 

数据库的架构:

数据库--表--数据

安装一个数据库软件---创建数据库文件---在某个数据库文件中创造表---在表里插入数据

创建表的语句:

         create table 表名(

        字段1的名字  字段类型(字段的长度), ----还没结束的英文的逗号分隔

        字段2的名字  字段类型(字段的长度)

        ); 

mysql> use db02; ---在创建表之前需要先指定数据库
Database changed
mysql> create table stu(
    -> name varchar(20),
    -> age int
    -> );        ---创建表stu
Query OK, 0 rows affected (0.05 sec)


mysql> show tables; ---查看当前数据库中所有的表
+----------------+
| Tables_in_db02 |
+----------------+
| stu            |
+----------------+
1 row in set (0.06 sec)


mysql> desc stu; ---查看表stu的结构
+-------+-------------+------+-----+---------+-------+
| Field | Type        | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| name  | varchar(20) | YES  |     | NULL    |       |
| age   | int         | YES  |     | NULL    |       |
+-------+-------------+------+-----+---------+-------+
2 rows in set (0.06 sec)

 

mysql> alter table stu add weight double(5,2); --给表stu中添加一个字段weight
Query OK, 0 rows affected (0.05 sec)
Records: 0  Duplicates: 0  Warnings: 1

mysql> desc stu;        ---验证是否添加成功
+--------+-------------+------+-----+---------+-------+
| Field  | Type        | Null | Key | Default | Extra |
+--------+-------------+------+-----+---------+-------+
| name   | varchar(20) | YES  |     | NULL    |       |
| age    | int         | YES  |     | NULL    |       |
| weight | double(5,2) | YES  |     | NULL    |       |
+--------+-------------+------+-----+---------+-------+
3 rows in set (0.06 sec)

 drop table stu;.----删除表的语句

字段类型:

数据类型类型描述示例
int整型整数,比如年龄
double浮点型double(5,2):5代表最多五位,2代表小数两位,2包含在5里面。
char固定长度的字符串char(7):代表只能7位。
varchar可变长度的字符串varchar(12):代表几位都可以,最多可以12位。
text字符串存放大字段字符串,比如小说
date日期类型年月日:2000-10-21
time时间类型时分秒:10:21:34
datetime时间类型年月日和时分秒都有: 2000-10-21 10:21:34

 3.其他的操作

mysql> alter table stu drop weight; ---删除表stu中的weight字段
Query OK, 0 rows affected (0.05 sec)
Records: 0  Duplicates: 0  Warnings: 0

mysql> desc stu  ---验证是否删除
    -> ;
+-------+-------------+------+-----+---------+-------+
| Field | Type        | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| name  | varchar(20) | YES  |     | NULL    |       |
| age   | int         | YES  |     | NULL    |       |
+-------+-------------+------+-----+---------+-------+
2 rows in set (0.07 sec)

 create table stu2 as select * from stu;  ---创建一个stu2,内容结构与stu1一样,相当于备份stu1。

create table stu3 like stu; ---创建一个stu3,只有结构与stu一样,但是个空表 。

mysql> create table stu2 as select * from stu; --创建一个stu2,和stu1一样
Query OK, 0 rows affected (0.05 sec)
Records: 0  Duplicates: 0  Warnings: 0

mysql> create table stu3 like stu;   ---创建一个stu3,和stu1结构一样
Query OK, 0 rows affected (0.05 sec)

mysql> show tables;  ---验证是否创建成功
+----------------+
| Tables_in_db02 |
+----------------+
| stu            |
| stu2           |
| stu3           |
+----------------+
3 rows in set (0.06 sec)

 

二,DML

1.插入数据的语法格式

 insert  into  表名(列名1,列名2,列名3....)  values(列值1,列值2,列值3....);

注意:

列的数量和列值的数量⼀致!
列的数据类型和插⼊的值的类型⼀致!

mysql> insert into stu(name,age) values('小职',18); --插入数据
Query OK, 1 row affected (0.04 sec)

mysql> select * from stu; ---查看表stu中的所有数据
+------+-----+
| name | age |
+------+-----+
| 小职 |  18 |
+------+-----+
1 row in set (0.07 sec)
mysql> update stu set age = 17 where name ='小职'; ---修改表stu中的数据
Query OK, 0 rows affected (0.04 sec)
Rows matched: 1  Changed: 0  Warnings: 0

mysql> select * from stu; ---验证是否修改成功
+------+-----+
| name | age |
+------+-----+
| 小职 |  17 |
+------+-----+
1 row in set (0.08 sec)

   delete from stu where name='小职'; ---删除表stu中的数据。

2.插入语句的三种写法

第一种标准写法


insert into emp(id,name,gender,birthday,salary,resume) values(1,'小职','女','1999-08-21',10000,'美女');


第二种省略写法


insert into emp values(1,'小职','女','1999-08-21',10000,'美女');


第三种可以挑选字段插入


insert into emp(id,name) values(1,'小职');

3.删除表中的数据


1.delete from emp;


删除表中所有的数据,删除原理是一行一行删除,删除比较慢。


2.truncate table emp;


删除表中所有的数据,先将表 drop掉,再创建一个一模一样的。速度快。

3.想删除某一部分的数据:


delete from 表名  where 条件。满足条件的就直接删除掉了。
delete from emp where name='zhangsan';

4.修改数据

修改数据的语法:
update 表名  set  字段名= 新的值,(另一个字段= 新的值) where 条件。(可添加多个字段)

update stu set name='小职', where age =17;

三,where

where条件过滤,只有满⾜条件的才会被执⾏。

 

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值