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"> *     &gt;= 0 - number of fields in the table</font>00425 <font class="comment"> *     &lt; 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"> *     &gt;= 0 - number of tables in the database (Metatable is not returned/counted)</font>00443 <font class="comment"> *     &lt; 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"> *                 &lt;code&gt;newFlags&lt;/code&gt; mask, then it will be removed; if index not exists, but is </font>00483 <font class="comment"> *                 specified in &lt;code&gt;newFlags&lt;/code&gt; 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 + -
显示快捷键?