powered by simpleCommunicator - 2.0.35     © 2025 Programmizd 02
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Как создать новый DBC контейнер через VFP OleDB provider
6 сообщений из 6, страница 1 из 1
Как создать новый DBC контейнер через VFP OleDB provider
    #32119707
Фотография maloi_alex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как создать новый DBC контейнер через VFP OleDB provider
...
Рейтинг: 0 / 0
Как создать новый DBC контейнер через VFP OleDB provider
    #32119768
Фотография NNN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Напрямую там не пройдет, но обходные пути есть. Завтра на работе гляну.

ЗЫ в условии сказано, что какой-нить dbc под рукой присутствует?
...
Рейтинг: 0 / 0
Как создать новый DBC контейнер через VFP OleDB provider
    #32119928
Фотография NNN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну блин там и ограничений в этом oledb-провайдере

Пример для фокса:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
CREATE TABLE test.dbc (OBJECTID I,PARENTID I, OBJECTTYPE C( 10 ), OBJECTNAME C( 128 ), PROPERTY M NOCPTRANS, CODE M NOCPTRANS, RIINFO C( 6 ), USER M)
INDEX on STR(parentid)+objecttype+LOWER(objectname) TAG OBJECTNAME OF test.dcx FOR .NOT.DELETED()
INDEX on STR(parentid)+objecttype TAG OBJECTTYPE  OF test.dcx FOR .NOT.DELETED() 
INSERT INTO test.dbc (OBJECTID, PARENTID, OBJECTTYPE, OBJECTNAME, PROPERTY) values( 1 , 1 ,'Database','Database',CHR( 11 )+CHR( 0 )+CHR( 0 )+CHR( 0 )+CHR( 1 )+CHR( 0 )+CHR( 24 )+CHR( 0 )+CHR( 0 )+CHR( 0 )+CHR( 10 ))
INSERT INTO test.dbc (OBJECTID, PARENTID, OBJECTTYPE, OBJECTNAME) values( 2 , 1 ,'Database','TransactionLog')
INSERT INTO test.dbc (OBJECTID, PARENTID, OBJECTTYPE, OBJECTNAME) values( 3 , 1 ,'Database','StoredProceduresSource')
INSERT INTO test.dbc (OBJECTID, PARENTID, OBJECTTYPE, OBJECTNAME) values( 4 , 1 ,'Database','StoredProceduresObject')
INSERT INTO test.dbc (OBJECTID, PARENTID, OBJECTTYPE, OBJECTNAME) values( 5 , 1 ,'Database','StoredProceduresDependencies')
USE
a=FILETOSTR('test.dbc')
?STRTOFILE(STUFF(a, 29 , 1 ,CHR( 7 )),'test.dbc')
OPEN DATABASE test


С провайдером сложнее - сначала надо скопировать средствами приложения существующие dbc, dct и dcx, затем что-то вроде:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
USE test.dbc EXCLUSIVE
ZAP
INSERT INTO test.dbc (OBJECTID, PARENTID, OBJECTTYPE, OBJECTNAME, PROPERTY) values( 1 , 1 ,'Database','Database',CHR( 11 )+CHR( 0 )+CHR( 0 )+CHR( 0 )+CHR( 1 )+CHR( 0 )+CHR( 24 )+CHR( 0 )+CHR( 0 )+CHR( 0 )+CHR( 10 ))
INSERT INTO test.dbc (OBJECTID, PARENTID, OBJECTTYPE, OBJECTNAME) values( 2 , 1 ,'Database','TransactionLog')
INSERT INTO test.dbc (OBJECTID, PARENTID, OBJECTTYPE, OBJECTNAME) values( 3 , 1 ,'Database','StoredProceduresSource')
INSERT INTO test.dbc (OBJECTID, PARENTID, OBJECTTYPE, OBJECTNAME) values( 4 , 1 ,'Database','StoredProceduresObject')
INSERT INTO test.dbc (OBJECTID, PARENTID, OBJECTTYPE, OBJECTNAME) values( 5 , 1 ,'Database','StoredProceduresDependencies')
USE
OPEN DATABASE test
...
Рейтинг: 0 / 0
Как создать новый DBC контейнер через VFP OleDB provider
    #32120515
Фотография maloi_alex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо. Короче будем создавть в ручную.
...
Рейтинг: 0 / 0
Как создать новый DBC контейнер через VFP OleDB provider
    #32120523
Фотография maloi_alex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А если я хочу создать SP или триггер в контейнере, тоже придется использовать INSERT INTO ?
...
Рейтинг: 0 / 0
Как создать новый DBC контейнер через VFP OleDB provider
    #32120606
Фотография NNN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
С процелурами должно быть проще, например, APPEND PROCEDURES поддерживается.Триггеров в списке Supported Visual FoxPro Commands and Functions вроде как нет (альтернативный список - Unsupported Visual FoxPro Commands and Functions ).

ЗЫ кликать по ссылка необязательно, все это есть в хелпе, просто у меня под рукой хелпа нет.
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Как создать новый DBC контейнер через VFP OleDB provider
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]