| История развития программирования, программирование, языки программирования, книги программирование | На сайте представлена информация про программирование в Интернете и работу |
|
VBA For Word, Не работает перевод строки интернет и Vb, Как определить есть ли подкл. к инету? Создание нормальной инсталяшки, Заставить VB прогу, правильно ставиться Работа с модемом, Последовательность команд Помогите Please! Как сделать запись в файл?, Очень надо!! Как Вы относитесь к курящим девушкам? Installator, Ne rabotaet Найти выражение, три точки после Запуск программ, Некоторые проги не запускаются <<Возможно ли вставить код из Ассемблера?>> Переменная Printer VB6 и VBA, Проблемы со скроллом в VB6 и VBA Кто может уделить прару-тройку часов на прогу?, За работающее исполнение - плачу. Konstruktivniii FAQ, po Visual Basic Количество записей, Данные с формы Строка как массив, сабж VB RezaQ Unicode, FM20 TextBox Java карты Динамический генерация объектов, или как-то иначе Vendor ID Device ID, Определить сабж. Оптимизация работы с базами через код, что лучше(советы специалистов) Печать содержимого PictureBox Написание Plugin'ов для Internet Explorer outlook: как поставить фильтр???, Программная установка фильтра Событие из HTML в программу, Проблема перехвата события в HTML Генератор случайных чисел во Flash Подскажите чё делать, Компьютер пищит Как сделать полупрозрачную форму? MouseDragged ???, Nuzna pomosh!!! O4en'!!! Access: сформировать dbf-файл, как в Access'e ПРОГРАММНО сформировать d Как удалить строчку из текстового файла Чтение IP пакетов в LAN, Исходники на VB6 для чтения пакетов Пересылка данных между базами, экспорт данных Access mde, Закрыть программу Excel, help к функции, определенной пользователем Вкладки Tab в Access, visual basic SQL Server, Export,Import Database Objects, Access Local DB creation programming, Программное создание локал-х БД, таблиц Local DB creating programming, Программирование баз данных Ищу разработчика, Необходимо разработать редактор текст/ht Button задачи, Обновляется редко Эквалайзер Чтение из текстового файла с разделителями API - у Excel'a нет меню?, VB+API Требуется программист, программист VB Доступ к БД Access, ссылочку бы какую... MExel Search folders, subfolders and subsubfolders..., Need recursive function MS Flexgrid 6.0 Control Как Вы относитесь к курящим девушкам? Проблемма с курсорами на Оракле Серьезный вопрос специалистам., VB и работа с мобил. телефоном по IrDA Можно ли с помощью макроса в Excel......?, Помогите написть скрипт к Excel.... Прога для отлавливания вызовов api функций., Прога для отлавливания вызовов api функц Excel, Автозаполнение ячейки значениями имеется ячека в екселе, как получить нижнюю Многогопользовательское использование ADP файлов, !!! listbox Передача данных между базами VBA+Excel, активная ячейка Как печатать на 2 принтерах?, Нужен срочно совет Ну могу найти русскую доку., SWT в Eclipse Тем кто владеет Delphi, Вопрос по трансляции кода из Delphi в VB Нужно убить процесс, Как убить процесс,зная Hwnd или ... Access и ADO, Что лучше.... Код завершения программы на Clarion4, Код завершения программы на Clarion4 Ввод параметров в процедуру в ADO Динамический Sql в ХП, SQLServer, ADO VB и Acrobat Reader |
Платные хостинги Раскрутка сайта Книги по программированию Динамический Sql в ХП, SQLServer, ADO
- Необходимо формировать WHERE строку в зависимости от введенных параметров в ХПКак объявляеться внутренняя переменная в ХП?Допустим я сформировала эту строку в переменную @whrКак присоединить ее к запросу SELECT * FROM table1 ? - Код ...DECLARE @sql varchar(500), @whr varchar(50)/* здесь ты формируешь значение @whr */....SET @sql = 'SELECT something FROM somth_else WHERE ' + @whrEXECUTE (@sql)highlightSyntax('vbTA4MmI','vb');По-моему, так. - Круто!Попробую, получться будет еще круче! - данная ХП не возвращает никаких записей, когда я вызываю процедуру такSet recordset = Cmm.execute, ведь должен же recordset заполняться выбранными записями!Может что не так, взгляни на процедуруНапример процедурка у меня такая:ALTER PROCEDURE dbo.pr_search_music(@music nvarchar(200))ASDECLARE @sql varchar(500), @whr varchar(50)beginif ( @music <> 'NULL' ) SET @whr = @whr + ' AND music like ''' + @music + ''' 'SET @sql = 'SELECT id_music,music FROM dbo.music ' + @whrEXECUTE (@sql)end - Для чистоты эксперимента создал таблицу:id_music int music varchar(50) 1 mus 1 2 mus 2 3 mus 3 4 The Cranberries 5 Roxette 6 Король и Шут 7 Крематорий 8 Mylene Farmer 9 RammsteinПривожу еще раз твой код:Код ALTER PROCEDURE dbo.pr_search_music(@music nvarchar(200))ASDECLARE @sql varchar(500),@whr varchar(50)beginif ( @music <> 'NULL' ) SET @whr = @whr + ' AND music like ''' + @music + ''' 'SET @sql = 'SELECT id_music,music FROM dbo.music ' + @whrEXECUTE (@sql)endhighlightSyntax('vb3ZDBkM','vb');Внимание - правильный ответ Код ALTER PROCEDURE dbo.pr_search_music( @music nvarchar(200))ASDECLARE @sql varchar(500), @whr varchar(50)begin if ( @music <> 'NULL' ) SET @whr = ' music like ''' + @music + ''' ' SET @sql = 'SELECT id_music, music FROM dbo.music WHERE ' + @whr EXECUTE (@sql)endhighlightSyntax('vb2FhZGY=','vb');Воззвание вида Код exec pr_search_music '%Cran%'highlightSyntax('vbNzJhZmM1','vb');выдает результат: 4 The CranberriesОбрати внимание на строкуКод SET @whr = @whr + ' AND music like ''' + @music + ''' 'highlightSyntax('vbYjlmMWU4M','vb');А также на то, какое значение было присвоено @whr до нее. Правильно - никакое. Т.е. в конечном итоге мы выполняем EXECUTE(NULL) (т.к. в T-SQL все операции, содержащие в качестве одного из операндов NULL, возвращают его же) и ничего не получаем в ответ .Для диагностики неисправностей в хп рекомендую использовать либо отладку (не совсем тривиальный метод, кстати), либо (для небольших процедур) - диагностические SELECT-ы в ключевых местах, чтобы можно было быстро посмотреть (например, в Query Analyser), какие значения принимают те или иные переменные.Первое, что я сделал - вставил в конце хп строчкуКод select [@music]=@music, [@whr]=@whr, [@sql]=@sqlhighlightSyntax('vbYyZTBlYWU3','vb');PS Кстати, а зачем здесь вообще формировать запрос динамически?Можно же просто написать Код SELECT id_music, music FROM dbo.music WHERE music LIKE @musichighlightSyntax('vbZTE0NTQyNDY','vb');Разве нет? Это сообщение отредактировал vickr - 12.7.2003, 14:33 - Дело в том, что этот пример лишь часть кода образуемого динамически, именно поэтому я написалаSET @whr = @whr + ' AND music like ''' + @music + ''' ', с @whr Просто будет форма с большим количеством параметров таблицы, то есть поиска и в зависимости от того что он введет, будет формироваться строка поиска, в SQL запросе - ясно?Что ж попробую присвоить @whr начальное значение "", может тогда сработаетВообще то я вызываю хп из модуля формы с помощью комманды ADOSet recordset cmm.executeВ итоге в recordset -те должны вернуться найденные записи, которые потом и присваиваються recordset -ту формы - Почему данное выполнение запроса не выводит данных в Unicode шрифтах? - Проблема была в букве Nпростонадо былоSET @whr = ' music like N''' + @music + ''' 'подставить букву NОна оказываеться ищет в Unicode шрифтах,всего делов тоА я мучился! |