|
|
|
Sybase ASA 9. Работа с DBF
|
|||
|---|---|---|---|
|
#18+
Обычный DBF файл. На сервере сделал алиас ODBC через Microsoft dbf (v.4.00.6305). Делаю в Sybase Central Remote Server на данный алиас. Делаю proxy table. Показывает структуру, добавляю. Создается прокси таблица. Открываю и выдает следующее. Подскажите как правильно создать proxy таблицу с DBF, чтобы с ней можно было работать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2010, 18:02 |
|
||
|
Sybase ASA 9. Работа с DBF
|
|||
|---|---|---|---|
|
#18+
Никто не подскажет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2010, 15:25 |
|
||
|
Sybase ASA 9. Работа с DBF
|
|||
|---|---|---|---|
|
#18+
Никто. Работа с dbf одна из самых элементарных операций, причем уже разжеванная в документации. Где там можно ошибиться я совершенно не представляю. Показывай полный скрипт создания удаленного сервера и прокси таблиц. Убедись что между созданием прокси-таблицы и доступом к ней ни таблицы, ни база не перемещались и сеть не перемонтировалась. Убедись что сервер всегда работает из под одного и того-же логина ОС. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2010, 17:50 |
|
||
|
Sybase ASA 9. Работа с DBF
|
|||
|---|---|---|---|
|
#18+
1. На сервере в Data Sources (ODBC) на вкладке System DSN создаю новый Data Source с именем ostatkibuh. 2. В качестве драйвера выбираю Microsoft dBase Driver (*.dbf) 3. Нажимаю Select Directory выбираю C:\CVSBuh и ставлю Version: dBase III. В этой папке лежит файл C:\CVSBuh\ostatki.dbf 4. Открываю Sybase Central. 5. Соединяюсь к серверу. иду в Remote Servers. И создаю следующее: В коде это выглядит так: Код: plaintext Затем создаю Proxy Table: Код: plaintext 1. 2. 3. 4. 5. Cтруктуру показывает (поля и тип полей), но данные не отображаются. Ошибка, указанная выше. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.01.2010, 10:00 |
|
||
|
Sybase ASA 9. Работа с DBF
|
|||
|---|---|---|---|
|
#18+
Я в свое время пытался использовать dbf как прокси таблицу, так вот, все чудно работало и работает под NT4, как только ставишь что-то выше (w2k,XP,w2k3 ...) , то конец, в результате я отказался от этой затеи, т.е. использовать как прокси, сейчас просто вливаю данные в ASA, там их обрабатываю и выливаю обратно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.01.2010, 10:27 |
|
||
|
Sybase ASA 9. Работа с DBF
|
|||
|---|---|---|---|
|
#18+
Сервер на w2k. Подскажи а как ты делаешь "вливание" данных в ASA из DBF? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.01.2010, 15:03 |
|
||
|
Sybase ASA 9. Работа с DBF
|
|||
|---|---|---|---|
|
#18+
HamberСервер на w2k. Подскажи а как ты делаешь "вливание" данных в ASA из DBF? через dbisql Выгрузка выглядит так Create PROCEDURE "DBA"."procOutputToDBF"() begin declare s1 text; declare s2 varchar(255); declare s3 varchar(255); declare NFile varchar(64); declare idDate_ integer; set idDate_=funcretIdDate(funcSearchDateMin('2006-1-1')); set s2=string('C:\\Database\\Valuta\\valuta.dbf'); set s1=string('-- Выгрузка данных --',"char"(10)); set NFile=string('C:\\ASADB\\ValDBFOut.sql'); call xp_write_file(NFile,s1); /* считывеем файл скрипта */ set s1=xp_read_file(NFile); set s1=string(s1,'SELECT funcRetDateID(idDate) as date_Curs,1 as N,funcRetValutCodeD(idValut) as Code_Valut, Col,funcRetValutName(idValut) as Name_Valut,Curs FROM tblCurs'); set s1=string(s1,' where ( funcRetValutCodeD(idValut) in (840,978) and idDate>=',idDate_,') order by iddate,idvalut;'); set s1=string(s1,"char"(10)); call xp_write_file(NFile,s1); set s1=xp_read_file(NFile); set s1=string(s1,'Output to ',s2,' format foxpro;',"char"(10)); call xp_write_file(NFile,s1); set s1=string('dbisqlc -q -c "eng=',@@servername,';DBn=',current database,';commlinks=tcpip;charset=cp1251;integrated=yes" '); set s1=string(s1,NFile); call xp_cmdshell(s1) end Особое отличие в строке подключения к базе charset для выгрузки в необходимой кодировке Загрузка CREATE PROCEDURE "DBA"."procFrom_DBF"() /* parameters,... */ begin declare s1 text; declare mError integer; declare NFile varchar(255); declare Path2SVh varchar(255); set Path2SVh='c:\\BASE\\'; /* убиваем данные во временных таблицах */ if exists(select * from systable where Table_name = 'vl1') then drop table DBA.vl1 end if; /* формируем файл скрипта для dbisqlc */ set s1=string('-- загрузка данных --',"char"(10)); set NFile=string('C:\\base\\SVH_DBF.sql'); /* зАПИСЫВАЕМ файл скрипта */ set s1=string(s1,'input into vl1 from ',Path2SVh,'ARCHIEVE\\VL.dbf format foxpro;',"char"(10)); set s1=string(s1,'exit;',"char"(10)); call xp_write_file(NFile,s1); /* закачка файлов dbf во времнные таблицы*/ set s1='start /wait dbisqlc -q -c "charset=cp866;eng=vtt;dbn=vtt;integrated=yes;commlinks=tcpip;" '; set s1=string(s1,NFile); call xp_cmdshell(s1,'no_output'); commit work end Здесть dbf в 866 кодировке, а база в 1251 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.01.2010, 16:35 |
|
||
|
Sybase ASA 9. Работа с DBF
|
|||
|---|---|---|---|
|
#18+
Hamber 3. Нажимаю Select Directory выбираю C:\CVSBuh .... Код: plaintext 1. 2. 3. 4. 5. Либо убери стандартную директорию из ODBC DSN, либо не указывай ее при создании таблицы. Удаивать обратный слеш в данном случае тоже не нужно. HamberCтруктуру показывает (поля и тип полей), но данные не отображаются. Поля показываются потому что ты их вручную задал. Если каталог с dbf файлами задан внутри DSN, то для создания прокси-таблицы достаточно: Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.01.2010, 18:00 |
|
||
|
|

start [/forum/topic.php?fid=55&fpage=31&tid=2010764]: |
0ms |
get settings: |
10ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
52ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
49ms |
get tp. blocked users: |
2ms |
| others: | 13ms |
| total: | 161ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...