![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
MySQL
Vicali
程序员
展开
-
数据库反射
通过 ResultSetMetaData 可以获得select语句产生的虚拟表的表结构(表名,列名,数据类型,列的个数)public static void main(String[] args) throws ClassNotFoundException, SQLException { 获得Connection对象 Class.forName("com.mysql.cj.jdbc.Driver"); String url="jdbc:mysql://localhost:3306/scho原创 2020-12-08 20:20:51 · 479 阅读 · 0 评论 -
封装数据库DML,DQL操作——代码详解
一、封装数据库DML操作public class DB_utils { static final String URL = "jdbc:mysql://localhost:3306/dep ?serverTimezone=GMT"; static final String USER = "root"; static final String PWD = "password"; - 封装加载驱动方法 public static Connection getConnection()原创 2020-12-07 19:09:22 · 306 阅读 · 0 评论 -
Java中深度克隆和浅度克隆
在Java中克隆分为两种:深度克隆和浅度克隆浅度克隆:浅度克隆完全复制一个对象,但对其内部的引用数据类型,浅度克隆只会复制该对象的引用,因此如果修改被克隆的对象,会影响到原对象。实现方式1.被克隆的对象实现Cloneable接口,2.让克隆的类重写Object的clone()方法深度克隆深度克隆完全复制一个对象,包括原对象的引用数据类型也会复制并额外开辟空间去存储数据,独立于原对象,修改克隆出来的对象不会影响原对象。-实现方式常用的是使用序列化实现深度克隆(比较常用,使用起来较原创 2020-12-05 14:20:23 · 213 阅读 · 0 评论 -
什么是SQL注入?如何防止注入(附例)
注入发生的原因如果用户通过在表单中填写带有SQL关键字的数据来让数据库执行非常规代码的过程。SQL 数据库的操作是通过 SQL 语句来执行的,而无论是执行代 码还是数据项都必须写在 SQL 语句之中,这就导致如果我们在数据项中加入了某些 SQL 语 句,这些关键字就很可能在数据库写入或读取数据 时得到执行。...原创 2020-12-05 10:14:10 · 589 阅读 · 0 评论 -
JDBC实现增删改查(附代码详解)
JDBC实现宠物信息的增效删改查主方法:public class Demo { public static void main(String[] args) throws ClassNotFoundException, SQLException { //加载驱动 Driver(); Pet pet = new Pet(55,"小黑","公"); //添加信息 add(pet); //删除信息 dele原创 2020-12-05 09:26:53 · 1826 阅读 · 1 评论 -
数据库练习题
现有三个表Student(ID 学生号,Name 姓名),Subject(SubID 课程号,SubName 课程名),Score ( ScoreId 成绩号 , SubID 课程号, StdID 学生号, Score 成绩)数据如下:Studenta001 张三a002 王强Subjects001 英语s002 数学s003 语文s004 历史Score1 s001 a001 782 s002 a001 673 s003原创 2020-12-03 20:43:27 · 187 阅读 · 0 评论 -
MySQL练习题 答案和解析
题目一现有一张学生信息表, Student表结构如下:stu_id varchar(10)stu_name varchar(30)stu_sex varchar(2)stu_high double(4,1)stu_weight double(4,1)数据如下:1001 张三 男 178.3 78.41002 张君 女 163.3 50.31003 王文 女 158.3 46.81004 李海 男 175.3 69.6100原创 2020-12-03 19:25:54 · 900 阅读 · 0 评论 -
MySQL纵横转换(详解附例子)
题目3: (case end实现)表名: Scorename varchar(10)subject varchar(10)grade int(3)数据如下:name subject gradestudent1 语文 80student1 数学 70student1 英语 60student2 语文 90student2 数学 80student2 英语 100需转换为姓名 语文 数学 英语student1 80 70 60student2原创 2020-12-03 16:30:23 · 485 阅读 · 0 评论 -
MySQL的常用函数(字符串、日期、数字、其它函数)
字符串函数字符串函数select ascil(‘ab’)我们可以给名字起别名select ascii (‘ab’)charName统计字符串的长度select char_length(‘hello’)实现字符串拼接select concat(‘sad’,‘sad’)实现字符串反转select reverse (‘hello’)截取字符串select substr(‘2020-12-02’,‘6’,5)数组函数(认识)数字函数原创 2020-12-01 20:31:20 · 159 阅读 · 0 评论 -
如何打开MySQL的远程访问
原创 2020-12-01 20:06:56 · 78 阅读 · 0 评论 -
MySQL———事物(Transaction)
一、什么是事物事物:一个最小的不可分割的工作单元。(例:银行转账业务)原子操作是对一个单一的对象(包括类域、数组元素等永久对象)数据进行修改过程中发生断电、严重异常等失败情况时,保证原始数据的完整性,即恢复到初始数据状态。事务操作是对一系列的永久数据更新的一个逻辑的集合,要么所有的永久数据的修改都正确完成,要么所有的数据都被恢复为它们以前的值。银行账户表 tb_actactno balance1 5002 100转账操作原创 2020-12-01 17:59:56 · 1432 阅读 · 0 评论