MySQL数据库基本操作1

文章目录

主要内容

  1. DDL
  2. DML

一.DDL

DDL是数据库领域中的一个术语,全称为数据定义语言(Data Definition Language)。DDL用于定义数据库的结构和组织方式,包括创建、修改和删除数据库对象,如表、视图、索引等。

常见的DDL命令包括:

  1. CREATE:用于创建数据库对象,如创建表、视图、索引等。

    例如:CREATE TABLE students (id INT, name VARCHAR(50));

  2. ALTER:用于修改数据库对象的结构,如添加、删除或修改列、约束等。

    例如:ALTER TABLE students ADD COLUMN age INT;

  3. DROP:用于删除数据库对象,如删除表、视图、索引等。

    例如:DROP TABLE students;

  4. TRUNCATE:用于删除表中的所有数据,但保留表结构。

    例如:TRUNCATE TABLE students;

  5. RENAME:用于重命名数据库对象的名称。

    例如:RENAME TABLE students TO new_students;

功能 SQL
查看所有数据库 show databases;
创建数据库 create database[if not exists] mydb1 [charset=utf8]
切换(选择要操作的)数据库 use mydb1;
删除数据库 drop database [if exists] mydb1;
修改数据库编码 alter database mydb1 character set utf8;

DDL的用法主要有以下几个方面:

  1. 创建数据库对象:使用CREATE语句可以创建表、视图、索引等数据库对象,定义其结构和属性。

  2. 修改数据库对象:使用ALTER语句可以修改数据库对象的结构,如添加、删除或修改列、约束等。

  3. 删除数据库对象:使用DROP语句可以删除数据库对象,包括表、视图、索引等。

  4. 重命名数据库对象:使用RENAME语句可以修改数据库对象的名称。

DDL语句通常在数据库的初始化阶段使用,用于创建数据库和表结构。在数据库运行过程中,DDL语句的使用相对较少,主要用于修改数据库结构或删除不需要的对象。

需要注意的是,DDL语句一旦执行,会立即生效并修改数据库的结构,因此在使用DDL语句之前应该谨慎考虑,并确保备份重要数据。

1.创建表

代码如下(示例):

创建表格式

sql 复制代码
create table [if not exists] 表名 (
	字段名 1 类型 [( 宽度 )] [ 约束条件 ] [comment ' 字段说明 '],
	字段名 2 类型 [( 宽度 )] [ 约束条件 ] [comment ' 字段说明 '],
	字段名 3 类型 [( 宽度 )] [ 约束条件 ] [comment ' 字段说明 ']
)[ 表的一些设置 ];

举个例子:创建表是构建一张空表,指定这个表的名字,这个表有几列,每一列叫什么名字,以及每一列存储的数据类型。

sql 复制代码
use mydb1;
create table if not exists student(
	sid int,
	name varchar(20),
	gender varchar(20),
	age int,
	birth date,
	address varchar(20),
	score double
);

2.创建表的类型

数值类型

字符串类型

日期类型

3.其他操作

功能 SQL
查看当前数据库的所有表名称 show tables;
查看指定某个表的创建语句 show create table 表名;
查看表结构 desc 表名
删除表 drop table 表名

4.修改表结构格式

代码如下(示例):

修改表添加格列:

sql 复制代码
语法格式
alter table 表名 add 列名 类型 ( 长度 ) [ 约束 ];
例子:
# 为 student 表添加一个新的字段为:系别 dept 类型为 varchar(20)
ALTER TABLE student ADD `dept` VARCHAR(20);

修改列名和类型

sql 复制代码
语法格式
alter table 表名 change 旧列名 新列名 类型 ( 长度 ) 约束 ;

例子:
# 为 student 表的 dept 字段更换为 department varchar(30)
ALTER TABLE student change `dept` department VARCHAR(30);

修改表删除列

sql 复制代码
语法格式:
alter table 表名 drop 列名 ;

例子:
# 删除 student 表中 department 这列
ALTER TABLE student DROP department;

修改表名

sql 复制代码
语法格式:
rename table 表名 to 新表名 ;

例子:
# 将表 student 改名成 stu
rename table `student` to stu;

二.DML

DML(Data Manipulation Language,数据操作语言)是一种用于在关系型数据库中操作数据的语言。它允许用户对数据库中的数据进行查询、插入、更新和删除操作。

