Подтвердить что ты не робот

SQL server 2012. Исключение: попытка чтения или записи защищенной памяти (MS.VS.OLE.Interop)

Я больше являюсь конечным пользователем SQL Server 2012. Когда я нажимаю правой кнопкой мыши на имя таблицы и выбираю пункт меню "Изменить верхние 200 строк". Я получаю это сообщение:

 Exception has been thrown by the target of an invocation. (mscorlib)
 Additional information:
   Attempted to read or write protected memory. This is often an indication that 
   other memory is corrupt. (Microsoft.VisualStudio.OLE.Interop)

Если я попытаюсь сделать правый щелчок снова, SQL-сервер перестанет работать и закрываться. Я все еще могу использовать команды SQL для вставки или обновления базы данных. Я искал решение и нашел эту ссылку: http://social.msdn.microsoft.com/Forums/vstudio/en-US/42b79da5-6f1e-4122-a2cb-00def87a1ae2/microsoftvisualstudiooleinterop-attempted-to-read-or-write-protected-memory-this-is-often-an?forum=visualstudiogeneral

Но это все еще не помогает мне четко понять причину или найти решение проблемы. Любая помощь для решения этой проблемы высоко ценится. Спасибо.

4b9b3361

Ответ 1

Вы пытаетесь редактировать базу данных SQL 2014 с помощью версии 2012 (или более ранней) SQL Management Studio?

Вы можете определить версию SQL вашей базы данных, выполнив этот запрос к вашей основной базе данных:

SELECT @@VERSION

У меня возникла та же проблема, и я смог выполнить прямое редактирование таблиц ("Edit Top 200"), установив и используя SQL Server Management Studio 2014. Даже если ваша БД и Management Studio версии 2012, обновление Management Studio может не повредить,

Ответ 2

Я также столкнулся с той же проблемой. И я заметил одно: если вы используете новую базу данных SQL, а затем версию студии управления SQL, вы получите это сообщение. Чтобы преодолеть эту проблему, просто установите студию управления SQL равной или большей, чем версия базы данных. Если у вас есть SQL 2012, вам необходимо установить студию управления SQL 2012 или 2014.

Ответ 3

Я нашел решение, которое не требует перезагрузки. Идти к:

C:\Users\<User Name>\AppData\Local\Temp 

и удалите все файлы. Перед удалением закройте окно SSMS.