|
MS SQL 7.0 и Delphi не совместить
|
|||
---|---|---|---|
#18+
Помогите пожалуста, не могу уже сил больше нет!!! Значит проблема такая, я имею файл DBF и мне надо его кинуть на MS SQL, записей в этом файле 99000, при выполнение запроса добавления, который в цикле повторяется 99000 раз, выскакивает ошибка SQL general error, причем каждый раз на разных записях. И еще один вопрос попутно, можно ли запускаемый файл хранить на сервере, чтобы клиенты запускали программу с Сервера, тоже очень надо. Заранее благодарен! Рафик ... |
|||
:
Нравится:
Не нравится:
|
|||
26.02.2001, 16:14 |
|
MS SQL 7.0 и Delphi не совместить
|
|||
---|---|---|---|
#18+
Я бы посоветовал использовать Import Data в DTS, если конечно это одноразовый заброс данных. Есть еще один, вопрос: насколько я знаю (опыт общения с dbf файлами давний) один файл - одна таблица. Это что, вся база в одной таблице? Про программу непонятно что имеется в виду. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.02.2001, 16:51 |
|
MS SQL 7.0 и Delphi не совместить
|
|||
---|---|---|---|
#18+
А вы часом не ODBC connection используете ? У меня такие же проблемы были с SQL2000+VisualFoxpro 6.0+ODBC. У меня создалось такое впечатление, что все вылет программы зависел от заполнения какого-то буфера на сервере. После этого наступал просто жуткий таймаут сервера и все запросы к нему возвращали ошибку. Пробовал бороться с этим так, что через задержку в самом цикле добавления (скажем через 1000 записей - 5 секунд, но при количестве записей > 500000 и это переставло помогать). Насколько я понимаю, дело в принципе работы ODBC, хотя и руководство по SQL2000 рекомендует для больших объемомв данных использовать Bulk Insert. Поэтому в конце концов бросил это дело и стал пользоваться DTS package-ми самого сервера, что вам советует и Genady ... |
|||
:
Нравится:
Не нравится:
|
|||
26.02.2001, 17:11 |
|
MS SQL 7.0 и Delphi не совместить
|
|||
---|---|---|---|
#18+
Нет у меня отдельных файлов, у меня все в разных, а на сервер я кидаю в один общий, задержка тоже не помогает, как мне перенестроить ODBC ... |
|||
:
Нравится:
Не нравится:
|
|||
26.02.2001, 17:47 |
|
MS SQL 7.0 и Delphi не совместить
|
|||
---|---|---|---|
#18+
Вариантов 2, которые советовали и мне в свое время 1. Отказаться от ODBC и использовать скажем ADO - этим советом я не воспользовался, т.к. это связано с изменением кода, что всегда неудобно, когда он уже создан. 2. Использовать DTS Package сервера - все задачи на ежедневный импорт/экспорт у меня загнаны в Package-и, запускаются по расписанию и о результатах сообщают через e-mail - очень удобно ... |
|||
:
Нравится:
Не нравится:
|
|||
26.02.2001, 18:02 |
|
MS SQL 7.0 и Delphi не совместить
|
|||
---|---|---|---|
#18+
Я писал уже в конференцию о попытке переноса DBF-файла с ~3,500,000 записей. Проблема была решена после выделения достаточного места под LOG (~5ГБ) и использования OPENROWSET: 'MSDASQL','DRIVER=Microsoft dBase VFP Driver (*.dbf)'. И уточните, пожалуйста, что значит хранить исполняемый файл на сервере -> в виде BLOB? ... |
|||
:
Нравится:
Не нравится:
|
|||
26.02.2001, 20:11 |
|
MS SQL 7.0 и Delphi не совместить
|
|||
---|---|---|---|
#18+
В BDE есть удобное средство для переноса больших объемов данных если используешь INSERT: надо в алеасе для dbf (драйвер STANDART) использовать запрос вида: INSERT INTO "file.dbf" (<fields list> SELECT <fields list> FROM ":<alias MSSQL>:<table MSSQL>" Работает значительно быстрее, чем запись по одной, но требует соответствующего timeout. Это работает только в алиасе STANDART! А вообще можно написать хранимую процедуру и использовать приблезительно такойже запрос с использованием Linked Server для dbf файлов. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.02.2001, 08:30 |
|
MS SQL 7.0 и Delphi не совместить
|
|||
---|---|---|---|
#18+
А про хранение программы на сервере, я был в командировке в Великом Новгороде и у них было организовано так, что исполняемые файлы хранятся на сервере, и клиенты запускают этот исполняемый файл с сервера, очень удобнои им и программистам, при модификации программы кинул на сервер и клиенты уже пользуются новой модификацией. Помогите!!! ... |
|||
:
Нравится:
Не нравится:
|
|||
27.02.2001, 09:46 |
|
MS SQL 7.0 и Delphi не совместить
|
|||
---|---|---|---|
#18+
Ничего сложного в том чтобы запускать программы с сервера нет. Просто надо дать доступ к соответствующему ресурсу и все, не сложнее чем переписать файл с сервера. Но при этом возникнет проблемма обновления файла - пока хоть у кого-либо он запущен, его нельзя переписать, если только явно не отрубить коннекшен(файловый) от сервера, но тогда может зависнуть приложение у соответствующего юзера. Если обновления происходят не посреди бела дня, так вполне можно делать. Но вот так чтобы "кинул на сервер и клиенты уже пользуются" - не получиться. Получиться: "ночью кинул, утром пользуются" ... |
|||
:
Нравится:
Не нравится:
|
|||
27.02.2001, 10:17 |
|
MS SQL 7.0 и Delphi не совместить
|
|||
---|---|---|---|
#18+
Извините пожалуста еще за один вопрос, какому ресурсу нужно сделать доступ и если Вас не затруднит поподробнее пожалуста!!! Заранее благодарен Рафик! ... |
|||
:
Нравится:
Не нравится:
|
|||
28.02.2001, 10:08 |
|
MS SQL 7.0 и Delphi не совместить
|
|||
---|---|---|---|
#18+
расшарить директорий, где находиться нужный файл неужели вы никогда не переписывали файлы по сети? sergsuper@mail.ru ... |
|||
:
Нравится:
Не нравится:
|
|||
28.02.2001, 11:08 |
|
MS SQL 7.0 и Delphi не совместить
|
|||
---|---|---|---|
#18+
Так если просто сделать доступ к директории, то от этого лучше не будет, ведь люди просто будут запускать файл по сети, а мне надо чтобы сервер выполнял программу!!! ... |
|||
:
Нравится:
Не нравится:
|
|||
02.03.2001, 10:09 |
|
MS SQL 7.0 и Delphi не совместить
|
|||
---|---|---|---|
#18+
Уважаемый Рафик, по-моему вы путаете клиентское приложение и хранимые процедуры сервера. Доступ к первому будет(должен) определяться правами пользователя в сети, а к последним - правами пользователя SQL сервера (согласитесь - есть разница). У нас, например, к клиентскому .exe-файлу(на VFP 6.0) для получения отчетов имеют доступ Everyone, а к хранимым процедурам, которые этот файл вызывает - только по определенным им на SQL сервере правам. Т.е. все могут видеть список отчетов и могут даже попробовать их запустить, но вот результат эолй попытке будет зависить от прав для конкретного пользователя на конкретную процедуру. PS.Конфигурация - Win2000 Adv.server, SQL2000 with Windows authentication, VFP 6.0, ODBC ... |
|||
:
Нравится:
Не нравится:
|
|||
02.03.2001, 10:39 |
|
|
start [/forum/moderation_log.php?user_name=%D0%9A%D0%B8%D1%80%D0%B8%D0%BB%D0%BB]: |
0ms |
get settings: |
9ms |
get forum list: |
11ms |
get settings: |
11ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
50ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
50ms |
get tp. blocked users: |
1ms |
others: | 5229ms |
total: | 5395ms |
0 / 0 |