DML语言通常包括以下几个主要的操作:

  1. 查询(SELECT):用于从数据库中检索数据。SELECT语句可以指定要检索的表、列和条件,以及可选的排序和分组规则。

  2. 插入(INSERT):用于将新的数据行插入到数据库表中。INSERT语句指定要插入的表、要插入的列和相应的值。

  3. 更新(UPDATE):用于修改数据库表中的现有数据行。UPDATE语句指定要更新的表、要更新的列和相应的新值,以及可选的更新条件。

  4. 删除(DELETE):用于从数据库表中删除数据行。DELETE语句指定要删除的表和可选的删除条件。

DML语言的使用方法如下:

  1. 在SQL命令行界面或数据库管理工具中输入DML语句,并执行该语句。执行后,数据库会根据语句的指示进行相应的操作。

  2. 在应用程序中使用编程语言(如Java、Python等)的数据库连接库,通过调用相应的函数或方法来执行DML语句。

下面是一些常见的DML语句示例:

  1. 查询语句示例:

    SELECT * FROM 表名 WHERE 条件;

  2. 插入语句示例:

    INSERT INTO 表名 (列1, 列2, 列3) VALUES (值1, 值2, 值3);

  3. 更新语句示例:

    UPDATE 表名 SET 列1=新值1, 列2=新值2 WHERE 条件;

  4. 删除语句示例:

    DELETE FROM 表名 WHERE 条件;

需要注意的是,DML语句对数据库中的数据进行操作,因此在使用DML语句时应谨慎,避免误操作或不必要的数据损失。在执行DML语句之前,最好先备份数据库以防止意外情况发生。

1.数据插入

代码如下(示例):
sql 复制代码
语法格式:
insert into 表(列名1,列名2,列名3...); //向表中插入某些
insert into 表 values ( 值 1, 值 2, 值 3...); // 向表中插入所有列

例子:
insert into student(sid,name,gender,age,birth,address,score) values(1001,' 男 ',18,'1996-12-23',' 北京 ',83.5);
insert into student values(1001,' 男 ',18,'1996-12-23',' 北京 ',83.5);

2.数据修改

代码如下(示例):
sql 复制代码
语法格式:
update 表名 set 字段名=值,字段名=值...;
update 表名 set 字段名 = 值 , 字段名 = 值 ... where 条件 ;

例子:
-- 将所有学生的地址修改为重庆
update student set address = ' 重庆' ;

--将id 为 1004 的学生的地址修改为北京
update student set address = ' 北京 ' where id = 1004 ;

-- 将id 为 1005 的学生的地址修改为北京,成绩修成绩修改为 100
update student set address = ' 广州 ',score=100 where id = 1005; 

3.数据删除

代码如下(示例):
sql 复制代码
语法格式:
delete from 表名[where 条件];
truncate table 表名 或者 truncate 表名

-- 1. 删除 sid 为 1004 的学生数据
delete from student where sid = 1004;
-- 2. 删除表所有数据
delete from student;
-- 3. 清空表数据
truncate table student;
truncate student;

注意: delete 和 truncate 原理不同, delete 只删除内容,而 truncate 类似于 drop table ,可以理解为是将整个表删除,然后再创建该表;

总结

以上是今天要讲的内容,学到了MySQL数据库的基本操作,包括DDL,DML。

相关推荐
workflower4 分钟前
MDSE和敏捷开发相互矛盾之处:方法论本质的冲突
数据库·软件工程·敏捷流程·极限编程
叁沐7 分钟前
MySQL 11 怎么给字符串字段加索引?
mysql
Tony小周14 分钟前
实现一个点击输入框可以弹出的数字软键盘控件 qt 5.12
开发语言·数据库·qt
lifallen32 分钟前
Paimon 原子提交实现
java·大数据·数据结构·数据库·后端·算法
o不ok!39 分钟前
Linux面试问题-软件测试
linux·运维·服务器
TDengine (老段)1 小时前
TDengine 数据库建模最佳实践
大数据·数据库·物联网·时序数据库·tdengine·涛思数据
Elastic 中国社区官方博客1 小时前
Elasticsearch 字符串包含子字符串:高级查询技巧
大数据·数据库·elasticsearch·搜索引擎·全文检索·lucene
Gauss松鼠会2 小时前
GaussDB应用场景全景解析:从金融核心到物联网的分布式数据库实践
数据库·分布式·物联网·金融·database·gaussdb
守城小轩2 小时前
Chromium 136 编译指南 - Android 篇:开发工具安装(三)
android·数据库·redis
尽兴-2 小时前
如何将多个.sql文件合并成一个:Windows和Linux/Mac详细指南
linux·数据库·windows·sql·macos