﻿<?xml version='1.0' encoding='UTF-8'?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/"><channel><title>Релиб / SQL Server / Базы данных  / Проблемы с поиском по БД, требуется помощь ;-( / Latest Posts</title><generator>InstantForum.NET v4.1.4</generator><description>Релиб</description><link>http://relib.com/forums/</link><webMaster>robot@relib.com</webMaster><lastBuildDate>Thu, 08 Jan 2009 16:15:22 GMT</lastBuildDate><ttl>20</ttl><item><title>RE: Проблемы с поиском по БД, требуется помощь ;-(</title><link>http://relib.com/forums/Topic738744-22-1.aspx</link><description>изменил. вроде работает. пока :-)&lt;BR&gt;&lt;BR&gt;спасибо за ответ</description><pubDate>Wed, 09 Jan 2002 19:02:00 GMT</pubDate><dc:creator>Alexey</dc:creator></item><item><title>RE: Проблемы с поиском по БД, требуется помощь ;-(</title><link>http://relib.com/forums/Topic738744-22-1.aspx</link><description>Попробуйте так&lt;BR&gt;&lt;BR&gt;SELECT DISTINCT t1.id, t1.topic, substring(t1.message,1,200), t1.updated, m.name &lt;BR&gt;FROM member m, forum T1 WITH (NOLOCK) Inner Join forum T2 WITH (NOLOCK) On T1.Id = T2.ParentId &lt;BR&gt;WHERE T1.ParentId = 0 AND (&lt;BR&gt;(t1.topic like '%xxx%' OR t1.message like '%xxx%') &lt;BR&gt;) AND m.id=t1.member ORDER BY t1.updated DES</description><pubDate>Wed, 09 Jan 2002 18:55:00 GMT</pubDate><dc:creator>AndreP</dc:creator></item><item><title>RE: Проблемы с поиском по БД, требуется помощь ;-(</title><link>http://relib.com/forums/Topic738744-22-1.aspx</link><description>а еще после 5-7 &amp;quot;удачных&amp;quot; запросов только что получил следующий ответ от сервера:&lt;BR&gt;&lt;BR&gt;Microsoft OLE DB Provider for SQL Server error '80004005' &lt;BR&gt;&lt;BR&gt;Transaction (Process ID 101) was deadlocked on {lock} resources with another process and has been chosen as the deadlock victim. Rerun the transaction. &lt;BR&gt;&lt;BR&gt;???</description><pubDate>Wed, 09 Jan 2002 18:24:00 GMT</pubDate><dc:creator>Alexey</dc:creator></item><item><title>Проблемы с поиском по БД, требуется помощь ;-(</title><link>http://relib.com/forums/Topic738744-22-1.aspx</link><description>Начал замечать, что иногда появляются проблемы с поиском по БД на данном сайте, особенно когда выбираешь поиск по БД, SQL Server возвращает таймаут при выполнении запроса... Обычно все вроде бы работает, но иногда, видимо, когда сервер провайдера перегружен или еще что, выдает этот таймаут. Запрос уже обсуждался на этом форуме&lt;BR&gt;&lt;BR&gt;http://www.relib.com/forums/topic.asp?id=736362&lt;BR&gt;&lt;BR&gt;решение мне понравилось и его и включили в скрипт поиска...&lt;BR&gt;&lt;BR&gt;Таблица такая:&lt;BR&gt;&lt;BR&gt;CREATE TABLE forum (&lt;BR&gt;	[ID] [int] IDENTITY (1, 1) NOT NULL ,&lt;BR&gt;	[member] [int] NOT NULL ,&lt;BR&gt;	[topic] [nvarchar] (100) COLLATE Cyrillic_General_CI_AS NULL ,&lt;BR&gt;	[date] [smalldatetime] NULL ,&lt;BR&gt;	[parentID] [int] NOT NULL ,&lt;BR&gt;	[message] [ntext] COLLATE Cyrillic_General_CI_AS NOT NULL ,&lt;BR&gt;	[updated] [smalldatetime] NULL ,&lt;BR&gt;	[type] [int] NOT NULL ,&lt;BR&gt;	[ip] [nvarchar] (50) COLLATE Cyrillic_General_CI_AS NULL ,&lt;BR&gt;	[status] [char] (1) COLLATE Cyrillic_General_CI_AS NULL &lt;BR&gt;) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]&lt;BR&gt;GO&lt;BR&gt;&lt;BR&gt;к ней сделаны primary key на ID asc (clustered)&lt;BR&gt;и индекс по topic,updated,status - все asc&lt;BR&gt;&lt;BR&gt;Запрос выполняется примерно следующий&lt;BR&gt;&lt;BR&gt;SELECT DISTINCT t1.id, t1.topic, substring(t1.message,1,200), t1.updated, m.name &lt;BR&gt;FROM member m, forum T1 Inner Join forum T2 On T1.Id = T2.ParentId &lt;BR&gt;WHERE T1.ParentId = 0 AND (&lt;BR&gt;(t1.topic like '%xxx%' OR t1.message like '%xxx%') &lt;BR&gt;) AND m.id=t1.member ORDER BY t1.updated DESC&lt;BR&gt;&lt;BR&gt;Заранее благодарю.</description><pubDate>Wed, 09 Jan 2002 16:46:00 GMT</pubDate><dc:creator>Alexey</dc:creator></item></channel></rss>