JR 精品文章 - api之sql基础
AD: jr (at) javaresearch.org


首页 | 动态 | 文章 | FAQ  | 新闻 | 下载 | 代码 | 工作 | 调查 | 术语 | 站点 | 图书 | 论坛 | 帮助 | 全部  

TOP | 交流 | 软件 | 专栏 | 开源 | 译/著 | 源码 | API  | 推荐 | FTP  | 积分 | 统计 | 搜索 | Blog | 我们  
首页 » 研究文集 » 数据库相关 搜索标题相关文章 搜索标题相关文章    评论此文章 发表评论     开始监控此文章 开始监控   加入收藏夹  加入收藏夹
api之sql基础
wwty 原创   更新:2007-01-14 15:02:09  版本: 1.0   

下面是对sql api的一些零碎的基本总结,需要的可以参考一下。

public interface ResultSetMetaData可用于获取关于 ResultSet 对象中列的类型和属性信息的对象。以下代码片段创建 ResultSet 对象 rs,创建 ResultSetMetaData 对象 rsmd,并使用 rsmd 查找 rs 有多少列,以及 rs 中的第一列是否可以在 WHERE 子句中使用。 


     ResultSet rs = stmt.executeQuery("SELECT a, b, c FROM TABLE2");
     ResultSetMetaData rsmd = rs.getMetaData();
     int numberOfColumns = rsmd.getColumnCount();
     boolean b = rsmd.isSearchable(1);

DriverManager
 跟踪可用的驱动程序。JDBC的管理层,作用于用户和驱动程序之间

public class Statement extends Object
Statement 对象表示基本语句,其中将单个方法应用于某一目标和一组参数,以返回结果,比如 "a.setFoo(b)"。注意,此示例使用名称来指示目标及其参数,statement 对象不需要名称空间,可以使用值本身构造。statement 对象将指定方法与其环境相关联,作为值的简单集合:目标和参数值数组。 

public interface Connection
与特定数据库的连接(会话)。在连接上下文中执行 SQL 语句并返回结果。 
Connection 对象的数据库能够提供信息描述其表、所支持的 SQL 语法、存储过程和此连接的功能等。此信息是使用 getMetaData 方法获得的。 

注:默认情况下,Connection 对象处于自动提交模式下,这意味着它在执行每个语句后都会自动提交更改。如果禁用自动提交模式,为了提交更改,必须显式调用 commit 方法;否则无法保存数据库更改。 

使用 JDBC 2.1 核心 API 创建的 Connection 对象有一个与之关联的最初为空的类型映射表。用户可以为此类型映射表中的 UDT 输入一个自定义映射关系。在使用 ResultSet.getObject 方法从数据源中检索 UDT 时,getObject 方法将检查该连接的类型映射表,以查看是否有对应该 UDT 的项。如果有,那么 getObject 方法会将该 UDT 映射到所指示的类。如果没有项,则会使用标准映射关系映射该 UDT。 

用户可以创建一个新的类型映射表,该映射表是一个 java.util.Map 对象,可在其中创建一个项,并将该项传递给可以执行自定义映射关系的 java.sql 方法。在这种情况下,该方法将使用给定的类型映射表,而不是与连接相关联的映射表。 

例如,以下代码片段指定 SQL 类型 ATHLETES 将被映射到 Java 编程语言中的 Athletes 类。该代码片段为 Connection 对象 con 获取类型映射表,并在其中插入一些项,然后使用新的项将该类型映射表设置为连接的类型映射表。 

      java.util.Map map = con.getTypeMap();
      map.put("mySchemaName.ATHLETES", Class.forName("Athletes"));
      con.setTypeMap(map);
jdbc和odbc驱动程序:
odbc二进制码以及在很多情况下的数据库客户端代码必须在每个使用该驱动的客户端进行安装,如果在程序所使用的网络里安装客户端就不是个大问题。这就应该是jdbc的绝对优势。另外JDBC-ODBC 桥驱动程序java.sql.Drive 接口在sun.jdbc.odbc.JdbcOdbcDriver 中实现。并且在JAVA_HOME\BIN 目录下有JdbcOdbc.dll 文件支持。

数据库表中的主键:
一个表的主键由一个或多个字段组成,其值具有惟一性,而且不允许取空值(NULL),主键的作用是惟一地标识表中的每一条记录。

创建数据库考虑的问题:
数据库的拥有者
数据库的初始容量、最大容量、增长量
数据库文件存放的路径

一个数据库包含:
表      视图      存储过程     触发器

public interface CallableStatementextends PreparedStatement
用于执行 SQL 存储过程的接口。JDBC API 提供了一个存储过程 SQL 转义语法,该语法允许对所有 RDBMS 使用标准方式调用存储过程。此转义语法有一个包含结果参数的形式和一个不包含结果参数的形式。如果使用结果参数,则必须将其注册为 OUT 型参数。其他参数可用于输入、输出或同时用于二者。参数是根据编号按顺序引用的,第一个参数的编号是 1。 

   {?= call <procedure-name>[<arg1>,<arg2>, ...]}
   {call <procedure-name>[<arg1>,<arg2>, ...]}
 IN 参数值是使用从 PreparedStatement 中继承的 set 方法设置的。在执行存储过程之前,必须注册所有 OUT 参数的类型;它们的值是在执行后通过此类提供的 get 方法检索的。 

CallableStatement 可以返回一个 ResultSet 对象或多个 ResultSet 对象。多个 ResultSet 对象是使用从 Statement 中继承的操作处理的。 

为了获得最大的可移植性,某一调用的 ResultSet 对象和更新计数应该在获得输出参数的值之前处理。 

关于PreparedStatement对象的使用:
PreparedStatement继承了Statement,
PreparedStatement是预编译的,效率高,
PreparedStatement可以绑定参数,防SQL注入问题



版权声明   给作者写信
本篇文章对您是否有帮助?  投票:         投票结果:     11       2
作者其它文章: 作者全部文章
评论人:maoaizhu 发表时间: Mon Jan 15 21:08:04 CST 2007
很全面的,谢谢![:s]
评论人:andylve 发表时间: Thu Mar 29 15:17:46 CST 2007
好,a good word
评论人:excign 发表时间: Wed May 09 10:32:41 CST 2007
不错[:)]
评论人:yanglenovo 发表时间: Wed Aug 22 10:42:36 CST 2007
[8)]
评论人:Primary8 发表时间: Mon Dec 10 20:01:20 CST 2007
还可以!

这个文章共有 5 条评论
主题: JDBC直连SQL Server 2005 上一篇文章
返回文章列表 返回〔数据库相关〕
下一篇文章 主题: “数据库时代结束”,我却感到很担心……


文字广告链接
        自主、快速定制基于JAVA的B/S业务系统          重量级企业在线自定义WEB报表平台
        Excel制表、零代码发布、打印、图表结合——快逸报表,免费、稳定、功能强大的java工具
        技术圈: 关于Java、dotNet、PHP、Ruby、奇客、Web2.0等更多资讯博客精选文章

关于 JR  |  版权声明  |  联系我们 

©2002-2006 JR 版权所有 沪ICP备05019622号