实验10JDBC课案Word文件下载.docx

上传人:b****5 文档编号:15815826 上传时间:2022-11-16 格式:DOCX 页数:19 大小:136.57KB
下载 相关 举报
实验10JDBC课案Word文件下载.docx_第1页
第1页 / 共19页
实验10JDBC课案Word文件下载.docx_第2页
第2页 / 共19页
实验10JDBC课案Word文件下载.docx_第3页
第3页 / 共19页
实验10JDBC课案Word文件下载.docx_第4页
第4页 / 共19页
实验10JDBC课案Word文件下载.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

实验10JDBC课案Word文件下载.docx

《实验10JDBC课案Word文件下载.docx》由会员分享,可在线阅读,更多相关《实验10JDBC课案Word文件下载.docx(19页珍藏版)》请在冰豆网上搜索。

实验10JDBC课案Word文件下载.docx

SQL(StructQueryLanguage,结构化查询语句)是标准的数据库操作命令集合,它允许可以对数据库中的多个对象进行操作,对于表对象存在Insert,Update,Delete,Select,Modify,Truncate,Create,Drop等操作。

基础语法如下:

●Select字段1[,字段2,字段3]from数据表A[,数据表B]where条件1and(or)条件2orderby

●Insertinto数据表(字段列表)values(值)

●Update数据表set字段1=值1[,字段2=值2]where条件1and(or)条件2

●Deletefrom数据表where条件1and(or)条件2

SQL是Client端和Server端的桥梁,Client用SQL来象Server端发送请求,Server返回Client端要求的结果。

2.MYSQL数据库

MYSQL是一种开放源代码的关系型数据库管理系统(RDBMS),MySQL关系型数据库于1998年1月发行第一个版本。

它使用系统核心提供的多线程机制提供完全的多线程运行模式,提供了面向C、C++、Eiffel、Java、Perl、PHP、Python以及Tcl等编程语言的编程接口(APIs),支持多种字段类型并且提供了完整的操作符支持查询中的SELECT和WHERE操作。

MySQL数据库系统使用最常用的数据库管理语言--结构化查询语言(SQL)进行数据库管理。

由于MySQL是开放源代码的,因此任何人都可以在GeneralPublicLicense的许可下下载并根据个性化的需要对其进行修改。

MySQL因为其速度、可靠性和适应性而备受关注。

大多数人都认为在不需要事务化处理的情况下,MySQL是管理内容最好的选择。

3.JDBC

JDBC(JavaDataBaseConnectivity,Java数据库连接)是由一组Java类和接口组成的API,相关类包括在java.sql类库包中。

JDBC架构如图5-1所示。

图5-1JBDC架构图

JDBC是由一系列连接(Connection)\SQL语言(Statement)和结果集(ResultSet)构成。

通过JDBCURL提供一种标识数据库的方法,可以使相应的驱动程序识别该数据库并与之建立连接,JDBCURL由三个部分组成,之间用”:

”间隔。

jdbc:

<

驱动程序连接机制>

:

数据ODBC名>

连接时,首先通过DriverManager类加载数据库设备驱动程序,该类负责选取数据库驱动程序和建立新的数据库连接。

注意,驱动管理器只能击活系统已登录的驱动程序。

你可以通过自注册方法,添加需要的数据库驱动程序。

1)利用驱动程序列表设置系统属性jdbc.drivers,

Jdbc.drivers=com.pointbase.jdbc.jdbcDriver:

com.foo.aDriver

2)当驱动程序注册成功后,就可以用来装入驱动程序类来调用驱动程序,

Class.forName(“com.pointbase.jdbc.jdbcDriver”)

当数据库驱动程序已注册,就可以连接指定的数据库设备了,如果要访问一个在WIN32系统中已注册的数据库设备时,步骤如下:

1)加载驱动程序

Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver”);

2)创建指定数据库的URL

Stringurl=“jdbc:

odbc:

fred”;

3)建立数据库连接

DriverManager.getConnection(url,“userID”,“password”);

当数据库连接成功后可执行操作,在Java语言中提供了两种操作方法:

