xlang v5.1 Release
程序设计语言基础库文档
载入中...
搜索中...
未找到
PreparedStatement类 参考
类 PreparedStatement 继承关系图:
Inheritance graph
PreparedStatement 的协作图:
Collaboration graph

Public 成员函数

包属性

额外继承的成员函数

详细描述

在文件 xsql.xcs314 行定义.

构造及析构函数说明

◆ PreparedStatement() [1/2]

PreparedStatement ( )

在文件 xsql.xcs320 行定义.

320{}

◆ PreparedStatement() [2/2]

PreparedStatement ( String  sql)

在文件 xsql.xcs321 行定义.

321 {
322 textSql = " " + sql + " ";
323 strsplit = textSql.split('?');
324 if (strsplit.length == 0){
325 throw new IllegalArgumentException("invalid sql");
326 }
327 strparams = new String[strsplit.length - 1];
328 }
String [] strsplit
Definition xsql.xcs:317
String [] strparams
Definition xsql.xcs:318
Definition String.x:5
int length()
String [] split(String)

引用了 String.length() , 以及 String.split().

函数调用图:

成员函数说明

◆ execute()

int execute ( )

Mysql.MysqlPreparedStatement, SQLCipher.SQLCipherPreparedStatement , 以及 Sqlite.SqlitePreparedStatement 重载.

在文件 xsql.xcs338 行定义.

338 {
339 return execute(getSql());
340 }

◆ executeQuery()

ResultSet executeQuery ( )

Mysql.MysqlPreparedStatement, SQLCipher.SQLCipherPreparedStatement , 以及 Sqlite.SqlitePreparedStatement 重载.

在文件 xsql.xcs351 行定义.

351 {
352 return executeQuery(getSql());
353 }
ResultSet executeQuery()
Definition xsql.xcs:351

◆ executeUpdate()

int executeUpdate ( )

◆ finalize()

void finalize ( )

在文件 xsql.xcs533 行定义.

533 {
534 close();
535 }

◆ get_changes()

int get_changes ( )
override

重载 Statement .

Mysql.MysqlPreparedStatement, SQLCipher.SQLCipherPreparedStatement , 以及 Sqlite.SqlitePreparedStatement 重载.

在文件 xsql.xcs528 行定义.

528 {
529 throw new SqlException(-1, "get_changes");
530 return 0;
531 }

◆ getSql()

String getSql ( )

在文件 xsql.xcs342 行定义.

342 {
343 String sqlout = strsplit[0];
344 int i = 1, c = strsplit.length;
345 for (; i < c; i++){
346 sqlout = sqlout + (strparams[i - 1] + strsplit[i]);
347 }
348 return sqlout;
349 }

引用了 String.length().

函数调用图:

◆ safety()

String safety ( String  str)

在文件 xsql.xcs330 行定义.

330 {
331 str = str.replace("\\", "\\\\");
332 str = str.replace("\"", "\\\"");
333 str = str.replace("\'", "\\\'");
334 str = str.replace("\`", "\\\`");
335 return "'" + str + "'";
336 }
String replace(int, int, String)

引用了 String.replace().

函数调用图:

◆ setByte() [1/2]

void setByte ( byte  value)

在文件 xsql.xcs420 行定义.

420 {
421 setValue(value);
422 }
void setValue(String value)
Definition xsql.xcs:359

◆ setByte() [2/2]

void setByte ( int  id,
byte  value 
)

在文件 xsql.xcs494 行定义.

494 {
495 setValue(id, value);
496 }

◆ setDouble() [1/2]

void setDouble ( double  value)

在文件 xsql.xcs424 行定义.

424 {
425 setValue(value);
426 }

◆ setDouble() [2/2]

void setDouble ( int  id,
double  value 
)

在文件 xsql.xcs502 行定义.

502 {
503 setValue(id, value);
504 }

◆ setFloat() [1/2]

void setFloat ( float  value)

在文件 xsql.xcs428 行定义.

428 {
429 setValue((double)value);
430 }

◆ setFloat() [2/2]

void setFloat ( int  id,
float  value 
)

在文件 xsql.xcs498 行定义.

498 {
499 setValue(id, value);
500 }

◆ setInt() [1/2]

void setInt ( int  id,
int  value 
)

在文件 xsql.xcs486 行定义.

