Как зайти в Даркнет?!
25th January, 01:11
174
0
Как в tkinter из поля ввода Entry получить значение в одну переменную и обновить строку кнопкой, затем получить ещё одно введённое значение и затем сложить их. Ниже пример кода
21st July, 19:00
1525
0
Программа, которая создает фейковые сервера в поиске игровых серверов CS 1.6 Steam
21st March, 17:43
1149
0
Очень долго работает Update запрос Oracle
27th January, 09:58
1057
0
не могу запустить сервер на tomcat HTTP Status 404 – Not Found
21st January, 18:02
1031
0
Где можно найти фрилансера для выполнения поступающих задач, на постоянной основе?
2nd December, 09:48
1072
0
Разработка мобильной кроссплатформенной военной игры
16th July, 17:57
1869
0
период по дням
25th October, 10:44
4087
0
Пишу скрипты для BAS только на запросах
16th September, 02:42
3849
0
Некорректный скрипт для закрытия блока
14th April, 18:33
4770
0
прокидывать exception в блоках try-catch JAVA
11th March, 21:11
4515
0
Помогите пожалуйста решить задачи
24th November, 23:53
6263
0
Не понимаю почему не открывается детальное описание продукта
11th November, 11:51
4479
0
Нужно решить задачу по программированию на массивы
27th October, 18:01
4560
0
Метода Крамера С++
23rd October, 11:55
4462
0
помогите решить задачу на C++
22nd October, 17:31
4128
0
Помогите решить задачу на python с codeforces
22nd October, 11:11
4608
0
Python с нуля: полное руководство для начинающих
18th June, 13:58
2731
0
Может DTS тест на наличие таблицы MS-Access
У меня есть база данных Access, в которой я отбрасываю таблицу, а затем создаю таблицу заново. Однако мне нужно иметь возможность проверить таблицу в случае, если таблица будет удалена, но не создана (т. е. когда кто-то останавливает пакет DTS сразу после его запуска-roll - eyes -). Если бы я делал это в базе данных SQL, я бы просто сделал:
IF (EXISTS (SELECT * FROM sysobjects WHERE name = 'Table-Name-to-look-for'))
BEGIN
drop table 'Table-Name-to-look-for'
END
Но как это сделать для базы данных Access?
Дополнительный ответ: есть ли способ заставить пакет DTS игнорировать ошибку и просто перейти к следующему шагу, а не проверять, существует ли он?
SQL Server 2000
Microsoft Access имеет системную таблицу с именем MSysObjects, которая содержит список всех объектов базы данных, включая таблицы. Объекты таблицы имеют тип 1, 4 и 6.
Важно ссылаться на тип: ...
Где Name='TableName' И Введите (1,4,6)
В противном случае то, что возвращается, может быть некоторым объектом, отличным от таблицы.
Попробуйте тот же T-SQL, но в MS ACCESS вызывается таблица sys objects: MSysObjects.
Попробовать это:
SELECT * FROM MSysObjects WHERE Name = 'your_table';
и посмотрим, сработает ли он оттуда.
Вы можете взглянуть на эти таблицы, если вы перейдете в Сервис - > Параметры - > вид (вкладка) - > и проверить скрытые объекты, системные объекты. Так что вы можете видеть и то, и другое. Если вы откроете таблицу, вы увидите имена таблиц, запросы и т. д. Не изменяйте это вручную, иначе DB может запаниковать :)
Мартин.
P.D.: Если существует, должно также проверка типа объекта:
IF EXISTS (SELECT * FROM sysobjects WHERE id = object_id(N'[dbo].[Your_Table_Name]') AND OBJECTPROPERTY(id, N'IsUserTable') = 1)
Я не уверен, что вы можете запросить таблицу системных объектов в базе данных Access из пакета DTS.
Если это не работает, почему бы просто не попробовать сделать SELECT * из рассматриваемой таблицы доступа, а затем поймать ошибку , если она не сработает?