Java--II--03--sql语句操作

连接mysql服务器

通过命令行工具可以登录MySQL客户端,连接MySQL服务器,从而访问服务器中的数据。

1 连接mysql服务器

mysql -uroot -p密码

**-u:**后面的root是用户名,这里使用的是超级管理员root;

**-p:(小写的p)**后面的root是密码,这是在安装MySQL时就已经指定的密码;

2 连接mysql服务器并指定IP和端口:

mysql -uroot -proot -h127.0.0.1 -P3306

**-h:**后面给出的127.0.0.1是服务器主机名或ip地址,可以省略的,默认连接本机;

**-P:(大写的P)**后面的3306是连接端口,可以省略,默认连接3306端口;

3 退出客户端命令:quit或exit或 \q

4 FAQ:常见问题:

在这里插入图片描述
解决方法:复制mysql安装目录下的bin目录的路径,将bin目录的路径添加到path环境变量中!!

拓展内容

(1)在cmd中连接mysql服务器之后,可以使用 #、/**/、-- 等符号添加注释,例如:
在这里插入图片描述

(2)在cmd中连接mysql服务器之后,在书写SQL语句时,可以通过 \c 取消当前语句的执行。例如:

在这里插入图片描述

数据库及表操作

创建、删除、查看数据库

提示: (1)SQL语句对大小写不敏感。推荐关键字使用大写,自定义的名称(库名,表名,列名等)使用小写。

SHOW DATABASES; -- 查看当前数据库服务器中的所有库
CREATE DATABASE mydb1; -- 创建mydb1库

(2)并且在自定义名称时,针对多个单词不要使用驼峰命名,而是使用下划线连接。(例如:tab_name,而不是 tabName )

– 01.查看mysql服务器中所有数据库

在这里插入代码片

– 02.进入某一数据库(进入数据库后,才能操作库中的表和表记录)

– 语法:USE 库名;

在这里插入代码片

– 查看已进入的库

在这里插入代码片

– 03.查看当前数据库中的所有表

-- 先进入某一个库,再查看当前库中的所有表

– 04.删除mydb1库

– 语法:DROP DATABASE 库名;

在这里插入代码片

– 思考:当删除的库不存在时,如何避免错误产生?

在这里插入代码片

– 05.重新创建mydb1库,指定编码为utf8

– 语法:CREATE DATABASE 库名 CHARSET 编码;

– 需要注意的是,mysql中不支持横杠(-),所以utf-8要写成utf8;

在这里插入代码片

– 如果不存在则创建mydb1;

在这里插入代码片

– 06.查看建库时的语句(并验证数据库库使用的编码)

– 语法:SHOW CREATE DATABASE 库名;

在这里插入代码片

创建、删除、查看表

– 07.进入mydb1库,删除stu学生表(如果存在)

– 语法:DROP TABLE 表名;

在这里插入代码片

– 08.创建stu学生表(编号[数值类型]、姓名、性别、出生年月、考试成绩[浮点型]),建表的语法:

CREATE TABLE 表名(
	列名 数据类型,
	列名 数据类型,
	...
  	列名 数据类型
);

SQL语句:

-- 如果存在,则删除stu表
-- 创建stu学生表

– 09.查看stu学生表结构

– 语法:desc 表名

在这里插入代码片

在这里插入图片描述

新增、更新、删除表记录

– 10.往学生表(stu)中插入记录(数据)

– 语法:INSERT INTO 表名(列名1,列名2,列名3…) VALUES(值1,值2,值3…);

-- 如果是在cmd中执行插入记录的语句,先 set names gbk; 再插入记录!

-- 查询学生表中的所有记录

提示:

(1)当为所有列插入值时,可以省写列名,但值的个数和顺序必须和声明时列的个数和顺序保持一致!
(2)SQL语句中的值为字符串或日期时,值的两边要加上单引号(有的版本的数据库双引号也可以,但推荐使用单引号)。
(3)(针对cmd窗口)在插入数据之前,先设置编码:set names gbk;
或者用以下命令连接mysql服务器:
	mysql --default-character-set=gbk -uroot -proot
等价于:
	mysql -uroot -proot
	set names gbk;

– 11.查询stu表所有学生的信息

– 语法:SELECT 列名 | * FROM 表名

在这里插入代码片

– 12.修改stu表中所有学生的成绩,加10分特长分

– 修改语法: UPDATE 表名 SET 列=值,列=值,列=值…[WHERE子句];

在这里插入代码片

– 13.修改stu表中编号为1的学生成绩,将成绩改为83分。

在这里插入代码片

提示:where子句用于对记录进行筛选过滤,保留符合条件的记录,将不符合条件的记录剔除。

– 14.删除stu表中所有的记录

– 删除记录语法: DELETE FROM 表名 [where子句]

在这里插入代码片

– 仅删除符合条件的

在这里插入代码片

查询表记录

– 准备数据: 以下练习将使用db10库中的表及表记录,请先进入db10数据库!!!

基础查询

SELECT 语句用于从表中选取数据。结果被存储在一个结果表中(称为结果集)。

语法:SELECT 列名称 | * FROM 表名

提示:(1) *(星号)为通配符,表示查询所有列。

(2)但使用 *(星号)有时会把不必要的列也查出来了,并且效率不如直接指定列名

– 15.查询emp表中的所有员工,显示姓名,薪资,奖金

在这里插入代码片

– 16.查询emp表中的所有部门和职位

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值