MySQL常用操作

MySQL——世界上最流行的开源数据库!


写在前面

MySQL官网
数据库排名
W3school SQL
W3Cschool MySQL


基本操作

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
|---数据库操作
|---连接数据库
| |--- mysql -u 用户名 -p 密码
|
|---创建数据库
| |---create database 数据库名称;
|
|---查看数据库
| |---show databases;
|
|---删除数据库
| |---drop database 数据库名称;
|
|---切换数据库
| |---use 数据库名称;
|
|---创建表
| |---create table 表名(字段名称 类型(长度) [约束],字段名称 类型(长度) [约束])
|
|---查看表
| |---查看所有的数据表
| | |--show tables;
| |
| |---查看表结构
| |--desc 表名称;
|
|---删除表
| |---drop table 表名称;
|
|---修改表
| |---添加列
| | |---alter table 表名称 add 列名称 类型(长度) [约束];
| |
| |---修改列的类型长度以及约束
| | |---alter table 表名称 modify 列名称 类型(长度) [约束];
| |
| |---修改列名称
| | |---alter table 表名称 change 旧列名称 新列名称 类型(长度) [约束];
| |
| |---删除列
| | |---later table 表名称 drop 列名称;
| |
| |---修改表名称
| | |---rename table 表名称 to 新表名称
| |
| |---修改表字符集
| |---alter table 表名称 character set 字符集;
|
|---插入记录(insert)
| |---insert into 表 (列1,列2,列3...) value(值1,值2,值3...);
|
|---更新记录(update)
| |---update 表名称 set 字段名称=值,字段名称=值...;
| |---update 表名称 set 字段名称=值,字段名称=值...where 条件;
|
|---删除记录
| |---delete from 表名称 [where 条件];
|
|---基本查询操作
| |---select * from 表名称 [where 条件];
|
|---多表查询
| |---交叉连接查询(得到的是两个表的乘积)
| | |---select * from 表1,表2;
| |
| |---内连接查询
| | |---隐式内连接
| | | |---SELECT * FROM 表1,表2 WHERE 条件;
| | |
| | |---显式内连接
| | |---SELECT * FROM 表1 INNER JOIN 表2 ON 条件;
| |
| |---外连接查询
| |---左外连接
| | |---SELECT * FROM 表1 LEFT JOIN 表2 ON 条件;
| |
| |---右外连接
| |---SELECT * FROM 表1 RIGHT JOIN 表2 ON 条件;
|
|---子查询:一条SELECT语句的结果作为另一条SELECT语句的一部分

在代码中连接MySQL

MySQL驱动包下载,以java为例,不同版本的MySQL其需要加载的驱动类(Driver)是不一样的,或者说驱动类所在的位置是不一样的,旧版的驱动类路径为com.mysql.jdbc.Driver,新版的驱动(8.0)路径为com.mysql.cj.jdbc.Driver,而且在获取数据库连接时需要指定参数serverTimezone,也就是服务器时区,通常情况下是设置为UTC或者GMT%2B8UTC是世界标准时间,而GMT%2B8是指格林威治时间+8小时,也是中国所在时区的时间,其中的%2B表示的是转义字符+,当然,通常情况下,我们还会设置另一个参数useSSL。下面是在代码中简单模拟连接MySQL数据库的过程:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
package my.mysql;

import java.sql.Connection;
import java.sql.DriverManager;

public class MysqlConnection {

/**
* mysql-connector-java-6之后的驱动为com.mysql.cj.jdbc.Driver
*/
private static final String DB_DRIVER = "com.mysql.cj.jdbc.Driver" ;

/**
* URL需要指定服务器时区以及是否使用SSL,MySQL默认的系统时间比东八区少8个小时
*/
private static final String DB_URL = "jdbc:mysql://localhost:3306/test?useSSL=true&serverTimezone=GMT%2B8" ;

/**
* USER_NAME:用户名
*/
private static final String USER_NAME = "mackvord" ;

/**
* PASSWORD:密码
*/
private static final String PASSWORD = "12345678" ;
public static void main(String[] args) throws Exception {
// 1.加载数据库驱动程序
Class.forName(DB_DRIVER) ;
// 2.连接数据库
Connection conn = DriverManager.getConnection(DB_URL, USER_NAME, PASSWORD) ;
// 3.查看是否连接成功,如果连接上了,将会打印出conn对象的地址信息
System.out.println(conn) ;
// 4.关闭连接
conn.close() ;
}
}

如果您觉得我的文章对您有帮助,请随意赞赏,您的支持将鼓励我继续创作!
0%