Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 2 3 4 [5] 6   вперед  Ctrl      все
 Re: Plug-in-ы для SSMS 2005/2008. Необходим плагин для редактора студии?  [new]
AndreiRantsevich
Member

Откуда: Минск
Сообщений: 765
Sack,

гм... Та программа, которой вы архивы сохраняете в таблицу из снова открыть может ? :)
У меня подозрение что из-за типа "TEXT" что-то нарушается. Возможно, что нарушается обратимо, если файлы из базы доставать исходной программой. Можно маленький архив сохранить в вашу таблицу а потом достать снова вашей программой и SSMSBoost-ом и посмотреть где отличие, например Araxis Merge-м.
1 авг 12, 06:07    [12943978]     Ответить | Цитировать Сообщить модератору
 Re: Plug-in-ы для SSMS 2005/2008. Необходим плагин для редактора студии?  [new]
Sack
Member

Откуда: Братск
Сообщений: 149
AndreiRantsevich,

у меня есть программулька на дельфи, которая это всё открывает, собственно там пара строчек.
Из базы данные выбираются процедурой
ALTER PROCEDURE [dbo].[usp_FileGetVarbinary] (
  @FileGUID uniqueidentifier
) AS
SET NOCOUNT ON
SET XACT_ABORT ON

SELECT [FileName], CAST(CAST(Content as varchar(max)) as varbinary(max)) as Content
FROM dbo.Files F
WHERE F.FileGUID = @FileGUID


и одна строчка в делфи для выгрузки на диск
ADOSP_FileGetVarbinary.FieldByName('Content') as TBlobField).SaveToFile(ExtractPath+ADOSP_FileGetVarbinary.FieldByName('FileName').Value);
1 авг 12, 06:21    [12943980]     Ответить | Цитировать Сообщить модератору
 Re: Plug-in-ы для SSMS 2005/2008. Необходим плагин для редактора студии?  [new]
Sack
Member

Откуда: Братск
Сообщений: 149
кстати, про изображения я наврал, они тоже из text не открываются.
1 авг 12, 06:22    [12943981]     Ответить | Цитировать Сообщить модератору
 Re: Plug-in-ы для SSMS 2005/2008. Необходим плагин для редактора студии?  [new]
AndreiRantsevich
Member

Откуда: Минск
Сообщений: 765
Sack,

У вас тут двойная конвертация TEXT поля:
CAST(CAST(Content as varchar(max)) as varbinary(max))


А Визуалайзер вы наверное на прямую вызываете для Content.
Попробуйте вызвать в SSMS вашу процедуру usp_FileGetVarbinary для конкретного файла и попробовать визуалайзером её результат просмотреть.
1 авг 12, 06:33    [12943983]     Ответить | Цитировать Сообщить модератору
 Re: Plug-in-ы для SSMS 2005/2008. Необходим плагин для редактора студии?  [new]
Sack
Member

Откуда: Братск
Сообщений: 149
AndreiRantsevich,

не, ну так конечно открылось.
значит этот инструмент работает только для varbinary.
1 авг 12, 08:34    [12944117]     Ответить | Цитировать Сообщить модератору
 Re: Plug-in-ы для SSMS 2005/2008. Необходим плагин для редактора студии?  [new]
Сон Веры Павловны
Member

Откуда:
Сообщений: 5632
Sack,

если что:
Important
ntext , text, and image data types will be removed in a future version of Microsoft SQL Server. Avoid using these data types in new development work, and plan to modify applications that currently use them. Use nvarchar(max), varchar(max), and varbinary(max) instead.

http://msdn.microsoft.com/en-us/library/ms187993.aspx

AndreiRantsevich
Думаю к октябрю

Вполне устроит, будем ждать.
AndreiRantsevich
Ей мы и пользуемся: Smo.ScriptingOptions.ScriptForAlter. Правда она private :)

Рефлекшн? Или я пропустил какую-то фабрику/конструктор ScriptingOptions, устанавливающие это свойство?
1 авг 12, 09:10    [12944218]     Ответить | Цитировать Сообщить модератору
 Re: Plug-in-ы для SSMS 2005/2008. Необходим плагин для редактора студии?  [new]
Sack
Member

Откуда: Братск
Сообщений: 149
Сон Веры Павловны,

Да знаем мы, это "наследие режима". Из-за этого такие вот проблемы с преобразованиями типов постоянно и возникают.
Ну, и то что я написал "значит этот инструмент работает только для varbinary. " скорее всего не верно, проблемы из-за того, что при записи в базу происходит преобразование типов.

AndreiRantsevich,
большое спасибо за помощь.
1 авг 12, 09:16    [12944234]     Ответить | Цитировать Сообщить модератору
 Re: Plug-in-ы для SSMS 2005/2008. Необходим плагин для редактора студии?  [new]