486 {
487 setValue(id, value);
488 }

◆ setInt() [2/2]

void setInt ( int  value)

在文件 xsql.xcs412 行定义.

412 {
413 setValue(value);
414 }

◆ setLong() [1/2]

void setLong ( int  id,
long  value 
)

在文件 xsql.xcs490 行定义.

490 {
491 setValue(id, value);
492 }

◆ setLong() [2/2]

void setLong ( long  value)

在文件 xsql.xcs416 行定义.

416 {
417 setValue(value);
418 }

◆ setString() [1/2]

void setString ( int  id,
String  value 
)

在文件 xsql.xcs482 行定义.

482 {
483 setValue(id, value);
484 }

◆ setString() [2/2]

void setString ( String  value)

在文件 xsql.xcs408 行定义.

408 {
409 setValue(value);
410 }

◆ setValue() [1/12]

void setValue ( byte  value)

Mysql.MysqlPreparedStatement, SQLCipher.SQLCipherPreparedStatement , 以及 Sqlite.SqlitePreparedStatement 重载.

在文件 xsql.xcs383 行定义.

383 {
384 if (paramid < strparams.length){
385 strparams[paramid++] = String.format("%02u",value & 0xff);
386 }else{
387 throw new SqlException(-1, "sql " +textSql + " dont need value:" + value);
388 }
389 }
static final String format(String, Object[])

引用了 String.format() , 以及 String.length().

函数调用图:

◆ setValue() [2/12]

void setValue ( double  value)

Mysql.MysqlPreparedStatement, SQLCipher.SQLCipherPreparedStatement , 以及 Sqlite.SqlitePreparedStatement 重载.

在文件 xsql.xcs399 行定义.

399 {
400 if (paramid < strparams.length){
401 strparams[paramid++] = "" + value;
402 }else{
403 throw new SqlException(-1, "sql " +textSql + " dont need value:" + value);
404 }
405 }

引用了 String.length().

函数调用图:

◆ setValue() [3/12]

void setValue ( float  value)

在文件 xsql.xcs391 行定义.

391 {
392 if (paramid < strparams.length){
393 strparams[paramid++] = "" + value;
394 }else{
395 throw new SqlException(-1, "sql " +textSql + " dont need value:" + value);
396 }
397 }

引用了 String.length().

函数调用图:

◆ setValue() [4/12]

void setValue ( int  id,
byte  value 
)

Mysql.MysqlPreparedStatement, SQLCipher.SQLCipherPreparedStatement , 以及 Sqlite.SqlitePreparedStatement 重载.

在文件 xsql.xcs457 行定义.

457 {
458 if ((id > 0) && (id - 1 < strparams.length)){
459 strparams[id - 1] = String.format("%02u",value & 0xff);
460 }else{
461 throw new SqlException(-1, "sql " +textSql + " dont need value:" + value);
462 }
463 }

引用了 String.format() , 以及 String.length().

函数调用图:

◆ setValue() [5/12]

void setValue ( int  id,
double  value 
)

Mysql.MysqlPreparedStatement, SQLCipher.SQLCipherPreparedStatement , 以及 Sqlite.SqlitePreparedStatement 重载.

在文件 xsql.xcs473 行定义.

473 {
474 if ((id > 0) && (id - 1 < strparams.length)){
475 strparams[id - 1] = "" + value;
476 }else{
477 throw new SqlException(-1, "sql " +textSql + " dont need value:" + value);
478 }
479 }

引用了 String.length().

函数调用图:

◆ setValue() [6/12]

void setValue ( int  id,
float  value 
)

在文件 xsql.xcs465 行定义.

465 {
466 if ((id > 0) && (id - 1 < strparams.length)){
467 strparams[id - 1] = "" + value;
468 }else{
469 throw new SqlException(-1, "sql " +textSql + " dont need value:" + value);
470 }
471 }

引用了 String.length().

函数调用图:

◆ setValue() [7/12]

void setValue ( int  id,
int  value 
)

Mysql.MysqlPreparedStatement, SQLCipher.SQLCipherPreparedStatement , 以及 Sqlite.SqlitePreparedStatement 重载.

在文件 xsql.xcs441 行定义.

441 {
442 if ((id > 0) && (id - 1 < strparams.length)){
443 strparams[id - 1] = String.format("%d",value);
444 }else{
445 throw new SqlException(-1, "sql " +textSql + " dont need value:" + value);
446 }
447 }

