Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Глюк в SQL Server 2008 Express (SP1)  [new]
Allaire
Member

Откуда: Киев
Сообщений: 70
Добрый день! Подскажите пожалуйста как решить следующую проблему - использую версию нового сервера (см. сабж) и при попытке создать таблицу/вьюху просмотреть таблицу в режиме дизайна и пр. вылетает сообщение: "An unexpected error occurred in the .NET Framework Data Provider for SQL Server. Please contact the provider vendor to resolve this problem. (SQLEditors)". Кто сталкивался - подскажите как решается (я пробовал реинсталить нет-фреймворки всех версий и со всеми сервис-паками вплоть до .net framework 3.5 SP1, в любых последовательностях, пробовал реинсталить сам SQL-сервер, накатил на него 1-й сервис-пак, реинсталил PowerShell, чистил реестр и пр. - не помогает). Полный текст ошибки:
===================================
An unexpected error occurred in the .NET Framework Data Provider for SQL Server. Please contact the provider vendor to resolve this problem. (SQLEditors)
------------------------------
Program Location:

at Microsoft.SqlServer.Management.DataTools.DataServices.DataProvider.CreateConnectionProperties(Guid dataSource)
at Microsoft.SqlServer.Management.DataTools.DataServices.DataProviderManager.CreateConnectionProperties(Guid source, Guid provider)
at Microsoft.SqlServer.Management.DataTools.DataServices.DataProviderManager.CreateConnectionProperties(Guid provider)
at Microsoft.SqlServer.Management.DataTools.Providers.SqlServer.SqlDataSourceSpecializer.DeriveDataSource(String connectionString)
at Microsoft.SqlServer.Management.DataTools.DataServices.DataProvider.DeriveDataSource(String connectionString)
at Microsoft.SqlServer.Management.DataTools.DataServices.DataConnection.SetConnectionStrings(String connectionString)
at Microsoft.SqlServer.Management.DataTools.DataServices.DataConnection..ctor(DataProvider provider, String connectionString, Boolean encryptedString)
at Microsoft.SqlServer.Management.DataTools.DataServices.DataConnectionFactory.CreateDataConnectionImpl(Guid provider, String connectionString, Boolean encryptedString)
at Microsoft.SqlServer.Management.Data.DataConnectionFactory.CreateDataConnection(Guid provider, String connectionString, Boolean encryptedString)
at Microsoft.SqlServer.Management.DataTools.DataServices.DataConnectionManager.CreateDataConnection(Guid provider, String connectionString, Boolean encryptedString)
at Microsoft.SqlServer.Management.Data.DataConnectionManager.GetDataConnection(Guid provider, String connectionString, Boolean encryptedString, Boolean update)
at Microsoft.SqlServer.Management.Data.DataConnectionManager.GetDataConnection(Guid provider, String connectionString, Boolean encryptedString)
at Microsoft.SqlServer.Management.DataTools.DataServices.DataConnectionManager.Microsoft.SqlServer.Management.Data.Interop.IVsDataConnectionManager.GetDataConnection(Guid& guidProvider, String bstrConnectionString, Boolean fEncryptedString)
at Microsoft.SqlServer.Management.UI.VSIntegration.Editors.VsDataDesignerNode.CreateDesigner()
at Microsoft.SqlServer.Management.UI.VSIntegration.Editors.VsDataDesignerNode.Open()
at Microsoft.SqlServer.Management.UI.VSIntegration.Editors.VirtualProject.CreateDesigner(Urn origUrn, DocumentType editorType, DocumentOptions aeOptions, IManagedConnection con, String fileName)
at Microsoft.SqlServer.Management.UI.VSIntegration.Editors.VirtualProject.Microsoft.SqlServer.Management.UI.VSIntegration.Editors.ISqlVirtualProject.CreateDesigner(Urn origUrn, DocumentType editorType, DocumentOptions aeOptions, IManagedConnection con, String fileName)
at Microsoft.SqlServer.Management.UI.VSIntegration.Editors.ISqlVirtualProject.CreateDesigner(Urn origUrn, DocumentType editorType, DocumentOptions aeOptions, IManagedConnection con, String fileName)
at Microsoft.SqlServer.Management.UI.VSIntegration.Editors.ScriptFactory.CreateDesigner(DocumentType editorType, DocumentOptions aeOptions, Urn parentUrn, IManagedConnection mc, String fileName)
at Microsoft.SqlServer.Management.UI.VSIntegration.Editors.VsDocumentMenuItem.CreateDesignerWindow(IManagedConnection mc, DocumentOptions options)
===================================
The provider does not implement the data connection properties object.
4 ноя 09, 16:59    [7881786]     Ответить | Цитировать Сообщить модератору
 Re: Глюк в SQL Server 2008 Express (SP1)  [new]