AndreiRantsevich
Member

Откуда: Минск
Сообщений: 765
Sack,

Sack
Ну, и то что я написал "значит этот инструмент работает только для varbinary. " скорее всего не верно, проблемы из-за того, что при записи в базу происходит преобразование типов.


Да - у вас происходит такое вот обратимое преобразование при сохранении/считывании. (Повезло) :)

Sack
большое спасибо за помощь.

Пишите, если что.
1 авг 12, 12:10    [12945361]     Ответить | Цитировать Сообщить модератору
 Re: Plug-in-ы для SSMS 2005/2008. Необходим плагин для редактора студии?  [new]
AndreiRantsevich
Member

Откуда: Минск
Сообщений: 765
Сон Веры Павловны
Рефлекшн? Или я пропустил какую-то фабрику/конструктор ScriptingOptions, устанавливающие это свойство?

да - рефлекшн.
1 авг 12, 12:11    [12945370]     Ответить | Цитировать Сообщить модератору
 Re: Plug-in-ы для SSMS 2005/2008. Необходим плагин для редактора студии?  [new]
AndreiRantsevich
Member

Откуда: Минск
Сообщений: 765
invm,

invm
Сервер локальный и сам SSMS скрипты генерирует быстро. У вас генерация происходит в две фазы: "Analyzing context" и "Script Object". Долго выполняется именно "Analyzing context".


Как я писал - в новой версии я частично исправил, частично добавил более детальный вывод процесса скриптования. Стало ли работать быстрее на ваших базах ?
2 авг 12, 11:28    [12950941]     Ответить | Цитировать Сообщить модератору
 Re: Plug-in-ы для SSMS 2005/2008. Необходим плагин для редактора студии?  [new]
AndreiRantsevich
Member

Откуда: Минск
Сообщений: 765
RubinDm,


RubinDm
ждемс..)


Готово - всё сделано в релизе 2.4 - он уже на сайте
2 авг 12, 11:30    [12950965]     Ответить | Цитировать Сообщить модератору
 Re: Plug-in-ы для SSMS 2005/2008. Необходим плагин для редактора студии?  [new]
invm
Member

Откуда: Москва
Сообщений: 9122
AndreiRantsevich
invm,

invm
Сервер локальный и сам SSMS скрипты генерирует быстро. У вас генерация происходит в две фазы: "Analyzing context" и "Script Object". Долго выполняется именно "Analyzing context".


Как я писал - в новой версии я частично исправил, частично добавил более детальный вывод процесса скриптования. Стало ли работать быстрее на ваших базах ?
Да, теперь существенно быстрее. Спасибо.
2 авг 12, 12:07    [12951347]     Ответить | Цитировать Сообщить модератору
 Re: Plug-in-ы для SSMS 2005/2008. Необходим плагин для редактора студии?  [new]
AndreiRantsevich
Member

Откуда: Минск
Сообщений: 765
invm,

Ок. и вам спасибо - благодаря вам нашёл лишние движения в алгоритме.
2 авг 12, 12:09    [12951369]     Ответить | Цитировать Сообщить модератору
 Re: Plug-in-ы для SSMS 2005/2008. Необходим плагин для редактора студии?  [new]
AndreiRantsevich
Member

Откуда: Минск
Сообщений: 765
AndreiRantsevich,

Прошла почти неделя после релиза 2.4. Вижу что скачало много народу, но все либо довольны и молчат, либо уже удалили add-in и забили :)
Всё ок ? Пожелания/Замечания есть ? Приём...
6 авг 12, 06:28    [12965915]     Ответить | Цитировать Сообщить модератору
 Re: Plug-in-ы для SSMS 2005/2008. Необходим плагин для редактора студии?  [new]
Sack
Member

Откуда: Братск
Сообщений: 149
AndreiRantsevich,

Пожелания/замечания (ну, или может я опять что-то не так делаю):
1. Функции Script Object и Locate Object работают только в контексте текущей БД, т.е. если объект указан database_name.schema_name.object_name, то появится ошибка No suitable object found at cursor location.
2. Функция Preferred connections завязана на имя бд, что не совсем удобно. Хотелось бы иметь возможность настроить 'Important DB alert ' для всего сервера. Например, у меня на боевом сервере порядка десяти баз и только боевые, приходится их все добавлять, та же картина на developer и тестовых серверах. Кроме меня базы может добавить еще кто-нибудь (например на тестовый), соответственно алерты могут ввести меня в заблуждение.
3. Если открыть скрипт из файла (файл->открыть), то ваш плагин не работает хотя в ssms есть connection, в частности Script Object, Locate Object и 'Important DB alert '.