引用了 String.format() , 以及 String.length().

函数调用图:

◆ setValue() [8/12]

void setValue ( int  id,
long  value 
)

Mysql.MysqlPreparedStatement, SQLCipher.SQLCipherPreparedStatement , 以及 Sqlite.SqlitePreparedStatement 重载.

在文件 xsql.xcs449 行定义.

449 {
450 if ((id > 0) && (id - 1 < strparams.length)){
451 strparams[id - 1] = String.format("%d",value);
452 }else{
453 throw new SqlException(-1, "sql " +textSql + " dont need value:" + value);
454 }
455 }

引用了 String.format() , 以及 String.length().

函数调用图:

◆ setValue() [9/12]

void setValue ( int  id,
String  value 
)

Mysql.MysqlPreparedStatement, SQLCipher.SQLCipherPreparedStatement , 以及 Sqlite.SqlitePreparedStatement 重载.

在文件 xsql.xcs433 行定义.

433 {
434 if ((id > 0) && (id - 1 < strparams.length)){
435 strparams[id - 1] = safety(value);
436 }else{
437 throw new SqlException(-1, "sql " +textSql + " dont need value:" + value);
438 }
439 }
String safety(String str)
Definition xsql.xcs:330

引用了 String.length().

函数调用图:

◆ setValue() [10/12]

void setValue ( int  value)

Mysql.MysqlPreparedStatement, SQLCipher.SQLCipherPreparedStatement , 以及 Sqlite.SqlitePreparedStatement 重载.

在文件 xsql.xcs367 行定义.

367 {
368 if (paramid < strparams.length){
369 strparams[paramid++] = String.format("%d",value);
370 }else{
371 throw new SqlException(-1, "sql " +textSql + " dont need value:" + value);
372 }
373 }

引用了 String.format() , 以及 String.length().

函数调用图:

◆ setValue() [11/12]

void setValue ( long  value)

Mysql.MysqlPreparedStatement, SQLCipher.SQLCipherPreparedStatement , 以及 Sqlite.SqlitePreparedStatement 重载.

在文件 xsql.xcs375 行定义.

375 {
376 if (paramid < strparams.length){
377 strparams[paramid++] = String.format("%d",value);
378 }else{
379 throw new SqlException(-1, "sql " +textSql + " dont need value:" + value);
380 }
381 }

引用了 String.format() , 以及 String.length().

函数调用图:

◆ setValue() [12/12]

void setValue ( String  value)

Mysql.MysqlPreparedStatement, SQLCipher.SQLCipherPreparedStatement , 以及 Sqlite.SqlitePreparedStatement 重载.

在文件 xsql.xcs359 行定义.

359 {
360 if (paramid < strparams.length){
361 strparams[paramid++] = safety(value);
362 }else{
363 throw new SqlException(-1, "sql " +textSql + " dont need value:" + value);
364 }
365 }

引用了 String.length().

函数调用图:

◆ setValues()

void setValues ( Object []  args)

Mysql.MysqlPreparedStatement, SQLCipher.SQLCipherPreparedStatement , 以及 Sqlite.SqlitePreparedStatement 重载.

在文件 xsql.xcs506 行定义.

506 {
507 for (int i = 0; i < args.length; i++){
508 if (args[i].instanceOf(String)){
509 setValue((String)args[i]);
510 }else
511 if (args[i].instanceOf(int)){
512 setValue((int)args[i]);
513 }else
514 if (args[i].instanceOf(long)){
515 setValue((long)args[i]);
516 }else
517 if (args[i].instanceOf(byte)){
518 setValue((byte)args[i]);
519 }else
520 if (args[i].instanceOf(double)){
521 setValue((double)args[i]);
522 }else{
523 throw new SqlException(-1, "sql " +textSql + " dont accept type:" + i);
524 }
525 }
526 }

结构体成员变量说明

◆ paramid

int paramid = 0
package

在文件 xsql.xcs319 行定义.

◆ strparams

String [] strparams
package

在文件 xsql.xcs318 行定义.

◆ strsplit

String [] strsplit
package

在文件 xsql.xcs317 行定义.

◆ textSql

String textSql
package

在文件 xsql.xcs316 行定义.