Не удается внести изменения в бэкэнд SQL из проекта данных MS Access

У меня есть проект данных MS Access 2010 (ADP), подключенный к MS SQL Server 2008. Основываясь на веб-сайте Microsoft, я должен иметь возможность изменять бэкэнд SQL из проекта данных MS Access 2010.

После подключения к базе данных SQL Server вы можете просматривать, создавать, изменять и удалять таблицы, представления, хранимые процедуры, пользовательские функции и диаграммы базы данных с помощью Дизайнера баз данных, Дизайнера таблиц, Дизайнера запросов, Построителя запросов и Текстовый редактор SQL.

Однако я не могу изменить все мои столбцы так, как я хочу. Допустим, у меня есть стол с

Col1 varchar(255)

Я не могу изменить это в Design View на varchar (max). Макс не является допустимой длины в MS Access. Кроме того, согласно документации Microsoft, текст не должен использоваться, так как он устарел. Итак, я хотел бы избежать этого в качестве решения.

Другой вариант - внести изменения непосредственно в SQL Server. Тем не менее, это не будет работать для меня. Там будут другие разработчики, работающие над этим. Ни один из других разработчиков не будет иметь доступа к SSMS. Главным образом потому, что они разработчики Access, которые никогда раньше не видели SSMS и даже не касались SQL Server.

Как я могу сделать это изменение в MS Access Data Project? Есть ли какие-то другие ошибки, о которых мне следует знать с этой моделью клиент / сервер?

1 ответ

Существует несколько проблем сравнимости типов полей, которые необходимо обойти при использовании доступа к таблицам проектирования и другим объектам SQL Server. Обычно я обнаружил, что Access является очень полезным клиентским интерфейсом для форм ввода данных, программ и отчетов по данным SQL Server. Однако я всегда использую SSMS для создания таблиц, процедур, представлений... и всех задач разработки, связанных с SQL Server.

Что касается вашей проблемы проектирования таблиц, то похоже, что большинство действий поддерживаются, за исключением нескольких проблем с типом данных. Один из вариантов может заключаться в том, чтобы ваши разработчики отправляли на сервер специальные операторы T-SQL для создания и изменения таблиц с неподдерживаемыми полевыми требованиями. Один из способов сделать это - создать форму доступа с текстовым полем для ввода оператора T-SQL, а затем щелчок кнопки вызывает некоторый VBA для выполнения на сервере с помощью CurrentProject.Connection.Execute (SQLStatement). Хотя это не будет симпатичный графический интерфейс для разработки таблиц, и разработчик должен знать синтаксис T-SQL, чтобы выполнить то, что требовалось.

Моя рекомендация состоит в том, чтобы просто получить ваши разработчики SSMS и некоторое обучение. Это на самом деле не намного сложнее, чем использование интерфейса разработки таблиц Access... на самом деле это очень похоже. Они наверняка подберут его очень быстро. Кроме того, вы будете вести их по пути к информированности и продуктивности разработчиков SQL Server.

Другие вопросы по тегам