ЗЫ
Microsoft SQL Server 2008 R2 (SP1) - 10.50.2500.0 (Intel X86)
Jun 17 2011 00:57:23
Copyright (c) Microsoft Corporation
Express Edition with Advanced Services on Windows NT 6.1 <X86> (Build 7601: Service Pack 1)

Microsoft SQL Server Management Studio 10.50.2500.0
Microsoft Data Access Components (MDAC) 6.1.7601.17514
Microsoft MSXML 3.0 6.0
Microsoft Internet Explorer 9.0.8112.16421
Microsoft .NET Framework 2.0.50727.5448
Operating System 6.1.7601
6 авг 12, 07:42    [12965979]     Ответить | Цитировать Сообщить модератору
 Re: Plug-in-ы для SSMS 2005/2008. Необходим плагин для редактора студии?  [new]
AndreiRantsevich
Member

Откуда: Минск
Сообщений: 765
Sack,


Sack
1. Функции Script Object и Locate Object работают только в контексте текущей БД, т.е. если объект указан database_name.schema_name.object_name, то появится ошибка No suitable object found at cursor location.

Да, правильно - так оно пока и есть. Я постараюсь исправить к следующему релизу. Технилогически оно работало ещё в версии 1.9, но было отключено из-за скорости, т.к. нужно подгружать объекты из другой базы. Я просто подумал, что редко используется и отключил :)

Sack
2. Функция Preferred connections завязана на имя бд, что не совсем удобно. Хотелось бы иметь возможность настроить 'Important DB alert ' для всего сервера. Например, у меня на боевом сервере порядка десяти баз и только боевые, приходится их все добавлять, та же картина на developer и тестовых серверах. Кроме меня базы может добавить еще кто-нибудь (например на тестовый), соответственно алерты могут ввести меня в заблуждение.

Функция как раз не завязана: если вы НЕ укажите ИМЯ БД в Preferred connections, но все настройки будут действовать для сервера - как раз то что вам нужно. Я только что заметил, что имя БД удалить через наш диалог нельзя, если оно уже введено, но если вы на свойстве Connection нажмёте "..." то там можно удалить имя БД и всё будет именно так как вам нужно. Этот недочёт я исправлю.

Sack
3. Если открыть скрипт из файла (файл->открыть), то ваш плагин не работает хотя в ssms есть connection, в частности Script Object, Locate Object и 'Important DB alert '.

Для того, что-бы эти функции работали окно скрипта должно иметь ОТКРЫТЫЙ connection, т.к. нам нужно знать в каком контексте нужно, например, анализировать имена объектов. Подтвердите - connection открыт ?
6 авг 12, 12:58    [12967542]     Ответить | Цитировать Сообщить модератору
 Re: Plug-in-ы для SSMS 2005/2008. Необходим плагин для редактора студии?  [new]
Ruuu
Member

Откуда: Иркутск
Сообщений: 4220
AndreiRantsevich,

1. Конечно же, удобнее и логичнее было бы искать объект во всех БД, но я, например, уже привык менять контекст: Ctrl + U, первая буква названия БД, 1-2 щелчка клавишей вниз и Enter - итого две секунды. Так что, с моей точки зрения это всего лишь небольшой недочет.
Кстати, порадовало как реализован выбор одноименных объектов в разных схемах.
2. с этим понятно, меня действительно ввело в заблуждение, то что нельзя убрать БД в уже созданной БД.
3. сейчас проверил еще раз. Для файлов с расширением .sql работает, но для других расширений нет. Например, у нас в svn процедуры хранятся с расширением .PRC. В ssms это расширение добавлено в Options/Text editor/File Extentions (SQL Query Editor). При открытии такого файла в ssms открывается connection, а в плагине нет. Я смог найти в настройках плагина, только добавление отдельного имени файла в Session, а это неудобно.
6 авг 12, 18:19    [12970242]     Ответить | Цитировать Сообщить модератору
 Re: Plug-in-ы для SSMS 2005/2008. Необходим плагин для редактора студии?  [new]
Sack
Member

Откуда: Братск
Сообщений: 149
Ruuu,

перелогиниться забыл :)
6 авг 12, 18:22    [12970277]     Ответить | Цитировать Сообщить модератору
 Re: Plug-in-ы для SSMS 2005/2008. Необходим плагин для редактора студии?  [new]
AndreiRantsevich
Member

Откуда: Минск
Сообщений: 765
Ruuu,
Ruuu
Кстати, порадовало как реализован выбор одноименных объектов в разных схемах.

Спасибо :)


Ruuu
3. сейчас проверил еще раз. Для файлов с расширением .sql работает, но для других расширений нет. Например, у нас в svn процедуры хранятся с расширением .PRC. В ssms это расширение добавлено в Options/Text editor/File Extentions (SQL Query Editor). При открытии такого файла в ssms открывается connection, а в плагине нет. Я смог найти в настройках плагина, только добавление отдельного имени файла в Session, а это неудобно.