Allaire
Member

Откуда: Киев
Сообщений: 70
Нагуглил подобные баги - оказывается они есть и в 2005-й версии сервера, но как их лечить никто не знает, а точнее все что было сделано я перечислил выше... варианты кончились... (в мелкософте ответили что не смогли интерпретировать ошибку). Судя по всему ошибка характерна для Management Studio (Express-версий продукта) т.к. сама БД работает нормально...
Самое интересное - что проинсталил все это добро на другом компе - все работает нормально, т.е. баг проявляется при определенной комбинации софта/железа - хотелось бы разобраться в чем проблема (сносить винду не предлагать :) т.к. это не "решение" проблемы)...
5 ноя 09, 15:08    [7886491]     Ответить | Цитировать Сообщить модератору
 Re: Глюк в SQL Server 2008 Express (SP1)  [new]
слоненок
Member

Откуда:
Сообщений: 479
Allaire, может это?
5 ноя 09, 18:16    [7888113]     Ответить | Цитировать Сообщить модератору
 Re: Глюк в SQL Server 2008 Express (SP1)  [new]
Allaire
Member

Откуда: Киев
Сообщений: 70
слоненок
Allaire, может это?

Спасибо тебе чувак! Проблема была решена! Хотя, чесно говоря я не верил в работоспособность описанного подхода, до сих пор не могу поверить что регистр имени одной из веток реестра мог влиять на работоспособность всего sql server-а!!! Как я понял из того поста ребята из мелкософта не могут воспроизвести проблему, т.к. очевидно она проявляется далеко не каждом компе, есть подозрение что играет роль сервис-пак/релиз винды... повторюсь - на домашнем лэптопе все столо и работает без проблем и правок в реестре ))
Резюмируя фикс, если вы получите описанную ошибку делайте следующее:
Экспортируйте ветку реестра:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\100\Tools\Shell\DataProviders\
Откройте файл экспорта в блокноте или др. удобном для вас редакторе...
Исправьте имя ветки (и всех вложенных веток) например:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\100\Tools\Shell\DataProviders\{1634CDD7-0888-42E3-9FA2-B6D32563B91D}\SupportedObjects\DATACONNECTIONPROPERTIES - так чтобы было:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\100\Tools\Shell\DataProviders\{1634CDD7-0888-42E3-9FA2-B6D32563B91D}\SupportedObjects\DataConnectionProperties
(У меня к примеру все было в нижнем регистре, т.е.: dataconnectionproperties). Как видно - все нужно переделать соблюдая camel-style )))
Затем все это добро импортим назад в реестр (простым дабл-кликом на исправленном файле '.reg').
Не пытайтесь ренеймить ветки прямо в реестре - не получится, проверено. Импорт нада делать загрузившись в безопасном режиме. Вуаля! Радуемся рабочему серваку (т.е. менеджмент-студио) и ждем официального фикса на данную багу, кот. будет не за горами подозреваю.
Еще раз спасибо за помощь!
5 ноя 09, 23:48    [7888976]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить