cli_8h-source.html
来自「一个功能强大的内存数据库源代码,c++编写,有详细的注释」· HTML 代码 · 共 537 行 · 第 1/3 页
HTML
537 行
00351 <font class="comment"> * for_update parameter of cli_fetch to 1 in order to be able </font>00352 <font class="comment"> * to remove records. </font>00353 <font class="comment"> * Parameters:</font>00354 <font class="comment"> * statement - statememt descriptor returned by cli_statement</font>00355 <font class="comment"> * Returns:</font>00356 <font class="comment"> * result code as described in cli_result_code enum</font>00357 <font class="comment"> */</font>00358 <font class="keywordtype">int</font> FASTDB_DLL_ENTRY cli_remove(<font class="keywordtype">int</font> statement);00359 00360 <font class="comment">/*********************************************************************</font>00361 <font class="comment"> * cli_free</font>00362 <font class="comment"> * Deallocate statement and all associated data</font>00363 <font class="comment"> * Parameters:</font>00364 <font class="comment"> * statement - statememt descriptor returned by cli_statement</font>00365 <font class="comment"> * Returns:</font>00366 <font class="comment"> * result code as described in cli_result_code enum</font>00367 <font class="comment"> */</font>00368 <font class="keywordtype">int</font> FASTDB_DLL_ENTRY cli_free(<font class="keywordtype">int</font> statement);00369 00370 <font class="comment">/*********************************************************************</font>00371 <font class="comment"> * cli_commit</font>00372 <font class="comment"> * Commit current database transaction</font>00373 <font class="comment"> * Parameters:</font>00374 <font class="comment"> * session - session descriptor as returned by cli_open</font>00375 <font class="comment"> * Returns:</font>00376 <font class="comment"> * result code as described in cli_result_code enum</font>00377 <font class="comment"> */</font>00378 <font class="keywordtype">int</font> FASTDB_DLL_ENTRY cli_commit(<font class="keywordtype">int</font> session);00379 00380 <font class="comment">/*********************************************************************</font>00381 <font class="comment"> * cli_precommit</font>00382 <font class="comment"> * Release all locks set by transaction. This methods allows other clients</font>00383 <font class="comment"> * to proceed, but it doesn't flush transaction to the disk.</font>00384 <font class="comment"> * Parameters:</font>00385 <font class="comment"> * session - session descriptor as returned by cli_open</font>00386 <font class="comment"> * Returns:</font>00387 <font class="comment"> * result code as described in cli_result_code enum</font>00388 <font class="comment"> */</font>00389 <font class="keywordtype">int</font> FASTDB_DLL_ENTRY cli_precommit(<font class="keywordtype">int</font> session);00390 00391 <font class="comment">/*********************************************************************</font>00392 <font class="comment"> * cli_abort</font>00393 <font class="comment"> * Abort current database transaction</font>00394 <font class="comment"> * Parameters:</font>00395 <font class="comment"> * session - session descriptor as returned by cli_open</font>00396 <font class="comment"> * Returns:</font>00397 <font class="comment"> * result code as described in cli_result_code enum</font>00398 <font class="comment"> */</font>00399 <font class="keywordtype">int</font> FASTDB_DLL_ENTRY cli_abort(<font class="keywordtype">int</font> session);00400 00401 00402 <font class="keyword">enum</font> cli_field_flags { 00403 cli_hashed = 1, <font class="comment">/* field should be indexed usnig hash table */</font>00404 cli_indexed = 2 <font class="comment">/* field should be indexed using B-Tree */</font>00405 };00406 00407 <font class="keyword">typedef</font> <font class="keyword">struct </font>cli_field_descriptor { 00408 <font class="keyword">enum</font> cli_var_type type;00409 <font class="keywordtype">int</font> flags;00410 <font class="keywordtype">char</font> <font class="keyword">const</font>* name;00411 <font class="keywordtype">char</font> <font class="keyword">const</font>* refTableName;00412 <font class="keywordtype">char</font> <font class="keyword">const</font>* inverseRefFieldName;00413 } cli_field_descriptor;00414 00415 <font class="comment">/*********************************************************************</font>00416 <font class="comment"> * cli_describe</font>00417 <font class="comment"> * Describe fileds of specified table</font>00418 <font class="comment"> * Parameters:</font>00419 <font class="comment"> * session - session descriptor as returned by cli_open</font>00420 <font class="comment"> * table - name of the table</font>00421 <font class="comment"> * fields - adress of the pointer to the array of fields descriptors, </font>00422 <font class="comment"> * this array should be later deallocated by application by free()</font>00423 <font class="comment"> * Returns:</font>00424 <font class="comment"> * >= 0 - number of fields in the table</font>00425 <font class="comment"> * < 0 - result code as described in cli_result_code enum</font>00426 <font class="comment"> */</font>00427 <font class="keywordtype">int</font> FASTDB_DLL_ENTRY cli_describe(<font class="keywordtype">int</font> session, <font class="keywordtype">char</font> <font class="keyword">const</font>* table, cli_field_descriptor** fields);00428 00429 00430 <font class="keyword">typedef</font> <font class="keyword">struct </font>cli_table_descriptor {00431 <font class="keywordtype">char</font> <font class="keyword">const</font>* name;00432 } cli_table_descriptor;00433 00434 <font class="comment">/*********************************************************************</font>00435 <font class="comment"> * cli_show_tables</font>00436 <font class="comment"> * Show all tables of specified database</font>00437 <font class="comment"> * Parameters:</font>00438 <font class="comment"> * session - session descriptor as returned by cli_open</font>00439 <font class="comment"> * tables - address of the pointer to the array of tables descriptors,</font>00440 <font class="comment"> * this array should be later deallocated by application by free()</font>00441 <font class="comment"> * Returns:</font>00442 <font class="comment"> * >= 0 - number of tables in the database (Metatable is not returned/counted)</font>00443 <font class="comment"> * < 0 - result code as described in cli_result_code enum</font>00444 <font class="comment"> */</font>00445 <font class="keywordtype">int</font> FASTDB_DLL_ENTRY cli_show_tables(<font class="keywordtype">int</font> session, cli_table_descriptor** tables);00446 00447 00448 <font class="comment">/*********************************************************************</font>00449 <font class="comment"> * cli_create_table</font>00450 <font class="comment"> * Create new table</font>00451 <font class="comment"> * Parameters:</font>00452 <font class="comment"> * session - session descriptor as returned by cli_open</font>00453 <font class="comment"> * tableName - name of new table</font>00454 <font class="comment"> * nFields - number of columns in the table</font>00455 <font class="comment"> * fields - array with table columns descriptors</font>00456 <font class="comment"> * Returns:</font>00457 <font class="comment"> * result code as described in cli_result_code enum</font>00458 <font class="comment"> */</font>00459 <font class="keywordtype">int</font> FASTDB_DLL_ENTRY cli_create_table(<font class="keywordtype">int</font> session, <font class="keywordtype">char</font> <font class="keyword">const</font>* tableName, <font class="keywordtype">int</font> nFields, 00460 cli_field_descriptor* fields);00461 00462 <font class="comment">/*********************************************************************</font>00463 <font class="comment"> * cli_drop_table</font>00464 <font class="comment"> * drop the table</font>00465 <font class="comment"> * Parameters:</font>00466 <font class="comment"> * session - session descriptor as returned by cli_open</font>00467 <font class="comment"> * tableName - name of deleted table</font>00468 <font class="comment"> * Returns:</font>00469 <font class="comment"> * result code as described in cli_result_code enum</font>00470 <font class="comment"> */</font>00471 <font class="keywordtype">int</font> FASTDB_DLL_ENTRY cli_drop_table(<font class="keywordtype">int</font> session, <font class="keywordtype">char</font> <font class="keyword">const</font>* tableName);00472 00473 00474 <font class="comment">/*********************************************************************</font>00475 <font class="comment"> * cli_alter_index</font>00476 <font class="comment"> * add or remove column index</font>00477 <font class="comment"> * Parameters:</font>00478 <font class="comment"> * session - session descriptor as returned by cli_open</font>00479 <font class="comment"> * tableName - name of the table</font>00480 <font class="comment"> * fieldName - name of field</font>00481 <font class="comment"> * newFlags - new flags of the field, if index exists for this field, but is not specified in </font>00482 <font class="comment"> * <code>newFlags</code> mask, then it will be removed; if index not exists, but is </font>00483 <font class="comment"> * specified in <code>newFlags</code> mask, then it will be created. * </font>00484 <font class="comment"> * Returns:</font>00485 <font class="comment"> * result code as described in cli_result_code enum</font>00486 <font class="comment"> */</font>00487 <font class="keywordtype">int</font> FASTDB_DLL_ENTRY cli_alter_index(<font class="keywordtype">int</font> session, <font class="keywordtype">char</font> <font class="keyword">const</font>* tableName, <font class="keywordtype">char</font> <font class="keyword">const</font>* fieldName, 00488 <font class="keywordtype">int</font> newFlags);00489 00490 00491 <font class="comment">/*********************************************************************</font>00492 <font class="comment"> * cli_set_error_handler</font>00493 <font class="comment"> * Set FastDB erro handler. Handler should be no-return function which perform stack unwind.</font>00494 <font class="comment"> * Parameters:</font>00495 <font class="comment"> * session - session descriptor as returned by cli_open</font>00496 <font class="comment"> * handler - error handler</font>00497 <font class="comment"> * Returns:</font>00498 <font class="comment"> * previous handler</font>00499 <font class="comment"> */</font>00500 <font class="keyword">enum</font> cli_error_class { 00501 cli_no_error, 00502 cli_query_error,00503 cli_arithmetic_error,00504 cli_index_out_of_range_error,00505 cli_database_open_rror,00506 cli_file_error,00507 cli_out_of_memory_error,00508 cli_deadlock,00509 cli_null_reference_error,00510 cli_lock_revoked,00511 cli_file_limit_exeeded 00512 };00513 <font class="keyword">typedef</font> void (*cli_error_handler)(<font class="keyword">enum</font> cli_error_class error, <font class="keywordtype">char</font> <font class="keyword">const</font>* msg, <font class="keywordtype">int</font> msgarg); 00514 cli_error_handler FASTDB_DLL_ENTRY cli_set_error_handler(<font class="keywordtype">int</font> session, cli_error_handler new_handler);00515 00516 <font class="preprocessor">#ifdef __cplusplus</font>00517 <font class="preprocessor"></font>}00518 <font class="preprocessor">#endif</font>00519 <font class="preprocessor"></font>00520 <font class="preprocessor">#endif</font>00521 <font class="preprocessor"></font>00522 </pre></div><hr><address align="right"><small>Generated on Fri Nov 15 21:06:28 2002 for FastDB by<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border=0 width=110 height=53></a>1.2.15 </small></address></body></html>
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?