Да... это конечно наш недочёт. мы как-то зациклились на .sql расширении - с другими и не тестировали (точнее на них не распространили функциональность). Исправим. Спасибо за информацию.
6 авг 12, 18:23    [12970284]     Ответить | Цитировать Сообщить модератору
 Re: Plug-in-ы для SSMS 2005/2008. Необходим плагин для редактора студии?  [new]
AndreiRantsevich
Member

Откуда: Минск
Сообщений: 765
AndreiRantsevich,

Исправлено. Новая версия на сайте !
22 авг 12, 15:32    [13050023]     Ответить | Цитировать Сообщить модератору
 Re: Plug-in-ы для SSMS 2005/2008. Необходим плагин для редактора студии?  [new]
AndreiRantsevich
Member

Откуда: Минск
Сообщений: 765
AndreiRantsevich,

Сегодня вышла версия 2.5.
Это промежуточный релиз с улучшенными старыми функциями и исправлениями.
Всё касается в основном улучшения интерфейса и исправления недочётов.
Спасибо всем пользователям, приславшим замечания.
22 авг 12, 15:39    [13050092]     Ответить | Цитировать Сообщить модератору
 Re: Plug-in-ы для SSMS 2005/2008. Необходим плагин для редактора студии?  [new]
мимо
Guest
AndreiRantsevich,
А сайт на небасурманском языке есть?
22 авг 12, 17:19    [13050887]     Ответить | Цитировать Сообщить модератору
 Re: Plug-in-ы для SSMS 2005/2008. Необходим плагин для редактора студии?  [new]
AndreiRantsevich
Member

Откуда: Минск
Сообщений: 765
мимо,
пока что нет, т.к. просто нет на это ресурсов.

Есть такой копромисс:
http://www.microsofttranslator.com/bv.aspx?from=&to=ru&a=www.ssmsboost.com
или
http://translate.google.de/translate?hl=en&sl=en&tl=ru&u=http%3A%2F%2Fwww.ssmsboost.com%2F
22 авг 12, 17:25    [13050925]     Ответить | Цитировать Сообщить модератору
 Re: Plug-in-ы для SSMS 2005/2008. Необходим плагин для редактора студии?  [new]
Vasilev Andrey
Member

Откуда:
Сообщений: 9
AndreiRantsevich,

Спасибо за плагин.
Можно еще сделать поиск произвольного текста (лучше по маске) в хранимых процедурах и функциях (и др. объектов) с выводом списка найденных объектов и возможностью перейти к этому объекту (locate и script)?
22 авг 12, 17:55    [13051132]     Ответить | Цитировать Сообщить модератору
 Re: Plug-in-ы для SSMS 2005/2008. Необходим плагин для редактора студии?  [new]
AndreiRantsevich
Member

Откуда: Минск
Сообщений: 765
Vasilev Andrey,


Vasilev Andrey
Можно еще сделать поиск произвольного текста (лучше по маске) в хранимых процедурах и функциях (и др. объектов) с выводом списка найденных объектов и возможностью перейти к этому объекту (locate и script)?


тут такая ситуация: у нас концепция к серверу напрямую не обращаться. Что-бы реализовать ваш поиск, нужно тогда скриптить все объекты, а это очень долго. Но, то что вам нужно можно сделать и так:

DECLARE @pattern NVARCHAR(64)

set @pattern='%#%'

select [name],[type], OBJECT_DEFINITION(object_id) as [Source]
from sys.objects
where OBJECT_DEFINITION(object_id) like @pattern and [type] in (
'C' ,--- = Check constraint
'D' ,--- = Default (constraint or stand-alone)
'P' ,--- = SQL stored procedure
'FN',--- = SQL scalar function
'R' ,--- = Rule
'RF',--- = Replication filter procedure
'TR',--- = SQL trigger (schema-scoped DML trigger, or DDL trigger at either the database or server scope)
'IF',--- = SQL inline table-valued function
'TF',--- = SQL table-valued function
'V' )--- = View


результат будет списк объектов с исходниками. (# замените на то, что ищете.) Что-бы исходник из грида копировался не поломанным - используйте функцию SSMSBoost-а "copy current cell 1:1".

Ещё круче - вышеприведенный код как есть добавьте в ssmsboost-е в настройках в Autoreplacements, для токена, например, "sis" - search in sources. Как нужно будет что-то найти в коде, пишете в редакторе "sis" и буст будет заменять "sis" на вышеуказанный код и даже ставить курсор туда, где стоит символ #.
23 авг 12, 02:34    [13052808]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 2 3 4 [5] 6   вперед  Ctrl      все
Все форумы / Microsoft SQL Server Ответить