2010-10-19 2 views
0

Я пытаюсь перестроить приложение adp Access в Access 2007. Я начал с пустой базы данных, связал таблицы SQL Server, которые мне нужны с ODBC, а затем скопировал все формы из оригинального приложения. Затем я обновил источники данных для форм, чтобы перейти к правильным таблицам.Восстановление доступа adp в Access 2007 и получение ошибки

Когда я открываю одну из форм, я получаю сообщение об ошибке «Синтаксическая ошибка в WITH WITH OWNERACCESS OPTION declaration». Эта ошибка возникает до запуска кода события Open.

Есть ли у кого-нибудь идеи о том, как отслеживать, откуда эта ошибка? Или, может быть, идея другого способа сделать это вообще?

Спасибо!

+0

Вы видели http://www.accessmonster.com/Uwe/Forum.aspx/access-security/2536/With-OwnerAccess-Option? – Fionnuala

+0

Я просто посмотрел на это, но я не уверен, применим ли он. У меня нет «WITH OWNERACCESS OPTION» в любом месте кода (которого я, кстати, не писал). –

ответ

1

С ОПЕРАЦИЕЙ OWNERACCESS OPEN не имеет смысла в ADP, так как это команда для Jet SQL для использования с безопасностью на уровне пользователя Jet. При использовании ADP безопасность должна быть установлена ​​на сервере. Таким образом, вы должны удалить все инструкции WITH OWNERACCESS OPTION из вашей формы RecordSources.

Откровенно говоря, я не уверен, что они имеют эффект ни в чем другом, кроме сохраненного QueryDef, поэтому, вероятно, это была ошибка в исходном приложении.

Кроме того, я бы никогда не рекомендовал копировать что-либо из MDB в ADP. Во-первых, я не верю, что переход к ADP всегда рекомендуется (хотя я, конечно, использую ADP как административный инструмент с моими приложениями MDB/ODBC, использующими SQL Server), но во-вторых, существует так много различий между двумя платформами, которые Я просто не вижу, как они работают.

Если я решил перенести MDB в ADP (и я не могу себе представить, что я когда-либо был, учитывая, что MS устаревает ADP уже около полутора лет), я бы начал с нуля и перестроил его из заземлить.

+0

Спасибо за ответ, Дэвид! Мне жаль, что я не был более ясен в своем вопросе - на самом деле я пытаюсь перейти от adp к accdb в Access 2007. Возможно, вы можете придумать способ избавиться от ошибки в этом сценарии? Похоже, вы знаете намного больше о доступе, чем я! –

+0

Без SQL, вызывающего проблему, или больше информации о контексте, это довольно сложно сказать. Конечно, ACCDB не поддерживает Jet ULS, поэтому нет никакой цели в использовании WITH OWNERACCESS OPTION там. –

+0

Я понятия не имею, где «WITH OWNERACCESS OPTION» находится в приложении, так как оно совсем не в коде. Думаю, я должен более внимательно изучить свойства формы, вызывающие проблему. –

Смежные вопросы