数据库java代码占位符 java数据库语句
Java 使用占位符操作数据库,表是oracle分区表。windows里测试正常,linux报错。。
windows和Linux都能执行
创新互联建站是一家专注于网站设计、成都网站建设与策划设计,阿克塞哈萨克族自治网站建设哪家好?创新互联建站做网站,专注于网站建设十载,网设计领域的专业建站公司;建站业务涵盖:阿克塞哈萨克族自治等地区。阿克塞哈萨克族自治做网站价格咨询:13518219792
Oracle Call Interface(OCI)使用户可以访问 Oracle 10,Oracle9,Oracle8 和 Oracle7 数据库。支持将 PHP 变量与 Oracle 占位符(placeholder)绑定,具有完整的 LOB,FILE 和 ROWID 支持,以及允许使用用户提供的定义变量。
例子 1. 基本查询
?php
$conn = oci_connect('hr', 'hr', 'orcl');
if (!$conn) {
$e = oci_error();
print htmlentities($e['message']);
exit;
}
$query = 'SELECT * FROM DEPARTMENTS';
$stid = oci_parse($conn, $query);
if (!$stid) {
$e = oci_error($conn);
print htmlentities($e['message']);
exit;
}
$r = oci_execute($stid, OCI_DEFAULT);
if(!$r) {
$e = oci_error($stid);
echo htmlentities($e['message']);
exit;
}
print 'table border="1"';
while($row = oci_fetch_array($stid, OCI_RETURN_NULLS)) {
print 'tr';
foreach($row as $item) {
print 'td'.($item?htmlentities($item):' ').'/td';
}
print '/tr';
}
print '/table';
oci_close($conn);
?
例子 2. 用绑定变量插入
?php
// Before running, create the table:
// CREATE TABLE MYTABLE (mid NUMBER, myd VARCHAR2(20));
$conn = oci_connect('scott', 'tiger', 'orcl');
$query = 'INSERT INTO MYTABLE VALUES(:myid, :mydata)';
$stid = oci_parse($conn, $query);
$id = 60;
$data = 'Some data';
oci_bind_by_name($stid, ':myid', $id);
oci_bind_by_name($stid, ':mydata', $data);
$r = oci_execute($stid);
if($r)
print "One row inserted";
oci_close($conn);
?
例子 3. 将数据插入到 CLOB 列中
?php
// Before running, create the table:
// CREATE TABLE MYTABLE (mykey NUMBER, myclob CLOB);
$conn = oci_connect('scott', 'tiger', 'orcl');
$mykey = 12343; // arbitrary key for this example;
$sql = "INSERT INTO mytable (mykey, myclob)
VALUES (:mykey, EMPTY_CLOB())
RETURNING myclob INTO :myclob";
$stid = oci_parse($conn, $sql);
$clob = oci_new_descriptor($conn, OCI_D_LOB);
oci_bind_by_name($stid, ":mykey", $mykey, 5);
oci_bind_by_name($stid, ":myclob", $clob, -1, OCI_B_CLOB);
oci_execute($stid, OCI_DEFAULT);
$clob-save("A very long string");
oci_commit($conn);
// Fetching CLOB data
$query = 'SELECT myclob FROM mytable WHERE mykey = :mykey';
$stid = oci_parse ($conn, $query);
oci_bind_by_name($stid, ":mykey", $mykey, 5);
oci_execute($stid, OCI_DEFAULT);
print 'table border="1"';
while ($row = oci_fetch_array($stid, OCI_ASSOC)) {
$result = $row['MYCLOB']-load();
print 'trtd'.$result.'/td/tr';
}
print '/table';
?
java中两种占位符的使用方式
String stringFormat = "lexical error at position %s, encountered %s, expected %s ";
System.out.println(String.format(stringFormat, 123, 100, 456));
String messageFormat ="lexical error at position {0}, encountered {1}, expected {2}";
System.out.println(MessageFormat.format(messageFormat, new Date(), 100, 456));
先学现卖 哈哈
java中%d %s的含义
%d是一个占位符,标识一个字符串型的数据,%10d是数字的左侧留10个空格,对齐用 %s也是一个占位符,标识一个字符串型的数据
我连的Mysql数据库,JAVA中写了如下sql语句: between? and?,传占位符对应的参数时只能传int类型吗?
不仅仅是int型的,还可以传Date,String和其它基本类型(如:float,double,char)等,但是自定义对象除外。建议最好和数据库字段类型对应,如数据库定义的是varchar,那么就传入String类型。实践是检验真理的唯一标准,写段代码试一下就一幕了然了,还能加深记忆,多动手总是有好处的。
网页名称:数据库java代码占位符 java数据库语句
网页地址:http://cdiso.cn/article/dopjesg.html