Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Поиск значения по всей базе.
|
|||
|---|---|---|---|
|
#18+
Добрый день! Может кто делал хранимую процедуру или выборку на тему: Задается, к примеру, числовое значение и необходимо для текущей БД выбрать записи из все талиц, содержащее в каком-либо числовом поле данное значение в виде: Таблице, Поле, Ключ (если он есть) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2001, 11:32 |
|
||
|
Поиск значения по всей базе.
|
|||
|---|---|---|---|
|
#18+
НУ напиши цикл типа DECLARE cur CURSOR FOR SELECT name from sysobjects where type = 'U' ---втнутри цикла собирай строку: SELECT @sSQL = 'SELECT * FROM ' + @sTable + ' WHERE FIELD = ' + CONVERT(varchar, @nValue) EXECUTE ( @sSQL ) Вот и все. Можно конечно и хранимыми процедурами воспользоваться, но не помню имени, то типа ...foreeachtable... И хорошо бы во всех таблицах иметь поле с одинм и тем же наименованием ))) Павел ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2001, 13:56 |
|
||
|
Поиск значения по всей базе.
|
|||
|---|---|---|---|
|
#18+
create proc sp_find_value @value sql_variant as begin set nocount on declare @strSQL nvarchar(4000) declare @table_name sysname declare @col_name sysname declare @count int declare @strMsg nvarchar(4000) declare curSearch cursor fast_forward for select so.name, sc.name from sysobjects so, syscolumns sc where so.id = sc.id and so.type in ('S', 'U') open curSearch fetch curSearch into @table_name, @col_name while @@fetch_status = 0 begin set @strSQL = 'select @count = count(*) from ' + @table_name + ' where ' + @col_name + ' = @value' exec sp_executesql @strSQL, N'@value sql_variant, @count int out', @value = @value, @count = @count out if @count > 0 begin set @strMsg = @table_name + '.' + @col_name print @strMsg end fetch curSearch into @table_name, @col_name end close curSearch deallocate curSearch end Правда, будет ругаться на колонки типа text, ntext, image - они не могут участвовать в условии where. Если напрягает, поставь отсев через проверку поля в таблице systypes. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2001, 15:14 |
|
||
|
|

start [/forum/topic.php?fid=46&msg=32009482&tid=1826204]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
48ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
47ms |
get tp. blocked users: |
2ms |
| others: | 246ms |
| total: | 384ms |

| 0 / 0 |
