|
Беда с созданием таблицы
|
|||
---|---|---|---|
#18+
Может кто-нибудь сталкивался? Не проходит почему-то запрос на создание таблицы. БД - Аксесс Запрос типа Select,Into,From - "SELECT [ansp_an_curr(связанная)].key_an, [ansp_an_curr(связанная)].id_curr, [ansp_an_curr(связанная)].rate INTO ansp_an_curr FROM [ansp_an_curr(связанная)];" Драйвер - Jet OLEDB При этом идут любые другие запросы: Выборка, добавление, изменение, удаление Delete. И даже идёт удаление таблицы DROP TABLE. Примечание: перед созданием таблицы таблицы с таким именем нет, поэтому этот запрос выполняется успешно в самом Аксессе. Да и в VB6 он тоже проходит. Правда в VB6 я использую другой драйвер (DSN) ... |
|||
:
Нравится:
Не нравится:
|
|||
07.06.2004, 18:57 |
|
Беда с созданием таблицы
|
|||
---|---|---|---|
#18+
У меня таже проблема Select into никак не проходит ... |
|||
:
Нравится:
Не нравится:
|
|||
07.06.2004, 19:31 |
|
Беда с созданием таблицы
|
|||
---|---|---|---|
#18+
Покажи код ... |
|||
:
Нравится:
Не нравится:
|
|||
07.06.2004, 19:45 |
|
Беда с созданием таблицы
|
|||
---|---|---|---|
#18+
2 Rivkin Dmitry Показываю, хотя это ни о чём тебе не скажет. Наверно в очередной раз глючит Джетовский драйвер (апгрейды я делал). Строка подключения: zapConnectString = "Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Registry Path=;Jet OLEDB:Database Locking Mode=1;Jet OLEDB:Database Password=""0101"";Data Source=" & Chr(34) & dataPath & Chr(34) & ";Mode=Share Deny None;Jet OLEDB:Engine Type=5;Provider=" & Chr(34) & "Microsoft.Jet.OLEDB.4.0" & Chr(34) & ";Jet OLEDB:System database=;Jet OLEDB:SFP=False;persist security info=False;Extended Properties=;Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:Encrypt Database=False;Jet OLEDB:Create System Database=False;Jet OLEDB:Don't Copy Locale on Compact=False;User ID=Admin;Jet OLEDB:Global Bulk Transactions=1" Строка взятия запроса: zapCommand.ExecuteNonQuery() Я проверял и два других .Execute ... |
|||
:
Нравится:
Не нравится:
|
|||
08.06.2004, 09:59 |
|
Беда с созданием таблицы
|
|||
---|---|---|---|
#18+
А в каком акцесе? В а97 Pass-Trough Query работает без проблем, В ADODb - сам бог велел! поэтоиу, я имел в виду код на Execute ... |
|||
:
Нравится:
Не нравится:
|
|||
08.06.2004, 10:36 |
|
Беда с созданием таблицы
|
|||
---|---|---|---|
#18+
Rivkin DmitryА в каком акцесе? В а97 Pass-Trough Query работает без проблем, В ADODb - сам бог велел! поэтоиу, я имел в виду код на Execute Аксесс XP (2002). Что такое "код на Execute"? Там выполняется код SQL. Сам код SQL я привёл - выше смотри - Select... Кстати глянь на строку подключения может я там какие-то параметры не так задал? Может Database Locking Mode=1 неправильно или Mode=Share Deny None неправильно? Вообще я грешил на курсор, но курсора в ADO.NET нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.06.2004, 11:33 |
|
Беда с созданием таблицы
|
|||
---|---|---|---|
#18+
авторМожет Database Locking Mode=1 неправильно или Mode=Share Deny None неправильно? Вроде не должно мешать раз другие запросы исполняются (под тем же connection?) Я хотел взглянуть как ты зпускаешь Execute на connection А что вообще происходит? Получаешь сообщение об ошибке? Или он проскакивает без реакции? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.06.2004, 11:49 |
|
Беда с созданием таблицы
|
|||
---|---|---|---|
#18+
попробуй запустить как Exec ('SELECT [ansp_an_curr(связанная)].key_an, [ansp_an_curr(связанная)].id_curr, [ansp_an_curr(связанная)].rate INTO ansp_an_curr FROM [ansp_an_curr(связанная)]') ... |
|||
:
Нравится:
Не нравится:
|
|||
08.06.2004, 12:31 |
|
Беда с созданием таблицы
|
|||
---|---|---|---|
#18+
Rivkin Dmitry А что вообще происходит? Получаешь сообщение об ошибке? Или он проскакивает без реакции? Вроде разобрался. Запрос проходит в принципе. Загвоздка с тем, что связанная таблица [ansp_an_curr(связанная)] связана через ODBC на Фокс Про. База Фокс Про как известно штука фиговая. Эта её фиговость проявляется в том, что запросы с её участием через ODBC проходят только в том случае, если они просты и быстры типа простого Select на выборку или типа добавить одну запись. Чуть стоит усложнить запрос и он тут же вылетает по таймауту. Как увеличить таймаут я не знаю. Придётся на vb6 писать. Там всё проходит, правда не через Jet, а через DSN. Ох уж этот Фокс Про, кто только тебя придумал! ... |
|||
:
Нравится:
Не нравится:
|
|||
08.06.2004, 12:41 |
|
Беда с созданием таблицы
|
|||
---|---|---|---|
#18+
CommandTimeout = 0 не пробовал? Он устанавливает Timeout в бесконечное ожидание. Вопрос только когда он из него выйдет... ... |
|||
:
Нравится:
Не нравится:
|
|||
08.06.2004, 13:03 |
|
Беда с созданием таблицы
|
|||
---|---|---|---|
#18+
[quot Rivkin Dmitry] Я хотел взглянуть как ты зпускаешь Execute на connection [quot] А чего тут глядеть? Вот, гляди: zapCommand.Connection = zapConnection zapCommand.CommandText = zapSsql zapCommand.ExecuteNonQuery() Понимаешь, я проверил на несвязанных таблицах - там всё идет. Поэтому это из-за Фокса, будь он не ладен. Как увеличить таймаут не знаю. Пожалуйста, глянь следующую тему. Там я спрашиваю с помощью какой строки ещё можно подключиться к Аксессу. Если сделать другую строку подключения, то можно запустить-таки подобные запросы. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.06.2004, 13:06 |
|
Беда с созданием таблицы
|
|||
---|---|---|---|
#18+
Rivkin DmitryCommandTimeout = 0 не пробовал? Он устанавливает Timeout в бесконечное ожидание. Вопрос только когда он из него выйдет... пробовал добавить такую строку: zapCommand.CommandTimeout = 0 Не помогает, выдаёт: ODBC - ошибка вызова. Или ты имел ввиду добавить CommandTimeout в строку подключения? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.06.2004, 13:19 |
|
Беда с созданием таблицы
|
|||
---|---|---|---|
#18+
К сожалению, тут у меня нет опыта. Попробуй повторить топик опять на форуме Акцеса, есть там зубры, прошедшие не тоьлько огонь, воду и медные трубы Фокса... ... |
|||
:
Нравится:
Не нравится:
|
|||
08.06.2004, 15:36 |
|
Беда с созданием таблицы
|
|||
---|---|---|---|
#18+
Есть отдельный форум по Фоксу, можно и там узнать. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.06.2004, 16:20 |
|
Беда с созданием таблицы
|
|||
---|---|---|---|
#18+
Подключил форум по Аксессу и форум по Фоксу. Чтож, подождём. Мне кажется всё-таки надо что-то подделать в коннекшнстринге. Как-то таймаут там прописать в явном виде или что-то такое. У меня в VB6 запрос проходит со строкой подключения: exeConnectString = "DSN=MS Access Database;DBQ=" & dataPath & ";DefaultDir=" & dataPathDir & ";DriverId=25;FIL=MS Access;MaxBufferSize=2048;PageTimeout=5;PWD=" & dataPassword & ";UID=" & dataUser & ";" А в .NET такая строка подключения не идёт, я уже и библиотеку ADO добавил... Можете соседний топик посмотреть, где я просил сообщить строку подключения альтернативную "Jet OLEDB:..." Проще всего конечно плюнуть на .NET и написать на vb6, но жаль как-то .NET бросать. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.06.2004, 18:34 |
|
Беда с созданием таблицы
|
|||
---|---|---|---|
#18+
Проблема может быть и при правильном синтаксесе с драйвером VFP 8.0 OLE DB. И так по порядку. 1.0 Скачайте последнюю версию OLE DB Provider for VFP 8.0 с сайта большого Брата (идущий в комплекте с VFP 8.0 - некорректно работает). 2.0 Мне непонятна логика Вашего запроса - Вы создаете какой-то временный курсор - зачем? Проверьте - есть ли у Вашего Web Server право на создание новых объектов. 3.0 Лично я делаю такие вещи в хранимых процедурах базы данных VFP (работает вполне сносно, но если у Вас свободные таблицы, то вариант отпадает).\ 4.0 А что в ansp_an_curr - нет ли там значаний NULL? Если есть, то надо до начала операции разрешить принимать его, например так: Код: plaintext 1. 2. 3.
5.0 Зря Вы ругаетесь на VFP - я уже сделала не один коммерческий WEB SITE - и ничего, работает вполне сносно в сочетании ASP.NET Good Luck! ... |
|||
:
Нравится:
Не нравится:
|
|||
08.06.2004, 23:39 |
|
Беда с созданием таблицы
|
|||
---|---|---|---|
#18+
Ну я даром время не терял, а проводил своё расследование. Выяснилось вот что: все запросы с участием связанных через ODBC с базой Fox Pro таблиц идут у меня только в Windows. В Web тот же код не идёт. Может с правами какие-то проблемы. Поэтому я с Вашего разрешения закрываю эту тему и выдаю её в новом вопросе. Вопрос будет не в форуме ADO.NET, а в форуме ASP.NET, если хотите - переходите туда. С уважением, Макс Про ... |
|||
:
Нравится:
Не нравится:
|
|||
09.06.2004, 11:59 |
|
|
start [/forum/topic.php?fid=17&fpage=128&tid=1354106]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
79ms |
get topic data: |
14ms |
get forum data: |
3ms |
get page messages: |
52ms |
get tp. blocked users: |
1ms |
others: | 322ms |
total: | 504ms |
0 / 0 |