教材学习内容总结

第11章 JDBC与MySQL数据库

MySQL数据库管理系统

MySQL数据库管理系统,简称MySQL,是世界上最流行的开源数据库管理系统,其社区版(MySQL Community Edition)是最流行的免费下载的开源数据库管理系统。

下载安装后,进行启动MySQL数据库服务器,并建立连接,建立数据库,创建表等操作。

连接MySQL数据库

1.下载JDBC-MySQL数据库驱动

2.加载JDBC-MySQL数据库驱动

代码如下:

try{
Class.forName("com.mysql.jdbc.Driver");
}
catch(Exception e){}

3.连接数据库

使用Connection getConnection(java.lang.String)方法建立连接的代码如下:

Connection con; String uri = "jdbc:mysql://192.168.100.1:3306/students?user=r oot&password=&useSSL=true"; try{ con = DriverManager.getConnection(uri); //连接代码 } catch(SQLException e){     System.out.println(e); }

使用

Connection getConnection(java.lang.String, java.lang.String, java.lang.String)

方法建立连接的代码如下:

Connection con;
String uri = "jdbc:mysql:// 192.168.100.1:3306/students? useSSL=true";
String user ="root";
String password ="";
try{
con = DriverManager.getConnection(uri,user,password); //连接代码
}
catch(SQLException e){
System.out.println(e);
}

4.注意汉字问题

查询操作
具体步骤:
1.得到SQL查询语句对象 try{ Statement sql=con.createStatement();
}
catch(SQLException e ){}

2.处理查询结果

注意:

无论字段是何种属性,总可以使用

getString(int columnIndex)或

getString(String columnName)

方法返回字段值的串表示

3.关闭连接

顺序查询:

指ResultSet对象一次只能看到一个数据行,使用next()方法移到下一个数据行,next()方法最初的查询位置,即游标位置,位于第一行的前面。next()方法向下(向后、数据行号大的方向)移动游标,移动成功返回true,否则返回false。

控制游标:

为了得到一个可滚动的结果集,需使用下述方法获得一个Statement对象。

Statement stmt = con.createStatement(int type ,int concurrency);

条件与排序查询:

where子语句

一般格式:

select 字段 from 表名 where 条件

2.排序

用order by子语句对记录排序

更新、添加与删除操作

1.更新

update 表 set 字段 = 新值 where <条件子句>

2.添加

insert into 表(字段列表) values (对应的具体的记录)



insert into 表 values (对应的具体的记录)

3.删除

delete from 表名 where <条件子句>

使用预处理语句

Connection和某个数据库建立了连接对象con,那么con就可以调用prepareStatement(String sql)方法对参数sql指定的SQL语句进行预编译处理,生成该数据库底层的内部命令,并将该命令封装在PreparedStatement对象中,那么该对象调用下列方法都可以使得该底层内部命令被数据库执行。

事务

JDBC事务处理步骤

1.用setAutoCommit(booean b)方法关闭自动提交模式

2.用commit()方法处理事务

3.用rollback()方法处理事务失败

代码托管

学习进度

已完成代码1440行,已完成博客数量13篇。

学习感受

已经学习了7周的java感触颇深,我觉得学习非常的赶进度,因为电脑坏了一次,后来又换了一个电脑,一次一次的重装软件浪费了大量的时间。导致学习比较落后。结组的队友退学了。合作完成的学习任务迟迟没有完成,进度落下不少,所以压力较大,希望可以快些追上老师的进度。

20165304《Java程序设计》第七周学习总结的更多相关文章

  1. 201521123027 <java程序设计>第七周学习总结

    1.本周学习总结 2.书面作业 Q1.ArrayList代码分析 1.1 解释ArrayList的contains源代码 答: 源代码: //contains()方法 public boolean c ...

  2. 201871010106-丁宣元 《面向对象程序设计(java)》第七周学习总结

    201871010106-丁宣元 <面向对象程序设计(java)>第七周学习总结 正文开头: 项目 内容 这个作业属于哪个课程 https://home.cnblogs.com/u/nwn ...

  3. 20145213《Java程序设计》第九周学习总结

    20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...

  4. 21045308刘昊阳 《Java程序设计》第九周学习总结

    21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...

  5. 20145236 《Java程序设计》第九周学习总结

    20145236 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章 整合数据库 JDBC简介 1.JDBC是java联机数据库的标准规范.它定义了一组标准类与接口,标准API ...

  6. 20155304田宜楠2006-2007-2 《Java程序设计》第一周学习总结

    20155304田宜楠2006-2007-2 <Java程序设计>第一周学习总结 教材学习内容总结 - 浏览教材,根据自己的理解每章提出一个问题 第一章 除了书上提到的开发工具还有什么适合 ...

  7. 20155303 2016-2017-2 《Java程序设计》第二周学习总结

    20155303 2016-2017-2 <Java程序设计>第二周学习总结 教材学习内容总结 『注意』 "//"为单行批注符: "/*"与&quo ...

  8. 20145237 《Java程序设计》第九周学习总结

    20145237 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章 整合数据库 JDBC入门 ·数据库本身是个独立运行的应用程序 ·撰写应用程序是利用通信协议对数据库进行指令 ...

  9. 20175209 《Java程序设计》第九周学习总结

    20175209 <Java程序设计>第九周学习总结 一.教材知识点总结 有关数据库下载中存在可能出现的问题已经在博客<数据库安装和使用过程中出现的一些问题>给出了相应的解决办 ...

  10. 20175317 《Java程序设计》第九周学习总结

    20175317 <Java程序设计>第九周学习总结 学前准备 首先下载XAMPP,下载完成后打开: 将前两个选项打开 在IDEA中配置驱动mysql-connector-java-5.1 ...

随机推荐

  1. JVM 专题

    未完待续>>> JVM - 整体结构 摘抄自:<分布式java应用基础与实践>-第三章 JVM - 内存 对上图各部分的概要解释: JVM - GC 详情参考: http ...

  2. C++中的指针与引用的区别与联系

    引用与指针实质上都是间接地指代另一个变量,引用相当于该变量的外号或者小名,而指针实质上是指向该变量的地址进而操作该变量 区别1:指针的地址与该变量不同,但引用的地址与该变量相同相同 #include& ...

  3. oracle表空间不足时如何处理

    1 查看表在那个表空间select tablespace_name,table_name from all_tables where table_name='T_BM_GOODS_BASE'; 2   ...

  4. Charles问题

    1.内容显示乱码 1.1.使用Charles抓包,text显示乱码,note提示如下 SSL Proxying not enabled for this host: enable in Proxy S ...

  5. 点击input触发弹出框的bug

    先点击第一个input建立弹出框,再点击第二个input打开弹出框,操作点击,同时触发了两个input点击事件.主要原因是建立弹出框时绑定了input1的click事件,再次触发时,又再亿次绑定了in ...

  6. [UE4]国际化,中英文切换

    只有“Text”数据类型才支持国际化 必须以独立游戏窗口运行,语音切换才会起作用.

  7. MySQL 之管理脚本

    Mysql中查看每个IP的连接数 ) as ip , count(*) from information_schema.processlist group by ip;

  8. hive计算周一的日期

    ) FreeMarker --',-7)?date('yyyy-MM-dd'),'week')?string('yyyy-MM-dd')}'

  9. [java,2017-12-01] 播放音频文件

    废话不多说,直接上代码 jar包 <!-- 2017-12-01音频播放jar包 --> <dependency> <groupId>javazoom</gr ...

  10. Ubuntu安装MyEclise16 过程差不多

    选择好安装路径,和workpace路径,可能会因为工作空间放的位置不太对,导致myeclipse出现问题. 1.Ubuntu安装MyEclise10 不知道为什么网上会有那么多安装过程,还有配置目录和 ...