be prepareddStatement 中的点位符有限制吗

日一二三四五六2425262728293012345678910111213141516171821222324252627282930311234
随笔分类(22)
随笔档案(76)
文章分类(12)
文章档案(17)
积分与排名
评论排行榜
Powered By: 模板提供:相关文章推荐:
jsp中防止sql注入
看到网上有文章说,preparedstatemtn的使用可以完全防止sql注入,请问是这么回事么?如果不能,那么我还需要做什么?是不是仍旧要自行编写过滤特殊字符等的代码?
万分感谢!
阅读(3442) 回复(3)
其他文章推荐
ITPUB官方微博:
sql注入,就是通过把sql命令插入到Web表单递交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的sql命令,比如先前的很多影视网站泄露VIP会员密码大多就是通过WEB表单递交查询字符暴出的,这类表单特别容易受到sql注入式攻击.
  什么时候最易受到sql注入攻击
  当应用程序使用输入内容来构造动态sql语句以访问数据库时,会发生sql注入攻击。如果代码使用存储过程,而这些存储过程作为包含未筛选的用户输入的字符...
阅读(84) 回复(2)
  归纳一下,主要有以下几点:
  1.永远不要信任用户的输入。对用户的输入进行校验,可以通过正则表达式,或限制长度;对单引号和
  双"-"进行转换等。
  2.永远不要使用动态拼装sql,可以使用参数化的sql或者直接使用存储过程进行数据查询存取。
  3.永远不要使用管理员权限的数据库连接,为每个应用使用单独的权限有限的数据库连接。
  4.不要把机密信息直接存放,加密或者hash掉密码和敏感的信息。
