MySQL数据库基础操作:

1.数据库基本操作:

1.1:显示当前数据库:

sql 复制代码
show databases;
SHOW DATABASES;

1.1.1注意:在MySQL中,不区分字母大小写;

1.2:创建数据库:

sql 复制代码
CREATE DATABASE [IF NOT EXISTS] db_name [create_specification [, 
create_specification] ...]
create_specification:
 [DEFAULT] CHARACTER SET charset_name
 [DEFAULT] COLLATE collation_name

1.2.1注意

1.在代码第四行:SET charset~name代表在创建数据库的时候,可以指定一个字符集;

2.在代码第五行:COLLATE为指定数据库字符集的校验规则,由于mysql不支持拼音序,所以它比较依赖第三方库,多用于Java代码实现。

1.2.2应用

第一条语句是创建数据库Java115,第二条语句加上了一个判断条件 if not existe 意思是判断java115数据库是否存在,如不存在则创建,如存在则不执行创建操作;

sql 复制代码
create database java115;
create database if not exists java115;//进行重复判定
create database if not exists java115 charset utf8mb4;//制定一个字符集

**1.2.3补充:**这里对上面提到的字符集进行一些补充:

1》.字母和数字我们通常用ASCII值进行表示(范围0-127),大小为一个字节;

2》.对中文来说,最常用的表示方法主要有两种:

a.GBK(早期使用的一种方案):2个字节表示一个汉字;

b.UTF-8(当下最流行的方案)变长编码:1-4个字节,对于中文,通常是三个字节;

特别的,在Java中 char 是2个字节表示一个汉字,这里使用的是UTF-16(它和UTF-8有一定关系);

c.UTF-8mb4才是字符集的完全体,UTF-8是它的一个子集。

1.3使用数据库:

sql 复制代码
use 数据库名;
use java115;

1.3.1注意:

对于一个数据库服务器·,一般有多个数据库,都应先选中再操作(使用数据库),这是对表进行操作的前提。

1.4:删除数据库:

sql 复制代码
DROP DATABASE [IF EXISTS] db_name;
drop database if exists db_test1;
drop database if exists db_test2;

1.4.1:注意:

1.在代码第二三行,这里的 if exists 是一种条件判断(安全机制),意思是仅当数据库存在时才执行删除,避免因数据库不存在而报错。

2.常用的数据类型:

2.1整形和浮点型:

说明:此图为借用。

2.2字符串类型:

2.3:日期类型:

3.表的操作:

**前提:**在操作数据库中的表之前需要先使用该数据库,语法见前;

3.0查看表:

sql 复制代码
show 表名;

3.1:查看表结构:

sql 复制代码
desc 表名;

3.2:创建表:

create table 表名 (列名 类型,列名 类型,列名 类型.............);

sql 复制代码
CREATE TABLE table_name (
 field1 datatype,
 field2 datatype,
 field3 datatype
);

还可以使用 comment 字段进行说明:

sql 复制代码
create table stu_test (
   id int,
   name varchar(20) comment '姓名',
   password varchar(50) comment '密码',
   age int,
   sex varchar(1),
   birthday timestamp,
   amout decimal(13,2),
   resume text
);

**注意:**1.engine存储引擎:mysql是数据库,本体是服务器,mysql的服务器是一个很复杂的软件,它包含了很多个模块,存储引擎就是其中之一,他负责如何在硬盘上进行存储的模块;MySQL提供了多种存储引擎,我们可以根据需求进行替换,但通常使用的是lnnodb这个引擎;

2.在MySQL中,如果表示表名/列名,当这个名字需要通过2个及以上的单词构成的时候,通常用"蛇形命名法"来命名,即用下划线分割多个单词。

例如:

sql 复制代码
create table student1
(student_id int,student_name varchar(10),student_age int,student_gender varchar(1));
desc student1;

3.3删除表(谨慎操作!!!):

sql 复制代码
DROP [TEMPORARY] TABLE [IF EXISTS] tbl_name [, tbl_name] ;
-- 删除 stu_test 表
drop table stu_test;
-- 如果存在 stu_test 表,则删除 stu_test 表
drop table if exists stu_test;

3.4修改表:

3.4.1:添加列:

sql 复制代码
ALTER TABLE table_name
ADD column_name data_type [constraint];
sql 复制代码
alter table student1 add class_id int after student_gender;

3.4.2:修改列:

sql 复制代码
ALTER TABLE table_name
ADD COLUMN column_name data_type [constraint];

3.4.3:删除列:

sql 复制代码
ALTER TABLE table_name DROP COLUMN column_name;

3.4.4:重命名列:

sql 复制代码
ALTER TABLE old_table_name
RENAME TO new_table_name;

应用:

sql 复制代码
alter table student1 rename COLUMN class_id to classId;

本章完.........下节更新增删查改功能.........

相关推荐
qq_192779871 小时前
高级爬虫技巧:处理JavaScript渲染(Selenium)
jvm·数据库·python
u0109272712 小时前
使用Plotly创建交互式图表
jvm·数据库·python
爱学习的阿磊2 小时前
Python GUI开发:Tkinter入门教程
jvm·数据库·python
tudficdew3 小时前
实战:用Python分析某电商销售数据
jvm·数据库·python
Fleshy数模3 小时前
CentOS7 安装配置 MySQL5.7 完整教程(本地虚拟机学习版)
linux·mysql·centos
sjjhd6523 小时前
Python日志记录(Logging)最佳实践
jvm·数据库·python
Configure-Handler3 小时前
buildroot System configuration
java·服务器·数据库
2301_821369613 小时前
用Python生成艺术:分形与算法绘图
jvm·数据库·python
az44yao4 小时前
mysql 创建事件 每天17点执行一个存储过程
mysql
电商API_180079052474 小时前
第三方淘宝商品详情 API 全维度调用指南:从技术对接到生产落地
java·大数据·前端·数据库·人工智能·网络爬虫