如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
12章数据库编程数据库概述数据库是一个有组织的数据集合,它由一个或多个表组成。每一个表中都存储了对一类对象的数据描述。数据库管理系统(databasemanagementsystem,DBMS)以一种与数据库格式一致的方式,提供了存储和组织数据的机制。当前最流行的数据库是关系型数据库,它是将数据表示为表的集合,通过建立简单表之间的关系来定义结构的一种数据库。数据库中的表按照行和列的形式来存储信息。行表示关系型数据库中的记录,列表示数据属性。比较著名的关系数据库管理系统有Oracle、Sybase、DB2、MySQL、MicrosoftSQLServer、MicrosoftAccess等。SQL基础知识SQL基础知识1.建表语句格式:CREATETABLEtable_name(column1type[not]null,…)功能:在当前数据库中创建一张名为的table_name表格结构。2.删除表格式:DROPtable_name功能:在当前数据库中删除名为table_name的表。3.查询语句格式:SELECTcol1,col2,...,colnFROMtable_name[WHEREcondition_expression]功能:从数据库表中检索满足条件的记录。WHERE子句是可选项,它可以包含<、>、<=、>=、=、<>和LIKE运算符。LIKE运算符用于带有通配符百分号(%)和下划线(_)的模式匹配。4.插入语句格式:INSERTINTOtable_name[(col1,col2,...,coln)]VALUES(v1,v2,...,vn)功能:在表table_name中插入一条记录,各列的值依次分别为v1、v2、…、vn等,若某列的列名未给,则值为NULL。注意:(1)如果所有的列名都未给,则在Values中必须依次给出所有列的值。(2)给出的值的类型必须与对应的列的类型相一致。5.更新语句格式:UPDATEtable_nameSETcol1=v1[,col2=v2,...,coln=vn][WHEREcondition_expression]功能:更新表table_name中满足条件的记录,使列col1的值为v1、列col2的值为v2、…、列coln的值为vn等。注意:如不给出条件,则更新表中所有记录。例如,account表中,账号为“1280316401“的账户取款200元后应更新余额,使用语句如下:UPDATEaccountSETaccountAmount=accountAmount-200WHEREaccountNumber=’1280316401’6.删除语句格式:DELETEFROMtable_name[WHEREcondition_expression]功能:删除表table_name中满足条件的记录。特别注意:如果不给出条件,则删除表中所有记录。例如,对account表中,账号为“1280316401“的账户进行销户处理,语句如下:DELETEFORMaccountWHEREaccountNumber=’1280316401’JDBC基础知识JDBC与ODBCODBC数据源设置通过JDBC访问数据库JDBC的基本结构JDBC驱动程序类型(2)部分Java,部分本地驱动在这种驱动方式下,JDBC驱动将标准的JDBC调用转为对数据库API的本地调用。(3)JDBC网络纯Java驱动程序这种驱动程序接受JDBC请求,并把它们转换成一个与DBMS无关的网络协议。这些请求发送到服务器,由服务器把这些数据库请求转换成DBMS特有的协议。此类驱动程序很适合Internet应用。因为它不需要客户端安装数据库驱动程序,而且该类型的驱动程序是跨平台的。(4)本地协议纯Java驱动程序这种类型的驱动程序将JDBC请求直接转换为DBMS所使用的网络协议。这将允许从客户机上直接调用DBMS服务器。由于许多这样的协议都是专用的,因此数据库提供者是这类驱动程序的主要来源,如Oracle和SQLServer等DBMS都有自己的驱动程序,该类驱动原理如图12.3;实现第3、4类驱动程序将成为JDBC访问数据库的首选方法,但它们要求服务器端安装特有的JDBC驱动程序。而JDBC-ODBC桥接的方式可以通过ODBC驱动访问绝大部分数据库,但这种方式要牺牲数据库连接的性能。但在没有特定的数据库本地驱动时,可以使用桥接的方式连接。JDBCURL提供了一种标识数据库的方法,它的作用是使程序员编写的程序能找到相应的数据库驱动程序并进行连接。实际上,JDBC驱动程序的编程员将决定用什么JDBCURL来标识特定的驱动程序,而使用JDBC驱动程序的程序员不必关心如何来形成