java中mysql、sql、事务相关知识

DML与DDL的区别

一、DML与DDL的含义:

1、DML(Data Manipulation Language)数据操作语言-数据库的基本操作,SQL中处理数据等操作统称为数据操纵语言,简而言之就是实现了基本的“增删改查”操作。包括的关键字有:select、update、delete、insert、merge

2、DDL(Data Definition Language)数据定义语言-用于定义和管理 SQL 数据库中的所有对象的语言,对数据库中的某些对象(例如,database,table)进行管理。包括的关键字有:

create、alter、drop、truncate、comment、grant、revoke

二、DML与DDL的区别:

1.DML操作是可以手动控制事务的开启、提交和回滚的。

2.DDL操作是隐性提交的,不能rollback!

Mysql的拓展

开机如果要启动mysql的服务

请添加图片描述

安装的时候指定服务名称对应上面的服务名称

请添加图片描述

修改服务名

在这里插入图片描述

拓展:

什么是事务?

**事务(Transaction),一般是指要做的或所做的事情。**在计算机术语中是指访问并可能更新数据库中各种数据项的一个程序执行单元(unit)。事务通常由高级数据库操纵语言或编程语言(如SQL,C++或Java)书写的用户程序的执行所引起,并用形如begin transaction和end transaction语句(或函数调用)来界定。事务由事务开始(begin transaction)和事务结束(end transaction)之间执行的全体操作组成。

为什么要事务?

事务是为解决数据安全操作提出的,事务控制实际上就是控制数据的安全访问。

用一个简单例子说明:银行转帐业务,账户A要将自己账户上的1000元转到B账户下面,A账户余额首先要减去1000元,然后B账户要增加1000元。假如在中间网络出现了问题,A账户减去1000元已经结束,B因为网络中断而操作失败,那么整个业务失败,必须做出控制,要求A账户转帐业务撤销。这才能保证业务的正确性,完成这个操走就需要事务,将A账户资金减少和B账户资金增加放到同一个事务里,要么全部执行成功,要么全部撤销,这样就保证了数据的安全性。

详细了解:

一、事务提交(commit)

成功的结束,将所有的DML(insert、update、delete)语句操作历史记录和底层硬盘数据来一次同步。

二、事务回滚(rollback)

失败的结束,将所有的DML语句操作历史记录全部清空。

详情

Navicat的使用方法

打开软件后,连接名随便写,可以是IP地址或者是自己姓名的简写
在这里插入图片描述
双击连接名可以打开连接,图标显示为绿色
在这里插入图片描述
要在对应的数据库名下,新建查询然后打入sql的语句最后运行显示对应的表;记得刷新表,如果报错参考附录内容,但是我的那个依然报错但是刷新表的时候还是创建出来了。
在这里插入图片描述
在引入新的sql文件到数据库的时候首先要新建一个数据库(此时的排序规则可以不用填,字符集填utf-8),然后再导入sql文件
请添加图片描述
然后找到对应的sql的文件导入就可以了。最后刷新一下数据库和表名就可以了。

还可以设置自己的sql文件保存到哪里,方便查找
在这里插入图片描述

可以设置递增,以后输入数据的时候就不用自己在修改id值了,id值是4个字节,32位,2的32次方42亿多一些在这里插入图片描述

请添加图片描述
如果选了不为null,就一定需要输入值,不然会报错
请添加图片描述
请添加图片描述

附录:

在使用sql语句创建表的时候,出现错误:[Err] 1055 - Expression #1 of ORDER BY clause is not in GROUP BY clause and contains nonaggregated c

解决方式参考详情

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值