课程名称 | 面向对象程序设计 | 实验日期 | 11月4日 | ||
实验项目名称 | 数据库操作 | 实验地点 | 1#608 | ||
实验类型 | √验证型□设计型 □综合型 | 学时 | 4 | ||
一、实验目的及要求(本实验所涉及并要求掌握的知识点) | |||||
1、通过实验,使学生了解数据库的相关知识 2、学习Mysql的使用 3、学习Navicat的使用,并在Navicat环境下调试数据库的操作 4、掌握数据库表的增删改查等基本操作 | |||||
二、实验环境(本实验所使用的硬件设备和相关软件) | |||||
1、计算机 2、高速外网接入 | |||||
三、实验内容及步骤 | |||||
实验内容: 1、学习MySql的下载、安装、服务的启动、修改密码 2、学习Navicat的下载、安装、数据库的新建、表的建立、数据的导入和导出 3、学习SQL相关知识 showdatabases create use select insert delete update 4、自建数据库,做增删改查四种不少于20个操作。(每种5个) 只需要把上面第4小题的操作结果记录下来 | |||||
四、实验结果(本实验源程序清单及运行结果或实验结论、实验设计图) | |||||
一实验源程序运行结果 1、 总结:(1)connection接口中的方法 StatementcreateStatement() 创建一个Statement对象将SQL语句发送到数据库。不带参数的SQL语句通常使用Statement对象执行。 (2)DriverManage接口:PublicstaticConnectiongetConnection(Stringurl,Stringuser,Stringpassword)试图建立到指定数据库URL的连接。DriverManager试图从已注册的JDBC驱动程序集中选择一个适当的驱动程序 Url-jdbc:subportocol:subname形式的数据库url User-数据库用户,连接是为该用户创建的 Password-用户的密码 (3)Statement接口:interfaceStatement extendsWrapper 用于执行静态SQL语句并返回它所生成结果的对象。 在默认情况下,同一时间每个Statement对象在只能打开一个ResultSet对象。因此,如果读取一个ResultSet对象与读取另一个交叉,则这两个对象必须是由不同的Statement对象生成的。如果存在某个语句的打开的当前ResultSet对象,则Statement接口中的所有执行方法都会隐式关闭它。 executeUpdate intexecuteUpdate(Stringsql) throwsSQLException 执行给定SQL语句,该语句可能为INSERT、UPDATE或DELETE语句,或者不返回任何内容的SQL语句(如SQLDDL语句)。 参数: sql-SQL数据操作语言(DataManipulationLanguage,DML)语句,如INSERT、UPDATE或DELETE;或者不返回任何内容的SQL语句,如DDL语句。 返回: (1)对于SQL数据操作语言(DML)语句,返回行计数(2)对于什么都不返回的SQL语句,返回0 抛出: SQLException如果发生数据库访问错误,在已关闭的Statement上调用此方法,或者给定的SQL语句生成ResultSet对象 executeQuery ResultSetexecuteQuery(Stringsql)throwsSQLException 执行给定的SQL语句,该语句返回单个ResultSet对象 参数:sql-要发送给数据库的SQL语句,通常为静态的SQLSELECT语句 返回:包含给定查询所生成数据的ResultSet数据;永远不能为null 抛出:SQLException-如果发生数据库访问错误,在已关闭的Statement上调用此方法,或者是给定SQL语句生成单个ResultSet对象之外的任何其他内容 (4)ResultSet接口: Booleannext()throwsSQLException 将光标从当前位置向前移一行。ResultSet光标最初位于第一行之前;第一次调用next方法使第一行成为当前行;第二次使用使第二行成为当前行,以此类推。当调用next方法返回false时,光标位于最后一行的后面; 返回:如果新的当前行有效,则返回true;如果不存在下一行,则返回false。 抛出:SQLException-如果发生数据库访问错误或在关闭的结果集上调用此方法。 intgetInt(intcolumnIndex) 以java编程语言中int的形式获取ResultSet对象的当前行中指定列的值 参数:columnIndex-第一个列的值是1,第二个是2,、、、、 返回:列值;如果值为SQLNULL,则返回值为0; intgetInt(StringcolumnLabel) 以Java编程语言中int的形式获取此ResultSet对象的当前行中指定列的值。 参数: columnLabel-使用SQLAS子句指定的列标签。如果未指定SQLAS子句,则标签是列名称 返回: 列值;如果值为SQLNULL,则返回值为0 抛出: SQLException-如果columnLabel无效;如果发生数据库访问错误或在已关闭的结果集上调用此方法 SQL语句中 选择语句为Select*from表名where+条件语句 删除语句为deletefrom表名where+条件语句 2、 所有方法上同,SQL语句插入操作为 Insertinto+表名+values(value1,value2,...) 3、 4、 5、 SQL语句:Update表名set表名.列名=新值where+条件语句=新值 第四题 运行结果 | |||||
五、实验总结(对本实验结果进行分析,实验心得体会及改进意见) | |||||
实践是检验真理的唯一标准 | |||||
实验评语 | |||||
实验成绩 | 指导教师签名:年月日 |
mysql与Java连接 以及有关操作
最新推荐文章于 2024-09-09 09:47:53 发布