transactd 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/BUILD_UNIX-JA +174 -0
- data/BUILD_WIN-JA +256 -0
- data/CMakeLists.txt +96 -0
- data/COPYING +339 -0
- data/README +406 -0
- data/README-JA +424 -0
- data/bin/common/tdclc_32_1_0.dll +0 -0
- data/bin/common/tdclc_64_1_0.dll +0 -0
- data/build/common/check_for_link_iconv.cmake +73 -0
- data/build/common/copyifgreater.cmd +30 -0
- data/build/common/copyifgreater.js +290 -0
- data/build/common/get_boost_libs.cmake +106 -0
- data/build/common/get_ruby_path.cmake +115 -0
- data/build/common/options.cmake +127 -0
- data/build/common/smart_install.cmake +263 -0
- data/build/common/system.cmake +122 -0
- data/build/common/transactd.rc.in +52 -0
- data/build/common/transactd_cl_common.cmake +101 -0
- data/build/common/transactd_cl_output.cmake +93 -0
- data/build/common/transactd_common.cmake +237 -0
- data/build/common/transactd_required.cmake +28 -0
- data/build/swig/ruby/generate.cmake.in +35 -0
- data/build/swig/ruby/generate.cmd.in +19 -0
- data/build/swig/ruby/ruby.swg +101 -0
- data/build/swig/tdcl.i +188 -0
- data/build/tdclc/BUILDNUMBER.txt +1 -0
- data/build/tdclc/CMakeLists.txt +170 -0
- data/build/tdclc/tdclc_32.cbproj +181 -0
- data/build/tdclc/tdclc_64.cbproj +205 -0
- data/build/tdclcpp/BUILDNUMBER.txt +1 -0
- data/build/tdclcpp/CMakeLists.txt +142 -0
- data/build/tdclcpp/tdclcpp_bcb_32.cbproj +239 -0
- data/build/tdclcpp/tdclcpp_bcb_64.cbproj +304 -0
- data/build/tdclrb/BUILDNUMBER.txt +1 -0
- data/build/tdclrb/CMakeLists.txt +258 -0
- data/build/tdclrb/GEM_VERSION +3 -0
- data/build/tdclrb/bldgem/extconf.rb +123 -0
- data/build/tdclrb/gem/INSTALLLOG.win32 +9 -0
- data/build/tdclrb/gem/Makefile.win32-VS +65 -0
- data/build/tdclrb/gem/Makefile.win32-prebuilt +48 -0
- data/build/tdclrb/gem/detect.rb +31 -0
- data/build/tdclrb/gem/helper.rb +113 -0
- data/build/tdclrb/gem/transactd.rb +22 -0
- data/build/tdclrb/gem_output.cmake +44 -0
- data/source/bzs/db/IBlobBuffer.h +51 -0
- data/source/bzs/db/blobBuffer.h +177 -0
- data/source/bzs/db/blobStructs.h +85 -0
- data/source/bzs/db/engine/mysql/IReadRecords.h +52 -0
- data/source/bzs/db/engine/mysql/bookmark.h +195 -0
- data/source/bzs/db/engine/mysql/database.cpp +1882 -0
- data/source/bzs/db/engine/mysql/database.h +465 -0
- data/source/bzs/db/engine/mysql/dbManager.cpp +303 -0
- data/source/bzs/db/engine/mysql/dbManager.h +143 -0
- data/source/bzs/db/engine/mysql/errorMessage.cpp +75 -0
- data/source/bzs/db/engine/mysql/errorMessage.h +43 -0
- data/source/bzs/db/engine/mysql/fieldAccess.h +158 -0
- data/source/bzs/db/engine/mysql/mydebuglog.cpp +349 -0
- data/source/bzs/db/engine/mysql/mydebuglog.h +89 -0
- data/source/bzs/db/engine/mysql/mysqlInternal.h +171 -0
- data/source/bzs/db/engine/mysql/mysqlThd.cpp +169 -0
- data/source/bzs/db/engine/mysql/mysqlThd.h +35 -0
- data/source/bzs/db/engine/mysql/percentageKey.h +260 -0
- data/source/bzs/db/protocol/ICommandExecuter.h +49 -0
- data/source/bzs/db/protocol/hs/hsCommandExecuter.cpp +689 -0
- data/source/bzs/db/protocol/hs/hsCommandExecuter.h +228 -0
- data/source/bzs/db/protocol/tdap/btrDate.cpp +437 -0
- data/source/bzs/db/protocol/tdap/btrDate.h +227 -0
- data/source/bzs/db/protocol/tdap/client/bulkInsert.h +127 -0
- data/source/bzs/db/protocol/tdap/client/client.cpp +106 -0
- data/source/bzs/db/protocol/tdap/client/client.h +292 -0
- data/source/bzs/db/protocol/tdap/client/connMgr.cpp +144 -0
- data/source/bzs/db/protocol/tdap/client/connMgr.h +82 -0
- data/source/bzs/db/protocol/tdap/client/database.cpp +863 -0
- data/source/bzs/db/protocol/tdap/client/database.h +118 -0
- data/source/bzs/db/protocol/tdap/client/databaseFactory.cpp +100 -0
- data/source/bzs/db/protocol/tdap/client/dbDef.cpp +1640 -0
- data/source/bzs/db/protocol/tdap/client/dbDef.h +135 -0
- data/source/bzs/db/protocol/tdap/client/dllmain.cpp +434 -0
- data/source/bzs/db/protocol/tdap/client/errorMessage.cpp +92 -0
- data/source/bzs/db/protocol/tdap/client/errorMessage_ja.cpp +98 -0
- data/source/bzs/db/protocol/tdap/client/fieldDDF.cpp +174 -0
- data/source/bzs/db/protocol/tdap/client/fieldDDF.h +91 -0
- data/source/bzs/db/protocol/tdap/client/fileDDF.cpp +140 -0
- data/source/bzs/db/protocol/tdap/client/fileDDF.h +86 -0
- data/source/bzs/db/protocol/tdap/client/filter.cpp +527 -0
- data/source/bzs/db/protocol/tdap/client/filter.h +154 -0
- data/source/bzs/db/protocol/tdap/client/indexDDF.cpp +137 -0
- data/source/bzs/db/protocol/tdap/client/indexDDF.h +84 -0
- data/source/bzs/db/protocol/tdap/client/nsDatabase.cpp +724 -0
- data/source/bzs/db/protocol/tdap/client/nsDatabase.h +123 -0
- data/source/bzs/db/protocol/tdap/client/nsTable.cpp +899 -0
- data/source/bzs/db/protocol/tdap/client/nsTable.h +199 -0
- data/source/bzs/db/protocol/tdap/client/request.h +198 -0
- data/source/bzs/db/protocol/tdap/client/sharedData.cpp +58 -0
- data/source/bzs/db/protocol/tdap/client/sharedData.h +56 -0
- data/source/bzs/db/protocol/tdap/client/sqlBuilder.cpp +574 -0
- data/source/bzs/db/protocol/tdap/client/sqlBuilder.h +53 -0
- data/source/bzs/db/protocol/tdap/client/stringConverter.h +627 -0
- data/source/bzs/db/protocol/tdap/client/table.cpp +2613 -0
- data/source/bzs/db/protocol/tdap/client/table.h +221 -0
- data/source/bzs/db/protocol/tdap/client/trdboostapi.h +1096 -0
- data/source/bzs/db/protocol/tdap/client/trdboostapiInternal.h +179 -0
- data/source/bzs/db/protocol/tdap/client/trdclcppautolink.h +40 -0
- data/source/bzs/db/protocol/tdap/client/trnsctcl.def +11 -0
- data/source/bzs/db/protocol/tdap/myDateTime.cpp +500 -0
- data/source/bzs/db/protocol/tdap/mysql/characterset.cpp +184 -0
- data/source/bzs/db/protocol/tdap/mysql/characterset.h +60 -0
- data/source/bzs/db/protocol/tdap/mysql/databaseSchema.cpp +284 -0
- data/source/bzs/db/protocol/tdap/mysql/databaseSchema.h +53 -0
- data/source/bzs/db/protocol/tdap/mysql/debuglog.cpp +383 -0
- data/source/bzs/db/protocol/tdap/mysql/debuglog.h +106 -0
- data/source/bzs/db/protocol/tdap/mysql/recordsetReader.h +680 -0
- data/source/bzs/db/protocol/tdap/mysql/request.h +202 -0
- data/source/bzs/db/protocol/tdap/mysql/tdapCommandExecuter.cpp +1020 -0
- data/source/bzs/db/protocol/tdap/mysql/tdapCommandExecuter.h +141 -0
- data/source/bzs/db/protocol/tdap/tdapRequest.h +190 -0
- data/source/bzs/db/protocol/tdap/tdapSchema.cpp +295 -0
- data/source/bzs/db/protocol/tdap/tdapSchema.h +558 -0
- data/source/bzs/db/protocol/tdap/tdapcapi.h +423 -0
- data/source/bzs/db/transactd/appBuilderImple.h +55 -0
- data/source/bzs/db/transactd/appModule.cpp +183 -0
- data/source/bzs/db/transactd/appModule.h +80 -0
- data/source/bzs/db/transactd/connManager.cpp +201 -0
- data/source/bzs/db/transactd/connManager.h +60 -0
- data/source/bzs/db/transactd/connectionRecord.h +69 -0
- data/source/bzs/db/transactd/transactd.cpp +325 -0
- data/source/bzs/env/compiler.h +135 -0
- data/source/bzs/env/crosscompile.cpp +130 -0
- data/source/bzs/env/crosscompile.h +150 -0
- data/source/bzs/env/fileopen.h +36 -0
- data/source/bzs/env/mbcswchrLinux.cpp +40 -0
- data/source/bzs/env/mbcswchrLinux.h +88 -0
- data/source/bzs/env/tstring.h +183 -0
- data/source/bzs/example/changeSchema.cpp +117 -0
- data/source/bzs/example/changeSchema_c.cpp +78 -0
- data/source/bzs/example/connection_pool_c.cpp +171 -0
- data/source/bzs/example/createDatabase.cpp +305 -0
- data/source/bzs/example/createDatabase_c.cpp +202 -0
- data/source/bzs/example/deleteRecords.cpp +87 -0
- data/source/bzs/example/deleteRecords_c.cpp +57 -0
- data/source/bzs/example/dropDatabase.cpp +59 -0
- data/source/bzs/example/dropDatabase_c.cpp +34 -0
- data/source/bzs/example/insertRecords.cpp +212 -0
- data/source/bzs/example/insertRecords_c.cpp +153 -0
- data/source/bzs/example/readRecords.cpp +141 -0
- data/source/bzs/example/readRecords_c.cpp +107 -0
- data/source/bzs/example/updateRecords.cpp +99 -0
- data/source/bzs/example/updateRecords_c.cpp +71 -0
- data/source/bzs/example/update_with_transaction.cpp +104 -0
- data/source/bzs/example/update_with_transaction_c.cpp +80 -0
- data/source/bzs/netsvc/client/tcpClient.cpp +226 -0
- data/source/bzs/netsvc/client/tcpClient.h +489 -0
- data/source/bzs/netsvc/server/IAppModule.h +94 -0
- data/source/bzs/netsvc/server/iserver.h +65 -0
- data/source/bzs/netsvc/server/serverCpt.cpp +522 -0
- data/source/bzs/netsvc/server/serverCpt.h +88 -0
- data/source/bzs/netsvc/server/serverPipe.cpp +705 -0
- data/source/bzs/netsvc/server/serverPipe.h +96 -0
- data/source/bzs/netsvc/server/serverTpool.cpp +416 -0
- data/source/bzs/netsvc/server/serverTpool.h +84 -0
- data/source/bzs/rtl/benchmark.cpp +96 -0
- data/source/bzs/rtl/benchmark.h +65 -0
- data/source/bzs/rtl/datetime.cpp +375 -0
- data/source/bzs/rtl/datetime.h +53 -0
- data/source/bzs/rtl/debuglog.cpp +106 -0
- data/source/bzs/rtl/debuglog.h +97 -0
- data/source/bzs/rtl/exception.h +116 -0
- data/source/bzs/rtl/stl_uty.cpp +35 -0
- data/source/bzs/rtl/stl_uty.h +29 -0
- data/source/bzs/rtl/stringBuffers.cpp +101 -0
- data/source/bzs/rtl/stringBuffers.h +58 -0
- data/source/bzs/rtl/strtrim.cpp +135 -0
- data/source/bzs/rtl/strtrim.h +46 -0
- data/source/bzs/test/tdclatl/bench_tdclatl.js +445 -0
- data/source/bzs/test/tdclrb/bench_tdclcpp.rb +375 -0
- data/source/bzs/test/tdclrb/prepare.rb +226 -0
- data/source/bzs/test/tdclrb/transactd_datetime_spec.rb +172 -0
- data/source/bzs/test/tdclrb/transactd_kanjischema_spec.rb +208 -0
- data/source/bzs/test/tdclrb/transactd_spec.rb +1536 -0
- data/source/bzs/test/transactdBench/transactdBench.cpp +430 -0
- data/source/bzs/test/transactdBench/transactdBench2.cpp +342 -0
- data/source/bzs/test/trdclengn/test_trdclengn.cpp +2030 -0
- data/source/global/tdclatl/Database.cpp +503 -0
- data/source/global/tdclatl/Database.h +139 -0
- data/source/global/tdclatl/DbDef.cpp +242 -0
- data/source/global/tdclatl/DbDef.h +79 -0
- data/source/global/tdclatl/Field.cpp +92 -0
- data/source/global/tdclatl/Field.h +59 -0
- data/source/global/tdclatl/FieldDef.cpp +238 -0
- data/source/global/tdclatl/FieldDef.h +87 -0
- data/source/global/tdclatl/Flags.cpp +111 -0
- data/source/global/tdclatl/Flags.h +55 -0
- data/source/global/tdclatl/KeyDef.cpp +51 -0
- data/source/global/tdclatl/KeyDef.h +55 -0
- data/source/global/tdclatl/KeySegment.cpp +55 -0
- data/source/global/tdclatl/Table.cpp +600 -0
- data/source/global/tdclatl/Table.h +144 -0
- data/source/global/tdclatl/TableDef.cpp +291 -0
- data/source/global/tdclatl/TableDef.h +86 -0
- data/source/global/tdclatl/TdVersion.cpp +74 -0
- data/source/global/tdclatl/TdVersion.h +54 -0
- data/source/global/tdclatl/_IDatabaseEvents_CP.h +113 -0
- data/source/global/tdclatl/dllmain.cpp +30 -0
- data/source/global/tdclatl/dllmain.h +27 -0
- data/source/global/tdclatl/keySegment.h +57 -0
- data/source/global/tdclatl/resource.h +0 -0
- data/source/global/tdclatl/stdafx.cpp +2 -0
- data/source/global/tdclatl/stdafx.h +25 -0
- data/source/global/tdclatl/targetver.h +4 -0
- data/source/global/tdclatl/tdclatl.cpp +68 -0
- data/source/global/tdclatl/tdclatl.def +10 -0
- data/source/global/tdclatl/tdclatl.idl +1035 -0
- data/source/linux/charsetConvert.h +112 -0
- data/source/linux/linuxTypes.h +33 -0
- data/source/linux/tchar.h +428 -0
- data/transactd.gemspec +97 -0
- metadata +267 -0
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
/*=================================================================
|
|
2
|
+
Copyright (C) 2000-2013 BizStation Corp All rights reserved.
|
|
3
|
+
|
|
4
|
+
This program is free software; you can redistribute it and/or
|
|
5
|
+
modify it under the terms of the GNU General Public License
|
|
6
|
+
as published by the Free Software Foundation; either version 2
|
|
7
|
+
of the License, or (at your option) any later version.
|
|
8
|
+
|
|
9
|
+
This program is distributed in the hope that it will be useful,
|
|
10
|
+
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
11
|
+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
12
|
+
GNU General Public License for more details.
|
|
13
|
+
|
|
14
|
+
You should have received a copy of the GNU General Public License
|
|
15
|
+
along with this program; if not, write to the Free Software
|
|
16
|
+
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
|
17
|
+
02111-1307, USA.
|
|
18
|
+
=================================================================*/
|
|
19
|
+
#include "nsTable.h"
|
|
20
|
+
#include <stdio.h>
|
|
21
|
+
|
|
22
|
+
#pragma package(smart_init)
|
|
23
|
+
|
|
24
|
+
namespace bzs
|
|
25
|
+
{
|
|
26
|
+
namespace db
|
|
27
|
+
{
|
|
28
|
+
namespace protocol
|
|
29
|
+
{
|
|
30
|
+
namespace tdap
|
|
31
|
+
{
|
|
32
|
+
namespace client
|
|
33
|
+
{
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
PACKAGE _TCHAR* getErrorMessageLocale(int errorCode, _TCHAR* buf, size_t size)
|
|
37
|
+
{
|
|
38
|
+
const _TCHAR* p = 0x00;
|
|
39
|
+
switch (errorCode)
|
|
40
|
+
{
|
|
41
|
+
case STATUS_LOCK_ERROR:
|
|
42
|
+
case STATUS_FILE_LOCKED:
|
|
43
|
+
case STATUS_CANNOT_LOCK_TABLE: p = _T("���̃��R�[�h�͊��ɑ��̃��[�U�[�ɂ�胍�b�N����Ă��܂��B");break;
|
|
44
|
+
case STATUS_CHANGE_CONFLICT: p = _T("���̃��R�[�h�͍��A���̃��[�U�[�ɂ��ύX����܂����B");break;
|
|
45
|
+
case STATUS_TABLE_YET_OPEN: p = _T("���̃e�[�u���͂܂� OPEN ����Ă��܂���B");break;
|
|
46
|
+
case STATUS_DURING_TRANSACTION: p = _T("���̃e�[�u���͂܂��g�����U�N�V�������ł��Bclose �ł��܂���B");break;
|
|
47
|
+
case STATUS_NO_ACR_UPDATE_DELETE: p = _T("�X�V�܂��͍폜�A�N�Z�X��������܂���B");break;
|
|
48
|
+
case STATUS_NO_ACR_INSERT: p = _T("�lj��A�N�Z�X��������܂���B");break;
|
|
49
|
+
case STATUS_NO_ACR_READ: p = _T("�ǂݎ��A�N�Z�X��������܂���B");break;
|
|
50
|
+
case STATUS_CANT_ALLOC_MEMORY: p = _T("���������m�ۂł��܂���ł����B");break;
|
|
51
|
+
case STATUS_USE_KEYFIELD: p = _T("���̃t�B�[���h�̓L�[�Ŏg�p����Ă��邽�ߍ폜�ł��܂���B");break;
|
|
52
|
+
case STATUS_TOO_MANY_TABLES: p = _T("�Ǘ��\�ȃe�[�u�������Ă��܂��B");break;
|
|
53
|
+
case STATUS_INVARID_PRM_KEY_NUM: p = _T("MainKey�L�[�ԍ����s���ł��B");break;
|
|
54
|
+
case STATUS_INVARID_PNT_KEY_NUM: p = _T("ParentKey�L�[�ԍ����s���ł��B");break;
|
|
55
|
+
case STATUS_INVARID_REP_KEY_NUM: p = _T("ReplicaKey�L�[�ԍ����s���ł��B");break;
|
|
56
|
+
case STATUS_INVARID_FIELD_IDX: p = _T("�t�B�[���h�C���f�b�N�X���L���͈͂ɂ���܂���B");break;
|
|
57
|
+
case STATUS_ALREADY_DELETED: p = _T("���̃A�C�e���͍폜����Ă��܂��B");break;
|
|
58
|
+
case STATUS_LMITS_MAX_TABLES: p = _T("�I�[�v���ł���e�[�u���̍ő吔���Ă��܂��B");break;
|
|
59
|
+
case STATUS_DB_YET_OPEN: p = _T("�f�[�^�x�[�X���I�[�v������Ă��܂���B");break;
|
|
60
|
+
case STATUS_TABLENAME_NOTFOUND: p = _T("�w�肵���e�[�u������������܂���B");break;
|
|
61
|
+
case STATUS_DIFFERENT_DBVERSION: p = _T("�f�[�^�x�[�X�̃o�[�W�������Ⴄ���A�j�����Ă��܂��B");break;
|
|
62
|
+
case STATUS_DUPLICATE_FIELDNAME: p = _T("�t�B�[���h�����d�����Ă��܂��B");break;
|
|
63
|
+
case STATUS_INVALID_TABLE_IDX: p = _T("��`����Ȃ��e�[�u���ԍ��ł��B");break;
|
|
64
|
+
case STATUS_AUTH_DENIED: p = _T("���[�U�[���܂��̓p�X���[�h���s���ł��B");break;
|
|
65
|
+
case STATUS_TOO_MANY_FIELDS: p = _T("�Ǘ��\�ȃt�B�[���h�����Ă��܂��B");break;
|
|
66
|
+
case STATUS_FILTERSTRING_ERROR: p = _T("�t�B���^������Ɍ�肪����܂��B");break;
|
|
67
|
+
case STATUS_INVALID_FIELDLENGTH: p = _T("�t�B�[���h�����s���ł��B");break;
|
|
68
|
+
case STATUS_INVALID_KEYTYPE: p = _T("�g�p�ł��Ȃ��L�[�^�C�v���w�肳��Ă��܂��B");break;
|
|
69
|
+
case STATUS_LVAR_NOTE_NOT_LAST: p = _T("Note�y��Lvar�^�C�v�̓t�B�[���h�̈�ԍŌ�łȂ���Ȃ�܂���B");break;
|
|
70
|
+
case STATUS_NODEF_FOR_CONVERT: p = _T("�R���o�[�g����`������܂���B");break;
|
|
71
|
+
case STATUS_TOO_LONG_OWNERNAME: p = _T("�I�[�i�[�l�[�����������܂��B");break;
|
|
72
|
+
case STATUS_CANT_DEL_FOR_REL: p = _T("�Q�Ɛ������̂��ߍ폜�ł��܂���B");break;
|
|
73
|
+
case STATUS_NO_AUTOINC_SPACE: p = _T("AutoIncEx�̃X�y�[�X������܂���B");break;
|
|
74
|
+
case STATUS_INVALID_RECLEN: p = _T("���R�[�h����`���s�����A�e�[�u�����I�[�v������Ă��܂���B");break;
|
|
75
|
+
case STATUS_INVALID_FIELDVALUE: p = _T("�t�B�[���h�̒l���s���ł��B");break;
|
|
76
|
+
case STATUS_INVALID_VALLEN: p = _T("�ϒ����R�[�h�̒������o�b�t�@�T�C�Y���Ă��܂��B");break;
|
|
77
|
+
case STATUS_FIELDTYPE_NOTSUPPORT: p = _T("This field type is not supported.");break;
|
|
78
|
+
case STATUS_DUPPLICATE_KEYVALUE: p = _T("�L�[�l���d�����Ă��邽�ߓo�^�ł��܂���B");break;
|
|
79
|
+
case STATUS_REQUESTER_DEACTIVE: p = _T("�f�[�^�x�[�X�G���W�������[�h�ł��܂���B\r\nTerminal Service�y�сAWindowsXP�̃��[�U�[��ւ�") _T
|
|
80
|
+
("�ɂ����āA�����ɑ����̃��[�U�[�����p����ɂ́APervasive.SQL 2000i Server�ȏ�̃C���X�g�[�����K�v�ł��B");break;
|
|
81
|
+
case STATUS_ACCESS_DENIED: p = _T("�X�V�̂��߂̃A�N�Z�X��������܂���B\r\n�t�@�C���̓��[�h�I�����[���p�X���[�h������������܂���B");break;
|
|
82
|
+
case STATUS_CANT_CREATE:p = _T("�f�[�^�x�[�X�̍쐬�Ɏ��s���܂����B���Ƀf�[�^�x�[�X�����݂��Ă��Ȃ����m�F���Ă��������B");break;
|
|
83
|
+
default:
|
|
84
|
+
_stprintf_s(buf, 256, _T("�f�[�^�x�[�X�I�y���[�V�����ŃG���[���������܂����B\r\n�G���[�ԍ��� %d \r\n �����𒆎~���܂��B"), errorCode);
|
|
85
|
+
}
|
|
86
|
+
if (p)
|
|
87
|
+
{
|
|
88
|
+
_tcsncpy(buf, p, size);
|
|
89
|
+
buf[size -1] = 0x00;
|
|
90
|
+
}
|
|
91
|
+
return buf;
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
}// namespace client
|
|
95
|
+
}// namespace tdap
|
|
96
|
+
}// namespace protocol
|
|
97
|
+
}// namespace db
|
|
98
|
+
}// namespace bzs
|
|
@@ -0,0 +1,174 @@
|
|
|
1
|
+
/* =================================================================
|
|
2
|
+
Copyright (C) 2000-2013 BizStation Corp All rights reserved.
|
|
3
|
+
|
|
4
|
+
This program is free software; you can redistribute it and/or
|
|
5
|
+
modify it under the terms of the GNU General Public License
|
|
6
|
+
as published by the Free Software Foundation; either version 2
|
|
7
|
+
of the License, or (at your option) any later version.
|
|
8
|
+
|
|
9
|
+
This program is distributed in the hope that it will be useful,
|
|
10
|
+
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
11
|
+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
12
|
+
GNU General Public License for more details.
|
|
13
|
+
|
|
14
|
+
You should have received a copy of the GNU General Public License
|
|
15
|
+
along with this program; if not, write to the Free Software
|
|
16
|
+
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
|
17
|
+
02111-1307, USA.
|
|
18
|
+
================================================================= */
|
|
19
|
+
#include <bzs/env/tstring.h>
|
|
20
|
+
#pragma hdrstop
|
|
21
|
+
|
|
22
|
+
#include "fieldDDF.h"
|
|
23
|
+
#include "nsDatabase.h"
|
|
24
|
+
#pragma package(smart_init)
|
|
25
|
+
|
|
26
|
+
namespace bzs
|
|
27
|
+
{
|
|
28
|
+
namespace db
|
|
29
|
+
{
|
|
30
|
+
namespace protocol
|
|
31
|
+
{
|
|
32
|
+
namespace tdap
|
|
33
|
+
{
|
|
34
|
+
namespace client
|
|
35
|
+
{
|
|
36
|
+
|
|
37
|
+
fieldDDF::fieldDDF(nsdatabase *pbe) : nstable(pbe) {m_keybuflen = 128;}
|
|
38
|
+
|
|
39
|
+
void fieldDDF::doOpen(const _TCHAR* Dir, char_td mode, const _TCHAR* OwnerName)
|
|
40
|
+
{
|
|
41
|
+
_TCHAR FullPath[256];
|
|
42
|
+
|
|
43
|
+
_tcscpy(m_DataDir, Dir);
|
|
44
|
+
_tcscpy(FullPath, Dir);
|
|
45
|
+
_tcscat(FullPath, PSEPARATOR);
|
|
46
|
+
_tcscat(FullPath, _T("FIELD.DDF"));
|
|
47
|
+
nstable::doOpen(FullPath, mode, OwnerName);
|
|
48
|
+
|
|
49
|
+
m_pdata = &datbuf;
|
|
50
|
+
m_buflen = sizeof(SFIELDDDF);
|
|
51
|
+
m_datalen = sizeof(SFIELDDDF);
|
|
52
|
+
m_keybuf = &keybuf[0];
|
|
53
|
+
m_keynum = 0;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
keylen_td fieldDDF::writeKeyData()
|
|
57
|
+
{
|
|
58
|
+
keylen_td len = 2;
|
|
59
|
+
switch (m_keynum)
|
|
60
|
+
{
|
|
61
|
+
case 0: memcpy(&keybuf[0], &fieldid, len);
|
|
62
|
+
break;
|
|
63
|
+
case 1: memcpy(&keybuf[0], &fileid, len);
|
|
64
|
+
break;
|
|
65
|
+
case 2:
|
|
66
|
+
len = 20;
|
|
67
|
+
memcpy(&keybuf[0], &name, len);
|
|
68
|
+
break;
|
|
69
|
+
case 3:
|
|
70
|
+
memcpy(&keybuf[0], &fileid, len);
|
|
71
|
+
memcpy(&keybuf[2], &name, 20);
|
|
72
|
+
len += 20;
|
|
73
|
+
break;
|
|
74
|
+
}
|
|
75
|
+
return len;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
void fieldDDF::writeRecordData()
|
|
79
|
+
{
|
|
80
|
+
datbuf.fieldid = fieldid;
|
|
81
|
+
datbuf.fileid = fileid;
|
|
82
|
+
strncpy(datbuf.name, name, 20);
|
|
83
|
+
for (size_t i = strlen(datbuf.name); i < 20; i++)
|
|
84
|
+
datbuf.name[i] = ' ';
|
|
85
|
+
|
|
86
|
+
#ifdef DDF_PSQLV_MODE
|
|
87
|
+
if (type == ft_logical)
|
|
88
|
+
type = ft_uinteger;
|
|
89
|
+
|
|
90
|
+
#endif
|
|
91
|
+
datbuf.type = type;
|
|
92
|
+
datbuf.pos = pos;
|
|
93
|
+
datbuf.len = len;
|
|
94
|
+
datbuf.dec = dec;
|
|
95
|
+
|
|
96
|
+
datbuf.flag = flag;
|
|
97
|
+
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
void fieldDDF::onReadAfter()
|
|
101
|
+
{
|
|
102
|
+
fieldid = datbuf.fieldid;
|
|
103
|
+
fileid = datbuf.fileid;
|
|
104
|
+
strncpy(name, datbuf.name, 20);
|
|
105
|
+
name[20] = 0x00;
|
|
106
|
+
|
|
107
|
+
type = datbuf.type;
|
|
108
|
+
pos = datbuf.pos;
|
|
109
|
+
len = datbuf.len;
|
|
110
|
+
dec = datbuf.dec;
|
|
111
|
+
flag = datbuf.flag;
|
|
112
|
+
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
void fieldDDF::createTable(const _TCHAR* fullpath)
|
|
116
|
+
{
|
|
117
|
+
fileSpec *fs;
|
|
118
|
+
fs = (fileSpec*)malloc(512);
|
|
119
|
+
memset(fs, 512, 0x00);
|
|
120
|
+
fs->recLen = 32;
|
|
121
|
+
fs->pageSize = 4096;
|
|
122
|
+
fs->indexCount = 5;
|
|
123
|
+
fs->fileFlag.all = 0;
|
|
124
|
+
fs->preAlloc = 0;
|
|
125
|
+
fs->keySpecs[0].keyPos = 1;
|
|
126
|
+
fs->keySpecs[0].keyLen = 2;
|
|
127
|
+
fs->keySpecs[0].keyFlag.all = 260;
|
|
128
|
+
fs->keySpecs[0].keyType = 14;
|
|
129
|
+
|
|
130
|
+
fs->keySpecs[1].keyPos = 3;
|
|
131
|
+
fs->keySpecs[1].keyLen = 2;
|
|
132
|
+
fs->keySpecs[1].keyFlag.all = 263;
|
|
133
|
+
fs->keySpecs[1].keyType = 14;
|
|
134
|
+
|
|
135
|
+
fs->keySpecs[2].keyPos = 5;
|
|
136
|
+
fs->keySpecs[2].keyLen = 20;
|
|
137
|
+
fs->keySpecs[2].keyFlag.all = 1283;
|
|
138
|
+
fs->keySpecs[2].keyType = 0;
|
|
139
|
+
|
|
140
|
+
fs->keySpecs[3].keyPos = 3;
|
|
141
|
+
fs->keySpecs[3].keyLen = 2;
|
|
142
|
+
fs->keySpecs[3].keyFlag.all = 278;
|
|
143
|
+
fs->keySpecs[3].keyType = 14;
|
|
144
|
+
|
|
145
|
+
fs->keySpecs[4].keyPos = 5;
|
|
146
|
+
fs->keySpecs[4].keyLen = 20;
|
|
147
|
+
fs->keySpecs[4].keyFlag.all = 1282;
|
|
148
|
+
fs->keySpecs[4].keyType = 0;
|
|
149
|
+
|
|
150
|
+
fs->keySpecs[5].keyPos = 3;
|
|
151
|
+
fs->keySpecs[5].keyLen = 2;
|
|
152
|
+
fs->keySpecs[5].keyFlag.all = 279;
|
|
153
|
+
fs->keySpecs[5].keyType = 14;
|
|
154
|
+
|
|
155
|
+
fs->keySpecs[6].keyPos = 26;
|
|
156
|
+
fs->keySpecs[6].keyLen = 2;
|
|
157
|
+
fs->keySpecs[6].keyFlag.all = 279;
|
|
158
|
+
fs->keySpecs[6].keyType = 14;
|
|
159
|
+
|
|
160
|
+
fs->keySpecs[7].keyPos = 30;
|
|
161
|
+
fs->keySpecs[7].keyLen = 1;
|
|
162
|
+
fs->keySpecs[7].keyFlag.all = 263;
|
|
163
|
+
fs->keySpecs[7].keyType = 14;
|
|
164
|
+
|
|
165
|
+
nsdb()->createTable(fs, 412, fullpath, 0);
|
|
166
|
+
free(fs);
|
|
167
|
+
m_stat = nsdb()->stat();
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
}// namespace client
|
|
171
|
+
}// namespace tdap
|
|
172
|
+
}// namespace protocol
|
|
173
|
+
}// namespace db
|
|
174
|
+
}// namespace bzs
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
#ifndef BZS_DB_PROTOCOL_TDAP_CLIENT_FIELDDDF_H
|
|
2
|
+
#define BZS_DB_PROTOCOL_TDAP_CLIENT_FIELDDDF_H
|
|
3
|
+
/* =================================================================
|
|
4
|
+
Copyright (C) 2000-2013 BizStation Corp All rights reserved.
|
|
5
|
+
|
|
6
|
+
This program is free software; you can redistribute it and/or
|
|
7
|
+
modify it under the terms of the GNU General Public License
|
|
8
|
+
as published by the Free Software Foundation; either version 2
|
|
9
|
+
of the License, or (at your option) any later version.
|
|
10
|
+
|
|
11
|
+
This program is distributed in the hope that it will be useful,
|
|
12
|
+
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
13
|
+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
14
|
+
GNU General Public License for more details.
|
|
15
|
+
|
|
16
|
+
You should have received a copy of the GNU General Public License
|
|
17
|
+
along with this program; if not, write to the Free Software
|
|
18
|
+
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
|
19
|
+
02111-1307, USA.
|
|
20
|
+
================================================================= */
|
|
21
|
+
#include "table.h"
|
|
22
|
+
|
|
23
|
+
namespace bzs
|
|
24
|
+
{
|
|
25
|
+
namespace db
|
|
26
|
+
{
|
|
27
|
+
namespace protocol
|
|
28
|
+
{
|
|
29
|
+
namespace tdap
|
|
30
|
+
{
|
|
31
|
+
namespace client
|
|
32
|
+
{
|
|
33
|
+
|
|
34
|
+
#pragma option -a1
|
|
35
|
+
pragma_pack1
|
|
36
|
+
|
|
37
|
+
struct SFIELDDDF
|
|
38
|
+
{
|
|
39
|
+
ushort_td fieldid;
|
|
40
|
+
ushort_td fileid;
|
|
41
|
+
char name[20];
|
|
42
|
+
uchar_td type;
|
|
43
|
+
ushort_td pos;
|
|
44
|
+
ushort_td len;
|
|
45
|
+
uchar_td dec;
|
|
46
|
+
short flag;
|
|
47
|
+
};
|
|
48
|
+
|
|
49
|
+
#pragma option -a
|
|
50
|
+
pragma_pop
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
|
|
54
|
+
class fieldDDF : public nstable
|
|
55
|
+
{
|
|
56
|
+
private:
|
|
57
|
+
_TCHAR m_DataDir[256];
|
|
58
|
+
SFIELDDDF datbuf;
|
|
59
|
+
|
|
60
|
+
void doOpen(const _TCHAR* Dir, char_td mode, const _TCHAR* OwnerName);
|
|
61
|
+
keylen_td writeKeyData();
|
|
62
|
+
void writeRecordData();
|
|
63
|
+
void onReadAfter();
|
|
64
|
+
|
|
65
|
+
protected:
|
|
66
|
+
~fieldDDF() {}
|
|
67
|
+
|
|
68
|
+
public:
|
|
69
|
+
ushort_td fieldid;
|
|
70
|
+
ushort_td fileid;
|
|
71
|
+
char name[21];
|
|
72
|
+
uchar_td type;
|
|
73
|
+
ushort_td pos;
|
|
74
|
+
ushort_td len;
|
|
75
|
+
uchar_td dec;
|
|
76
|
+
short flag;
|
|
77
|
+
|
|
78
|
+
char keybuf[128];
|
|
79
|
+
|
|
80
|
+
explicit fieldDDF(nsdatabase *pbe);
|
|
81
|
+
void createTable(const _TCHAR* fullpath);
|
|
82
|
+
using nstable::open;
|
|
83
|
+
|
|
84
|
+
};
|
|
85
|
+
|
|
86
|
+
}// namespace client
|
|
87
|
+
}// namespace tdap
|
|
88
|
+
}// namespace protocol
|
|
89
|
+
}// namespace db
|
|
90
|
+
}// namespace bzs
|
|
91
|
+
#endif//BZS_DB_PROTOCOL_TDAP_CLIENT_FIELDDDF_H
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
/* =================================================================
|
|
2
|
+
Copyright (C) 2000-2013 BizStation Corp All rights reserved.
|
|
3
|
+
|
|
4
|
+
This program is free software; you can redistribute it and/or
|
|
5
|
+
modify it under the terms of the GNU General Public License
|
|
6
|
+
as published by the Free Software Foundation; either version 2
|
|
7
|
+
of the License, or (at your option) any later version.
|
|
8
|
+
|
|
9
|
+
This program is distributed in the hope that it will be useful,
|
|
10
|
+
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
11
|
+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
12
|
+
GNU General Public License for more details.
|
|
13
|
+
|
|
14
|
+
You should have received a copy of the GNU General Public License
|
|
15
|
+
along with this program; if not, write to the Free Software
|
|
16
|
+
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
|
17
|
+
02111-1307, USA.
|
|
18
|
+
================================================================= */
|
|
19
|
+
#include <bzs/env/tstring.h>
|
|
20
|
+
#pragma hdrstop
|
|
21
|
+
|
|
22
|
+
#include "fileDDF.h"
|
|
23
|
+
#include "nsDatabase.h"
|
|
24
|
+
|
|
25
|
+
#pragma package(smart_init)
|
|
26
|
+
|
|
27
|
+
namespace bzs
|
|
28
|
+
{
|
|
29
|
+
namespace db
|
|
30
|
+
{
|
|
31
|
+
namespace protocol
|
|
32
|
+
{
|
|
33
|
+
namespace tdap
|
|
34
|
+
{
|
|
35
|
+
namespace client
|
|
36
|
+
{
|
|
37
|
+
|
|
38
|
+
fileDDF::fileDDF(nsdatabase *pbe) : nstable(pbe) {m_keybuflen = 128;
|
|
39
|
+
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
fileDDF::~fileDDF() {
|
|
43
|
+
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
void fileDDF::doOpen(const _TCHAR* Dir, char_td mode, const _TCHAR* OwnerName)
|
|
47
|
+
{
|
|
48
|
+
_TCHAR FullPath[256];
|
|
49
|
+
|
|
50
|
+
_tcscpy(m_DataDir, Dir);
|
|
51
|
+
_tcscpy(FullPath, Dir);
|
|
52
|
+
_tcscat(FullPath, PSEPARATOR);
|
|
53
|
+
_tcscat(FullPath, _T("FILE.DDF"));
|
|
54
|
+
nstable::doOpen(FullPath, mode, OwnerName);
|
|
55
|
+
|
|
56
|
+
m_pdata = &datbuf;
|
|
57
|
+
m_buflen = sizeof(SFILEDDF);
|
|
58
|
+
m_datalen = sizeof(SFILEDDF);
|
|
59
|
+
m_keybuf = &keybuf[0];
|
|
60
|
+
m_keybuflen = 128;
|
|
61
|
+
m_keynum = 0;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
keylen_td fileDDF::writeKeyData()
|
|
65
|
+
{
|
|
66
|
+
keylen_td len = 2;
|
|
67
|
+
switch (m_keynum)
|
|
68
|
+
{
|
|
69
|
+
case 0: memcpy(&keybuf[0], &id, len);
|
|
70
|
+
break;
|
|
71
|
+
case 1:
|
|
72
|
+
len = 20;
|
|
73
|
+
memcpy(&keybuf[0], &tablename, len);
|
|
74
|
+
|
|
75
|
+
break;
|
|
76
|
+
}
|
|
77
|
+
return len;
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
void fileDDF::writeRecordData()
|
|
81
|
+
{
|
|
82
|
+
datbuf.id = id;
|
|
83
|
+
strncpy(datbuf.tablename, tablename, 20);
|
|
84
|
+
for (size_t i = strlen(datbuf.tablename); i < 20; i++)
|
|
85
|
+
datbuf.tablename[i] = ' ';
|
|
86
|
+
|
|
87
|
+
strncpy(datbuf.filename, filename, 64);
|
|
88
|
+
for (size_t i = strlen(datbuf.filename); i < 64; i++)
|
|
89
|
+
datbuf.filename[i] = ' ';
|
|
90
|
+
#ifdef DDF_PSQLV_MODE
|
|
91
|
+
flag = 0;
|
|
92
|
+
|
|
93
|
+
#endif
|
|
94
|
+
|
|
95
|
+
datbuf.flag = flag;
|
|
96
|
+
memset(datbuf.filler, 0, 9);
|
|
97
|
+
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
void fileDDF::onReadAfter()
|
|
101
|
+
{
|
|
102
|
+
id = datbuf.id;
|
|
103
|
+
strncpy(tablename, datbuf.tablename, 20);
|
|
104
|
+
tablename[20] = 0x00;
|
|
105
|
+
strncpy(filename, datbuf.filename, 64);
|
|
106
|
+
filename[64] = 0x00;
|
|
107
|
+
flag = datbuf.flag;
|
|
108
|
+
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
void fileDDF::createTable(const _TCHAR* fullpath)
|
|
112
|
+
{
|
|
113
|
+
fileSpec *fs;
|
|
114
|
+
fs = (fileSpec*)malloc(512);
|
|
115
|
+
memset(fs, 512, 0x00);
|
|
116
|
+
fs->recLen = 97;
|
|
117
|
+
fs->pageSize = 4096;
|
|
118
|
+
fs->indexCount = 2;
|
|
119
|
+
fs->fileFlag.all = 0;
|
|
120
|
+
fs->preAlloc = 0;
|
|
121
|
+
fs->keySpecs[0].keyPos = 1;
|
|
122
|
+
fs->keySpecs[0].keyLen = 2;
|
|
123
|
+
fs->keySpecs[0].keyFlag.all = 260;
|
|
124
|
+
fs->keySpecs[0].keyType = 14;
|
|
125
|
+
|
|
126
|
+
fs->keySpecs[1].keyPos = 3;
|
|
127
|
+
fs->keySpecs[1].keyLen = 20;
|
|
128
|
+
fs->keySpecs[1].keyFlag.all = 1282;
|
|
129
|
+
fs->keySpecs[1].keyType = 0;
|
|
130
|
+
|
|
131
|
+
nsdb()->createTable(fs, 412, fullpath, 0);
|
|
132
|
+
free(fs);
|
|
133
|
+
m_stat = nsdb()->stat();
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
}// namespace client
|
|
137
|
+
}// namespace tdap
|
|
138
|
+
}// namespace protocol
|
|
139
|
+
}// namespace db
|
|
140
|
+
}// namespace bzs
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
#ifndef BZS_DB_PROTOCOL_TDAP_CLIENT_FILEDDF_H
|
|
2
|
+
#define BZS_DB_PROTOCOL_TDAP_CLIENT_FILEDDF_H
|
|
3
|
+
/* =================================================================
|
|
4
|
+
Copyright (C) 2000-2013 BizStation Corp All rights reserved.
|
|
5
|
+
|
|
6
|
+
This program is free software; you can redistribute it and/or
|
|
7
|
+
modify it under the terms of the GNU General Public License
|
|
8
|
+
as published by the Free Software Foundation; either version 2
|
|
9
|
+
of the License, or (at your option) any later version.
|
|
10
|
+
|
|
11
|
+
This program is distributed in the hope that it will be useful,
|
|
12
|
+
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
13
|
+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
14
|
+
GNU General Public License for more details.
|
|
15
|
+
|
|
16
|
+
You should have received a copy of the GNU General Public License
|
|
17
|
+
along with this program; if not, write to the Free Software
|
|
18
|
+
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
|
19
|
+
02111-1307, USA.
|
|
20
|
+
================================================================= */
|
|
21
|
+
#include "table.h"
|
|
22
|
+
|
|
23
|
+
namespace bzs
|
|
24
|
+
{
|
|
25
|
+
namespace db
|
|
26
|
+
{
|
|
27
|
+
namespace protocol
|
|
28
|
+
{
|
|
29
|
+
namespace tdap
|
|
30
|
+
{
|
|
31
|
+
namespace client
|
|
32
|
+
{
|
|
33
|
+
|
|
34
|
+
#pragma option -a1
|
|
35
|
+
pragma_pack1
|
|
36
|
+
|
|
37
|
+
struct SFILEDDF
|
|
38
|
+
{
|
|
39
|
+
ushort_td id;
|
|
40
|
+
char tablename[20];
|
|
41
|
+
char filename[64];
|
|
42
|
+
ushort_td flag;
|
|
43
|
+
char filler[9];
|
|
44
|
+
};
|
|
45
|
+
|
|
46
|
+
#pragma option -a
|
|
47
|
+
pragma_pop
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
class fileDDF : public nstable
|
|
52
|
+
{
|
|
53
|
+
private:
|
|
54
|
+
_TCHAR m_DataDir[256];
|
|
55
|
+
SFILEDDF datbuf;
|
|
56
|
+
void doOpen(const _TCHAR* Dir, char_td mode, const _TCHAR* OwnerName);
|
|
57
|
+
keylen_td writeKeyData();
|
|
58
|
+
void writeRecordData();
|
|
59
|
+
void onReadAfter();
|
|
60
|
+
|
|
61
|
+
protected:
|
|
62
|
+
~fileDDF();
|
|
63
|
+
|
|
64
|
+
public:
|
|
65
|
+
ushort_td id;
|
|
66
|
+
char tablename[21];
|
|
67
|
+
char filename[65];
|
|
68
|
+
ushort_td flag;
|
|
69
|
+
char filler[9];
|
|
70
|
+
|
|
71
|
+
|
|
72
|
+
char keybuf[128];
|
|
73
|
+
|
|
74
|
+
explicit fileDDF(nsdatabase *pbe);
|
|
75
|
+
void createTable(const _TCHAR* fullpath);
|
|
76
|
+
using nstable::open;
|
|
77
|
+
|
|
78
|
+
|
|
79
|
+
};
|
|
80
|
+
|
|
81
|
+
}// namespace client
|
|
82
|
+
}// namespace tdap
|
|
83
|
+
}// namespace protocol
|
|
84
|
+
}// namespace db
|
|
85
|
+
}// namespace bzs
|
|
86
|
+
#endif//BZS_DB_PROTOCOL_TDAP_CLIENT_FILEDDF_H
|