5.应用的异常信息...
阅读(281) 回复(1)
网站是用jsp+oracle,我现在在提交表单处用js过滤sql的关键字,这样是不是可以防止sql注入
阅读(1689) 回复(3)
防止sql注入的方法,可以用filter来实现,不知道哪位有这方面完整的代码,能不能发一下.谢谢了.
阅读(961) 回复(1)
update usual_xz_exam_score set usual_xz_exam_score.class_sort=c.class_sort,usual_xz_exam_score.grade_sort=c.grade_sort ,usual_xz_exam_score.cent_name=c.cent_name from temp_stu_score c
usual_xz_exam_score.class_id=c.class_id
在MSsql2000中查询分析器能全对,全部更新了,单jsp代码中,就只有cent_name(字符)能更新了,grade_sort (int型)只能更新一半,class_sort (int型)完全没更新,不知是什么问题...
阅读(1042) 回复(1)
作者:NB联盟-小竹
随着B/S模式应用开发的发展,使用这种模式编写应用程序的程序员也越来越多。但是由于这个行业的入门门槛不高,程序员的水平及经验也参差不齐,相当大一部分程序员在编写代码的时候,没有对用户输入数据的合法性进行判断,使应用程序存在安全隐患。用户可以提交一段数据库查询代码,根据程序返回的结果
阅读(240) 回复(0)
网站的运行安全肯定是每个站长必须考虑的问题,大家知道,大多数黑客攻击网站都是采用sql注入,这就是我们常说的为什么 ?
最原始的静态的网站反而是最安全的。今天我们讲讲PHP注入的安全规范,防止自己的网站被sql注入。
如今主流的网站开发语言还是php,那我们就从php网站如何防止sql注入开始说起:
Php注入的安全防范
阅读(120) 回复(0)
sql注入攻击指的是通过构建特殊的输入作为参数传入Web应用程序,而这些输入大都是sql语法里的一些组合,通过执行sql语句进而执行攻击者所要的操作,其主要原因是程序没有细致地过滤用户输入的数据,致使非法数据侵入系统。
归纳一下,主要有以下几点:
1.永远不要信任用户的输入。对用户的输入进行校验,可以通过正则表达
阅读(330) 回复(0)
Java/jsp中使用JDBC连接sql Server 2005~ -
SQL Server
阅读(121) 回复(0)
之前在做学生信息管理系统和机房收费系统的时候,对于sql注入的问题已经是司空见惯,但是并没有真正的地形象生动的理解sql注入到底是什么玩意儿.直到这次做牛腩才在牛老师的举例之下,明白了原来sql注入是真的很危险啊.
我们先来构造一个简单的添加新闻类别的程序,在动态网页上添加一个TextBox控件,一个Button控件,一个Gr
阅读(90) 回复(0)
盛拓传媒:
北京皓辰网域网络信息技术有限公司. 版权所有
北京市公安局海淀分局网监中心备案编号:
广播电视节目制作经营许可证:编号(京)字第1149号
ITPUB推荐文章解答你所有技术难题PreparedStatement里如何使引号里的?成为占位符
[问题点数:100分,结帖人aniwn]
PreparedStatement里如何使引号里的?成为占位符
[问题点数:100分,结帖人aniwn]
不显示删除回复
显示所有回复
显示星级回复
显示得分回复
只显示楼主
相关帖子推荐:
2005年11月 Java大版内专家分月排行榜第二
2007年6月 Java大版内专家分月排行榜第三2005年12月 Java大版内专家分月排行榜第三
2007年4月 Java大版内专家分月排行榜第二
本帖子已过去太久远了,不再提供回复功能。PreparedStatement (Java 2 Platform SE 5.0)
JavaTM&2&PlatformStandard&Ed. 5.0
接口 PreparedStatement
所有超级接口:
所有已知子接口:
public interface PreparedStatementextends
表示预编译的 SQL 语句的对象。
SQL 语句被预编译并且存储在 PreparedStatement 对象中。然后可以使用此对象高效地多次执行该语句。
注:用来设置 IN 参数值的 setter 方法(setShort、setString 等等)必须指定与输入参数的已定义 SQL 类型兼容的类型。例如,如果 IN 参数具有 SQL 类型 INTEGER,那么应该使用 setInt 方法。
如果需要任意参数类型转换,使用 setObject 方法时应该将目标 SQL 类型作为其参数的类型。
在以下设置参数的示例中,con 表示一个活动连接:
PreparedStatement pstmt = con.prepareStatement(&UPDATE EMPLOYEES
SET SALARY = ? WHERE ID = ?&);
pstmt.setBigDecimal(1, )
pstmt.setInt(2, 110592)
另请参见:,
, , , , , ,
&&&&&&&&&&将一组参数添加到此 PreparedStatement 对象的批处理命令中。
&&&&&&&&&&立即清除当前参数值。
&&&&&&&&&&在此 PreparedStatement 对象中执行 SQL 语句,该语句可以是任何种类的 SQL 语句。
&&&&&&&&&&在此 PreparedStatement 对象中执行 SQL 查询,并返回该查询生成的 ResultSet 对象。
&&&&&&&&&&在此 PreparedStatement 对象中执行 SQL 语句,该语句必须是一个 SQL INSERT、UPDATE 或 DELETE 语句;或者是一个什么都不返回的 SQL 语句,比如 DDL 语句。
&&&&&&&&&&检索包含有关 ResultSet 对象的列消息的 ResultSetMetaData 对象,ResultSet 对象将在执行此 PreparedStatement 对象时返回。
&&&&&&&&&&检索此 PreparedStatement 对象的参数的编号、类型和属性。
&&&&&&&&&&将指定参数设置为给定 Array 对象。
(int&parameterIndex,
int&length)
&&&&&&&&&&将指定参数设置为给定输入流,该输入流将拥有给定字节数。
(int&parameterIndex,
&&&&&&&&&&将指定参数设置为给定 java.math.BigDecimal 值。
(int&parameterIndex,
int&length)
&&&&&&&&&&将指定参数设置为给定输入流,该输入流将拥有给定字节数。
&&&&&&&&&&将指定参数设置为给定 Blob 对象。
(int&parameterIndex,
boolean&x)
&&&&&&&&&&将指定参数设置为给定 Java boolean 值。
(int&parameterIndex,
&&&&&&&&&&将指定参数设置为给定 Java byte 值。
(int&parameterIndex,
&&&&&&&&&&将指定参数设置为给定 Java 字节数组。
(int&parameterIndex,
int&length)
&&&&&&&&&&将给定参数设置为给定 Reader 对象,后者是给定的字符数长度。
&&&&&&&&&&将指定参数设置为给定 Clob 对象。
(int&parameterIndex,
&&&&&&&&&&将指定参数设置为给定 java.sql.Date 值。
(int&parameterIndex,
&&&&&&&&&&使用给定的 Calendar 对象将指定参数设置为给定 java.sql.Date 值。
(int&parameterIndex,
&&&&&&&&&&将指定参数设置为给定 Java double 值。
(int&parameterIndex,
&&&&&&&&&&将指定参数设置为给定 Java float 值。
(int&parameterIndex,
&&&&&&&&&&将指定参数设置为给定 Java int 值。
(int&parameterIndex,
&&&&&&&&&&将指定参数设置为给定 Java long 值。
(int&parameterIndex,
int&sqlType)
&&&&&&&&&&将指定参数设置为 SQL NULL。
(int&paramIndex,
int&sqlType,
&typeName)
&&&&&&&&&&将指定参数设置为 SQL NULL。
(int&parameterIndex,
&&&&&&&&&&使用给定对象设置指定参数的值。
(int&parameterIndex,
int&targetSqlType)
&&&&&&&&&&使用给定对象设置指定参数的值。
(int&parameterIndex,
int&targetSqlType,
int&scale)
&&&&&&&&&&使用给定对象设置指定参数的值。
&&&&&&&&&&将指定参数设置为给定 REF(&structured-type&) 值。
(int&parameterIndex,
&&&&&&&&&&将指定参数设置为给定 Java short 值。
(int&parameterIndex,
&&&&&&&&&&将指定参数设置为给定 Java String 值。
(int&parameterIndex,
&&&&&&&&&&将指定参数设置为给定 java.sql.Time 值。
(int&parameterIndex,
&&&&&&&&&&使用给定的 Calendar 对象将指定参数设置为给定 java.sql.Time 值。
(int&parameterIndex,
&&&&&&&&&&将指定参数设置为给定 java.sql.Timestamp 值。
(int&parameterIndex,
&&&&&&&&&&使用给定的 Calendar 对象将指定参数设置为给定 java.sql.Timestamp 值。
(int&parameterIndex,
int&length)
&&&&&&&&&&已过时。&&
(int&parameterIndex,
&&&&&&&&&&将指定参数设置为给定 java.net.URL 值。
, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,
executeQuery
executeQuery()
在此 PreparedStatement 对象中执行 SQL 查询,并返回该查询生成的 ResultSet 对象。
返回:包含该查询生成的数据的 ResultSet 对象;从不返回 null
- 如果发生数据库访问错误或者 SQL 语句没有返回一个 ResultSet 对象
executeUpdate
int executeUpdate()
在此 PreparedStatement 对象中执行 SQL 语句,该语句必须是一个 SQL INSERT、UPDATE 或 DELETE 语句;或者是一个什么都不返回的 SQL 语句,比如 DDL 语句。
返回:(1) 对于 INSERT、UPDATE 或 DELETE 语句,返回行数 (2) 或者对于什么都不返回的 SQL 语句,返回 0
- 如果发生数据库访问错误或者 SQL 语句返回一个 ResultSet 对象
void setNull(int&parameterIndex,
int&sqlType)
将指定参数设置为 SQL NULL。
注:必须指定参数的 SQL 类型。
参数:parameterIndex - 第一个参数是 1,第二个参数是 2,依此类推。sqlType - java.sql.Types 中定义的 SQL 类型码
- 如果发生数据库访问错误
setBoolean
void setBoolean(int&parameterIndex,
boolean&x)
将指定参数设置为给定 Java boolean 值。在将该对象发送到数据库时,驱动程序将它转换成一个 SQL BIT 值。
参数:parameterIndex - 第一个参数是 1,第二个参数是 2,依此类推。x - 参数值
- 如果发生数据库访问错误
void setByte(int&parameterIndex,
将指定参数设置为给定 Java byte 值。在将该对象发送到数据库时,驱动程序将它转换成一个 SQL TINYINT 值。
参数:parameterIndex - 第一个参数是 1,第二个参数是 2,依此类推。x - 参数值
- 如果发生数据库访问错误
void setShort(int&parameterIndex,
将指定参数设置为给定 Java short 值。在将该对象发送到数据库时,驱动程序将它转换成一个 SQL SMALLINT 值。
参数:parameterIndex - 第一个参数是 1,第二个参数是 2,依此类推。x - 参数值
- 如果发生数据库访问错误
void setInt(int&parameterIndex,
将指定参数设置为给定 Java int 值。在将该对象发送到数据库时,驱动程序将它转换成一个 SQL INTEGER 值。
参数:parameterIndex - 第一个参数是 1,第二个参数是 2,依此类推。x - 参数值
- 如果发生数据库访问错误
void setLong(int&parameterIndex,
将指定参数设置为给定 Java long 值。在将该对象发送到数据库时,驱动程序将它转换成一个 SQL BIGINT 值。
参数:parameterIndex - 第一个参数是 1,第二个参数是 2,依此类推。x - 参数值
- 如果发生数据库访问错误
void setFloat(int&parameterIndex,
将指定参数设置为给定 Java float 值。在将该对象发送到数据库时,驱动程序将它转换成一个 SQL FLOAT 值。
参数:parameterIndex - 第一个参数是 1,第二个参数是 2,依此类推。x - 参数值
- 如果发生数据库访问错误
void setDouble(int&parameterIndex,
将指定参数设置为给定 Java double 值。在将该对象发送到数据库时,驱动程序将它转换成一个 SQL DOUBLE 值。
参数:parameterIndex - 第一个参数是 1,第二个参数是 2,依此类推。x - 参数值
- 如果发生数据库访问错误
setBigDecimal
void setBigDecimal(int&parameterIndex,
将指定参数设置为给定 java.math.BigDecimal 值。在将该对象发送到数据库时,驱动程序将它转换成一个 SQL NUMERIC 值。
参数:parameterIndex - 第一个参数是 1,第二个参数是 2,依此类推。x - 参数值
- 如果发生数据库访问错误
void setString(int&parameterIndex,
将指定参数设置为给定 Java String 值。在将此值发送给数据库时,驱动程序将它转换成一个 SQL VARCHAR 或 LONGVARCHAR 值(取决于该参数相对于驱动程序在 VARCHAR 值上的限制的相对大小)。
参数:parameterIndex - 第一个参数是 1,第二个参数是 2,依此类推。x - 参数值
- 如果发生数据库访问错误
void setBytes(int&parameterIndex,
将指定参数设置为给定 Java 字节数组。在将此值发送给数据库时,驱动程序将它转换成一个 SQL VARBINARY 或 LONGVARBINARY 值(取决于该参数相对于驱动程序在 VARBINARY 值上的限制的相对大小)。
参数:parameterIndex - 第一个参数是 1,第二个参数是 2,依此类推。x - 参数值
- 如果发生数据库访问错误
void setDate(int&parameterIndex,
将指定参数设置为给定 java.sql.Date 值。在将该对象发送到数据库时,驱动程序将它转换成一个 SQL DATE 值。
参数:parameterIndex - 第一个参数是 1,第二个参数是 2,依此类推。x - 参数值
- 如果发生数据库访问错误
void setTime(int&parameterIndex,
将指定参数设置为给定 java.sql.Time 值。在将该对象发送到数据库时,驱动程序将它转换成一个 SQL TIME 值。
参数:parameterIndex - 第一个参数是 1,第二个参数是 2,依此类推。x - 参数值
- 如果发生数据库访问错误
setTimestamp
void setTimestamp(int&parameterIndex,
将指定参数设置为给定 java.sql.Timestamp 值。在将该对象发送到数据库时,驱动程序将它转换成一个 SQL TIMESTAMP 值。
参数:parameterIndex - 第一个参数是 1,第二个参数是 2,依此类推。x - 参数值
- 如果发生数据库访问错误
setAsciiStream
void setAsciiStream(int&parameterIndex,
int&length)
将指定参数设置为给定输入流,该输入流将拥有给定字节数。在将一个非常大的 ASCII 值输入到 LONGVARCHAR 参数时,通过 java.io.InputStream 将它发送给参数可能更实际一些。将根据需要从流中读取数据,一直读取到文件末尾。JDBC 驱动程序将执行从 ASCII 到数据库 char 格式的任何必要转换。
注:此流对象既可以是一个标准 Java 流对象,也可以是实现标准接口的用户自己的子类。
参数:parameterIndex - 第一个参数是 1,第二个参数是 2,依此类推。x - 包含 ASCII 参数值的 Java 输入流length - 流中的字节数
- 如果发生数据库访问错误
setUnicodeStream
void setUnicodeStream(int&parameterIndex,
int&length)
将指定参数设置为给定输入流,该输入流将拥有给定字节数。一个 Unicode 字符有两个字节,第一个字节是高字节,第二个字节是低字节。在将一个非常大的 Unicode 值输入到 LONGVARCHAR 参数时,通过 java.io.InputStream 对象将它发送给该参数可能更实际一些。将根据需要从流中读取数据,一直读取到文件末尾。JDBC 驱动程序将执行从 Unicode 到数据库 char 格式的任何必要转换。
注:此流对象既可以是一个标准 Java 流对象,也可以是实现标准接口的用户自己的子类。
参数:parameterIndex - 第一个参数是 1,第二个参数是 2,依此类推。x - 包含两字节 Unicode 字符形式 Unicode 参数值的 java.io.InputStream 对象length - 流中的字节数
- 如果发生数据库访问错误
setBinaryStream
void setBinaryStream(int&parameterIndex,
int&length)
将指定参数设置为给定输入流,该输入流将拥有给定字节数。在将一个非常大的二进制值输入到 LONGVARBINARY 参数时,通过 java.io.InputStream 对象将它发送给该参数可能更实际一些。将根据需要从流中读取数据,一直读取到文件末尾。
注:此流对象既可以是一个标准 Java 流对象,也可以是实现标准接口的用户自己的子类。
参数:parameterIndex - 第一个参数是 1,第二个参数是 2,依此类推。x - 包含二进制参数值的 Java 输入流length - 流中的字节数
- 如果发生数据库访问错误
clearParameters
void clearParameters()
立即清除当前参数值。
通常参数值对语句的重复使用仍然有效。设置一个参数值会自动清除其以前的值。不过,在某些情况下,直接释放当前参数值使用的资源也是很有用的;这可以通过调用 clearParameters 方法来实现。
- 如果发生数据库访问错误
void setObject(int&parameterIndex,
int&targetSqlType,
int&scale)
使用给定对象设置指定参数的值。第二个参数必须是一个对象类型;对于整数值,应该使用 java.lang 的等效对象。
在发送到数据库之前,给定 Java 对象将被转换为给定 targetSqlType。如果对象具有自定义映射关系(属于实现 SQLData 接口的类),则 JDBC 驱动程序应该调用 SQLData.writeSQL 方法将它写入 SQL 数据流中。另一方面,如果该对象是实现 Ref、Blob、Clob、Struct 或 Array 的类,则驱动程序应该将它作为相应 SQL 类型的值传递给数据库。
注意,此方法可用于传递特定于数据库的抽象数据类型。
参数:parameterIndex - 第一个参数是 1,第二个参数是 2,依此类推。x - 包含输入参数值的对象targetSqlType - 将发送给数据库的 SQL 类型(定义于 java.sql.Types 中)。scale 参数可以进一步限定此类型。scale - 对于 java.sql.Types.DECIMAL 或 java.sql.Types.NUMERIC 类型,该参数是小数点后的位数。对于所有其他类型,将忽略此值。
- 如果发生数据库访问错误另请参见:
void setObject(int&parameterIndex,
int&targetSqlType)
使用给定对象设置指定参数的值。除了假定 scale 为零,此方法类似于上面的 setObject 方法。
参数:parameterIndex - 第一个参数是 1,第二个参数是 2,依此类推。x - 包含输入参数值的对象targetSqlType - 将发送给数据库的 SQL 类型(定义于 java.sql.Types 中)
- 如果发生数据库访问错误
void setObject(int&parameterIndex,
使用给定对象设置指定参数的值。第二个参数必须是类型 Object;所以,应该对内置类型使用 java.lang 的等效对象。
JDBC 规范指定了一个从 Java Object 类型到 SQL 类型的标准映射关系。在发送到数据库之前,给定参数将被转换为相应 SQL 类型。
注意,通过使用特定于驱动程序的 Java 类型,此方法可用于传递特定于数据库的抽象数据类型。如果对象是实现 SQLData 接口的类,则 JDBC 驱动程序应该调用 SQLData.writeSQL 方法将它写入 SQL 数据流中。另一方面,如果该对象是实现 Ref、Blob、Clob、Struct 或 Array 的类,则驱动程序应该将它作为相应 SQL 类型的值传递给数据库。
如果出现混淆,例如如果该对象是实现超过一个上述指定接口的类,则此方法抛出异常。
参数:parameterIndex - 第一个参数是 1,第二个参数是 2,依此类推。x - 包含输入参数值的对象
- 如果发生数据库访问错误或者给定对象的类型不明确
boolean execute()
在此 PreparedStatement 对象中执行 SQL 语句,该语句可以是任何种类的 SQL 语句。一些特别处理过的语句返回多个结果,execute 方法处理这些复杂的语句,executeQuery 和 executeUpdate 处理形式更简单的语句。
execute 方法返回一个 boolean 值,以指示第一个结果的形式。必须调用 getResultSet 或 getUpdateCount 方法来检索结果,并且必须调用 getMoreResults 移动到任何后面的结果。
返回:如果第一个结果是 ResultSet 对象,则返回 true;如果第一个结果是更新计数或者没有结果,则返回 false
- 如果发生数据库访问错误或者为此方法提供一个参数另请参见:,
void addBatch()
将一组参数添加到此 PreparedStatement 对象的批处理命令中。
- 如果发生数据库访问错误从以下版本开始:
另请参见:
setCharacterStream
void setCharacterStream(int&parameterIndex,
int&length)
将给定参数设置为给定 Reader 对象,后者是给定的字符数长度。在将一个非常大的 UNICODE 值输入到 LONGVARCHAR 参数时,通过 java.io.Reader 对象发送它可能更实际一些。将根据需要从流中读取数据,一直读取到文件末尾。JDBC 驱动程序将执行从 UNICODE 到数据库 char 格式的任何必要转换。
注:此流对象既可以是一个标准 Java 流对象,也可以是实现标准接口的用户自己的子类。
参数:parameterIndex - 第一个参数是 1,第二个参数是 2,依此类推。reader - 包含 Unicode 数据的 java.io.Reader 对象length - 流中的字符数
- 如果发生数据库访问错误从以下版本开始:
void setRef(int&i,
将指定参数设置为给定 REF(&structured-type&) 值。在将该对象发送到数据库时,驱动程序将它转换成一个 SQL REF 值。
参数:i - 第一个参数是 1,第二个参数是 2,依此类推。x - 一个 SQL REF 值
- 如果发生数据库访问错误从以下版本开始:
void setBlob(int&i,
将指定参数设置为给定 Blob 对象。在将该对象发送到数据库时,驱动程序将它转换成一个 SQL BLOB 值。
参数:i - 第一个参数是 1,第二个参数是 2,依此类推。x - 一个映射 SQL BLOB 值的 Blob 对象
- 如果发生数据库访问错误从以下版本开始:
void setClob(int&i,
将指定参数设置为给定 Clob 对象。在将该对象发送到数据库时,驱动程序将它转换成一个 SQL CLOB 值。
参数:i - 第一个参数是 1,第二个参数是 2,依此类推。x - 一个映射 SQL Clob 值的 Clob 对象
- 如果发生数据库访问错误从以下版本开始:
void setArray(int&i,
将指定参数设置为给定 Array 对象。在将该对象发送到数据库时,驱动程序将它转换成一个 SQL ARRAY 值。
参数:i - 第一个参数是 1,第二个参数是 2,依此类推。x - 一个映射 SQL Array 值的 Array 对象
- 如果发生数据库访问错误从以下版本开始:
getMetaData
getMetaData()
检索包含有关 ResultSet 对象的列消息的 ResultSetMetaData 对象,ResultSet 对象将在执行此 PreparedStatement 对象时返回。
因为 PreparedStatement 对象被预编译,所以可以知道不必执行就会返回的 ResultSet 对象。因此,可以在 PreparedStatement 对象上调用 getMetaData 方法,而不必等待执行该对象,然后在返回的 ResultSet 对象上调用 ResultSet.getMetaData 方法。
注:对于某些驱动程序而言,因为缺乏基础 DBMS 支持,所以使用此方法开销可能很大。
返回:ResultSet 对象的列的描述,如果驱动程序无法返回一个 ResultSetMetaData 对象,则返回 null
- 如果发生数据库访问错误从以下版本开始:
void setDate(int&parameterIndex,
使用给定的 Calendar 对象将指定参数设置为给定 java.sql.Date 值。驱动程序使用 Calendar 对象构造一个 SQL DATE 值,驱动程序随后将该值发送给数据库。利用 Calendar 对象,驱动程序可以在考虑自定义时区的情况下计算日期。如果没有指定任何 Calendar 对象,则驱动程序使用默认时区,该时区是正在运行应用程序的虚拟机所在的时区。
参数:parameterIndex - 第一个参数是 1,第二个参数是 2,依此类推。x - 参数值cal - 驱动程序将用来构造日期的 Calendar 对象
- 如果发生数据库访问错误从以下版本开始:
void setTime(int&parameterIndex,
使用给定的 Calendar 对象将指定参数设置为给定 java.sql.Time 值。驱动程序使用 Calendar 对象构造一个 SQL TIME 值,驱动程序随后将该值发送给数据库。利用 Calendar 对象,驱动程序可以在考虑自定义时区的情况下计算时间。如果没有指定任何 Calendar 对象,则驱动程序使用默认时区,该时区是正在运行应用程序的虚拟机所在的时区。
参数:parameterIndex - 第一个参数是 1,第二个参数是 2,依此类推。x - 参数值cal - 驱动程序将用来构造时间的 Calendar 对象
- 如果发生数据库访问错误从以下版本开始:
setTimestamp
void setTimestamp(int&parameterIndex,
使用给定的 Calendar 对象将指定参数设置为给定 java.sql.Timestamp 值。驱动程序使用 Calendar 对象构造一个 SQL TIMESTAMP 值,驱动程序随后将该值发送给数据库。利用 Calendar 对象,驱动程序可以在考虑自定义时区的情况下计算时间戳。如果没有指定任何 Calendar 对象,则驱动程序使用默认时区,该时区是正在运行应用程序的虚拟机所在的时区。
参数:parameterIndex - 第一个参数是 1,第二个参数是 2,依此类推。x - 参数值cal - 驱动程序将用来构造时间戳的 Calendar 对象
- 如果发生数据库访问错误从以下版本开始:
void setNull(int&paramIndex,
int&sqlType,
&typeName)
将指定参数设置为 SQL NULL。这种版本的 setNull 方法应该用于用户定义的类型或 REF 类型参数。用户定义类型的示例包括:STRUCT、DISTINCT、JAVA_OBJECT 和命名数组类型。
注:为了便于移植,在指定 NULL 用户定义参数或 REF 参数时,应用程序必须提供 SQL 类型代码和完全限定的 SQL 类型名称。在用户定义类型的情况下,名称是参数本身的类型名称。对于 REF 参数,名称是所引用类型的类型名称。如果 JDBC 驱动程序不需要类型代码和类型名称信息,那么它可以忽略这些信息。尽管打算使此方法供用户定义的参数和 Ref 参数使用,但可以使用此方法来设置任意 JDBC 类型的 null 参数。如果该参数没有用户定义的类型或 REF 类型,则忽略给定的 typeName。
参数:paramIndex - 第一个参数是 1,第二个参数是 2,依此类推。sqlType - 来自 java.sql.Types 的一个值typeName - SQL 用户定义类型的完全限定名称;如果该参数不是用户定义类型或 REF,则忽略它
- 如果发生数据库访问错误从以下版本开始:
void setURL(int&parameterIndex,
将指定参数设置为给定 java.net.URL 值。在将该对象发送到数据库时,驱动程序将它转换成一个 SQL DATALINK 值。
参数:parameterIndex - 第一个参数是 1,第二个参数是 2,依此类推。x - 要设置的 java.net.URL 对象
- 如果发生数据库访问错误从以下版本开始:
getParameterMetaData
getParameterMetaData()
检索此 PreparedStatement 对象的参数的编号、类型和属性。
返回:一个 ParameterMetaData 对象,它包含有关此 PreparedStatement 对象的参数的编号、类型和属性的信息
- 如果发生数据库访问错误从以下版本开始:
另请参见:
JavaTM&2&PlatformStandard&Ed. 5.0
有关更多的 API 参考资料和开发人员文档,请参阅 。该文档包含更详细的、面向开发人员的描述,以及总体概述、术语定义、使用技巧和工作代码示例。 版权所有 2004 Sun Microsystems, Inc. 保留所有权利。 请遵守。另请参阅。

我要回帖

更多关于 prepared by 的文章

 

随机推荐