分别为根据SQL语句提供查询,并返回一个结果集的executeQuery(StringSQL);

以及根据SQL语言进行对数据对象的增加、删除和修改等操作,并返回一个操作成功的行好或者行数的executeUpdate(StringSQL);

ResultSetexecuteQuery(Stringsql)throwsSQLException

IntexecuteUpdate(Stringsql)throwsSQLException

在对数据库进行操作时,可能出现的异常有:

●SQLException,SQL语句有错误;

●BatchUpdateException,批量修改数据对象异常;

●SQLWarning,SQL语句警告;

●DataTruncation,数据清空异常。

查询结果集resultset接口,JAVA的接口定义如图5-2所示。

图5-2结果集接口

一个数据表代表一个数据结果集合,它通常是一个对数据库查询申明(statement)的执行结果。

一个ResultSet对象维护一个指向数据纪录行的指针,初始情况下是指向第一行之前。

ResultSet的next()方法是将结果集指针移动到下一条纪录,当已经是最后移行了,将返回一个false值,这个值可以用来作为判断循环结束的条件,在一般情况下使用while循环来依次列出结果集中所有的纪录,如

Statementstmt=newStatement();

ResultSetrs=stmt.executeQuery();

While(rs.next()){

……

}

一个默认的ResultSet对象是不可以修改的,它有一个单方向,向前移动的游标。

所以,你可以在数据集中从前到后浏览一遍数据。

四.主要方法:

1.resultSet主要方法

 

boolean

absolute(int 

row)移动游标到指定的纪录行上

void

afterLast()将游标移动到最后行之后

beforeFirst()将游标移动到最前行之前

cancelRowUpdates()取消行修改

close()关闭当前纪录结果集

deleteRow()删除行

int

findColumn(String 

columnName)根据列名称定位列

first()将游标移动到第一行

Array

getArray(int 

i)获得指定列号的数据存储在数组中

getArray(String 

colName)获得指定列名的数据存储在数组中

InputStream

getAsciiStream(String 

columnName)获得ASCII流数据

BigDecimal

getBigDecimal(String 

columnName)获得大数值数据

getBinaryStream(String 

columnName)获得2进制流数据

Blob

getBlob(String 

colName)获得大数据量数据

getBoolean(String 

columnName)获得boolean数据

byte

getByte(String 

columnName)获得字节数据

byte[]

getBytes(String 

columnName)获得字节数组数据.

Reader

getCharacterStream(String 

columnName)获得字符流数据

Clob

getClob(String 

colName)获得大字符数据

getConcurrency()获得金额数据

String

getCursorName()获得游标名称

Date

getDate(String 

columnName)获得日期数据

columnName,Calendar 

cal)获得某种格式的日期

double

getDouble(String 

columnName)获得双精度数据

getFetchDirection()获得取数据的方向

getFetchSize()获得取数据的容量

float

getFloat(String 

columnName)获得单精度数据

getInt(String 

columnName)获得整形数据

long

getLong(String 

columnName)获得长整形数据

getRow()获得纪录集行数

short

getShort(String 

columnName)获得短整形Short类型数据

Statement

getStatement()获得SQL申明语句

getString(String 

columnName)获得字符串String类型数据

Time

getTime(String 

columnName)获得时间Time类型数据

Timestamp

getTimestamp(String 

columnName)获得时间戳TimeStamp类型数据

RetrievesthevalueofthedesignatedcolumninthecurrentrowofthisResultSetobjectasajava.sql.Timestampobject.

cal)

Retrievesthevalueofthedesignatedcolumninthecurrentrowof

URL

getURL(String 

columnName)获得URL类型数据

insertRow()插入行纪录

isAfterLast()判断是否是纪录集后

isBeforeFirst()判断是否是纪录集前

isFirst()判断是否是起始行尾

isLast()判断是否是纪录尾行

last()将游标移到最后行

moveToCurrentRow()将游标移当前行

moveToInsertRow()将游标移插入行

next()将游标后移一行

previous()将游标前移一行

refreshRow()刷新行纪录

rowDelete

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1