Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > ASP .Net > ASP General > Combining Index Server and SQL Server search results

Reply
Thread Tools

Combining Index Server and SQL Server search results

 
 
Alan
Guest
Posts: n/a
 
      09-01-2003
I'm just about to start a project that needs to combine the results of a SQL
Server query with the results of an Index Server query. The basic idea is
that the user enters/selects a bunch of search criteria on a form. Most of
the criteria selected by the user will be used to select records from the
database - standard WHERE clause stuff - but the user can also enter
free-text that should be searched for in associated uploaded documents. The
documents are sitting in the file-system with file-name pointers only stored
in the database (not the document). Only records where the associated
free-text is found in the documents should be returned. I'm new to Index
Server and am wondering how is this done. Any good references/tutes?

ASP 3.0
IIS 5.0
Windows 2000 Server
SQL Server 2000

Cheers,

Alan


 
Reply With Quote
 
 
 
 
Manohar Kamath [MVP]
Guest
Posts: n/a
 
      09-01-2003
There are some good references in the Index server documentation itself, or
on MSDN. I have done index queries using Oledb driver for Index server, but
not combined with SQL server.

One idea is to create a linked server from SQL Server -- not sure if this is
even possible. But if it is, then you could query them together and combine
results.

http://support.microsoft.com/default...b;en-us;198493

The above article has precisely what you are looking for -- querying index
server from a SQL server. Just add another query and union the results.

--
Manohar Kamath
Editor, .netBooks
www.dotnetbooks.com


"Alan" <> wrote in message
news:...
> I'm just about to start a project that needs to combine the results of a

SQL
> Server query with the results of an Index Server query. The basic idea is
> that the user enters/selects a bunch of search criteria on a form. Most of
> the criteria selected by the user will be used to select records from the
> database - standard WHERE clause stuff - but the user can also enter
> free-text that should be searched for in associated uploaded documents.

The
> documents are sitting in the file-system with file-name pointers only

stored
> in the database (not the document). Only records where the associated
> free-text is found in the documents should be returned. I'm new to Index
> Server and am wondering how is this done. Any good references/tutes?
>
> ASP 3.0
> IIS 5.0
> Windows 2000 Server
> SQL Server 2000
>
> Cheers,
>
> Alan
>
>



 
Reply With Quote
 
 
 
 
John Kane
Guest
Posts: n/a
 
      09-02-2003
Alan,
Manohar, here's an example of both a local IS for the files and UNION'ed
with SQL FTS:

use master
go
EXEC sp_addlinkedserver 'Monarch', '', 'MSIDXS', 'Web', NULL, NULL
EXEC sp_addlinkedsrvlogin 'Monarch', 'FALSE', NULL, 'abc', ''
go

-- test IS query
select * from OpenQuery(Monarch, 'Select Directory,
FileName, size, Create, Write From SCOPE() Where size <= 200')
go

-- MSIDXS combined or UNIONed with SQL FTS query...

select * from titles where contains(*, 'books')
union
select * from OpenQuery(Monarch,
'select Directory, FileName, size, Create, Write
from SCOPE() where CONTAINS(Contents,''Index'')> 0 ')

Regards,
John




"Manohar Kamath [MVP]" <> wrote in message
news:#...
> There are some good references in the Index server documentation itself,

or
> on MSDN. I have done index queries using Oledb driver for Index server,

but
> not combined with SQL server.
>
> One idea is to create a linked server from SQL Server -- not sure if this

is
> even possible. But if it is, then you could query them together and

combine
> results.
>
> http://support.microsoft.com/default...b;en-us;198493
>
> The above article has precisely what you are looking for -- querying index
> server from a SQL server. Just add another query and union the results.
>
> --
> Manohar Kamath
> Editor, .netBooks
> www.dotnetbooks.com
>
>
> "Alan" <> wrote in message
> news:...
> > I'm just about to start a project that needs to combine the results of a

> SQL
> > Server query with the results of an Index Server query. The basic idea

is
> > that the user enters/selects a bunch of search criteria on a form. Most

of
> > the criteria selected by the user will be used to select records from

the
> > database - standard WHERE clause stuff - but the user can also enter
> > free-text that should be searched for in associated uploaded documents.

> The
> > documents are sitting in the file-system with file-name pointers only

> stored
> > in the database (not the document). Only records where the associated
> > free-text is found in the documents should be returned. I'm new to Index
> > Server and am wondering how is this done. Any good references/tutes?
> >
> > ASP 3.0
> > IIS 5.0
> > Windows 2000 Server
> > SQL Server 2000
> >
> > Cheers,
> >
> > Alan
> >
> >

>
>



 
Reply With Quote
 
Alan
Guest
Posts: n/a
 
      09-10-2003
I've been a bit slack in replying and haven't tested any of this yet but all
this talk of UNIONing is getting me worried. Basically I'm looking for JOIN
functionality, where a row of data in my Applicants table includes the
path-name to a resume and covering letter stored in the file-system. I'm
hoping to query IS for content in the documents (keyword search), JOIN these
results with the results of a normal ...WHERE xxx LIKE 'xxx' AND yyy =
'yyy'... (etc.) query of the Applicant row data itself, and then display a
row for each Applicant record that satisfied both the SQL and IS search
criteria.

I'll have a read of the references provided but thought I'd add the above in
the meantime just to make sure I haven't misrepresented what I'm trying to
do. Apologies if this is all explained in the links provided.

Cheers,

Alan


"John Kane" <jt-> wrote in message
news:eZ8$...
> Alan,
> Manohar, here's an example of both a local IS for the files and UNION'ed
> with SQL FTS:
>
> use master
> go
> EXEC sp_addlinkedserver 'Monarch', '', 'MSIDXS', 'Web', NULL, NULL
> EXEC sp_addlinkedsrvlogin 'Monarch', 'FALSE', NULL, 'abc', ''
> go
>
> -- test IS query
> select * from OpenQuery(Monarch, 'Select Directory,
> FileName, size, Create, Write From SCOPE() Where size <= 200')
> go
>
> -- MSIDXS combined or UNIONed with SQL FTS query...
>
> select * from titles where contains(*, 'books')
> union
> select * from OpenQuery(Monarch,
> 'select Directory, FileName, size, Create, Write
> from SCOPE() where CONTAINS(Contents,''Index'')> 0 ')
>
> Regards,
> John
>
>
>
>
> "Manohar Kamath [MVP]" <> wrote in message
> news:#...
> > There are some good references in the Index server documentation itself,

> or
> > on MSDN. I have done index queries using Oledb driver for Index server,

> but
> > not combined with SQL server.
> >
> > One idea is to create a linked server from SQL Server -- not sure if

this
> is
> > even possible. But if it is, then you could query them together and

> combine
> > results.
> >
> > http://support.microsoft.com/default...b;en-us;198493
> >
> > The above article has precisely what you are looking for -- querying

index
> > server from a SQL server. Just add another query and union the results.
> >
> > --
> > Manohar Kamath
> > Editor, .netBooks
> > www.dotnetbooks.com
> >
> >
> > "Alan" <> wrote in message
> > news:...
> > > I'm just about to start a project that needs to combine the results of

a
> > SQL
> > > Server query with the results of an Index Server query. The basic idea

> is
> > > that the user enters/selects a bunch of search criteria on a form.

Most
> of
> > > the criteria selected by the user will be used to select records from

> the
> > > database - standard WHERE clause stuff - but the user can also enter
> > > free-text that should be searched for in associated uploaded

documents.
> > The
> > > documents are sitting in the file-system with file-name pointers only

> > stored
> > > in the database (not the document). Only records where the associated
> > > free-text is found in the documents should be returned. I'm new to

Index
> > > Server and am wondering how is this done. Any good references/tutes?
> > >
> > > ASP 3.0
> > > IIS 5.0
> > > Windows 2000 Server
> > > SQL Server 2000
> > >
> > > Cheers,
> > >
> > > Alan
> > >
> > >

> >
> >

>
>



 
Reply With Quote
 
Manohar Kamath [MVP]
Guest
Posts: n/a
 
      09-10-2003
Since you can UNION across databases, you can JOIN as well. I don't see any
problems there.

--
Manohar Kamath
Editor, .netBooks
www.dotnetbooks.com


"Alan" <> wrote in message
news:%23DTMFB%...
> I've been a bit slack in replying and haven't tested any of this yet but

all
> this talk of UNIONing is getting me worried. Basically I'm looking for

JOIN
> functionality, where a row of data in my Applicants table includes the
> path-name to a resume and covering letter stored in the file-system. I'm
> hoping to query IS for content in the documents (keyword search), JOIN

these
> results with the results of a normal ...WHERE xxx LIKE 'xxx' AND yyy =
> 'yyy'... (etc.) query of the Applicant row data itself, and then display a
> row for each Applicant record that satisfied both the SQL and IS search
> criteria.
>
> I'll have a read of the references provided but thought I'd add the above

in
> the meantime just to make sure I haven't misrepresented what I'm trying to
> do. Apologies if this is all explained in the links provided.
>
> Cheers,
>
> Alan
>
>
> "John Kane" <jt-> wrote in message
> news:eZ8$...
> > Alan,
> > Manohar, here's an example of both a local IS for the files and UNION'ed
> > with SQL FTS:
> >
> > use master
> > go
> > EXEC sp_addlinkedserver 'Monarch', '', 'MSIDXS', 'Web', NULL, NULL
> > EXEC sp_addlinkedsrvlogin 'Monarch', 'FALSE', NULL, 'abc', ''
> > go
> >
> > -- test IS query
> > select * from OpenQuery(Monarch, 'Select Directory,
> > FileName, size, Create, Write From SCOPE() Where size <= 200')
> > go
> >
> > -- MSIDXS combined or UNIONed with SQL FTS query...
> >
> > select * from titles where contains(*, 'books')
> > union
> > select * from OpenQuery(Monarch,
> > 'select Directory, FileName, size, Create, Write
> > from SCOPE() where CONTAINS(Contents,''Index'')> 0 ')
> >
> > Regards,
> > John
> >
> >
> >
> >
> > "Manohar Kamath [MVP]" <> wrote in message
> > news:#...
> > > There are some good references in the Index server documentation

itself,
> > or
> > > on MSDN. I have done index queries using Oledb driver for Index

server,
> > but
> > > not combined with SQL server.
> > >
> > > One idea is to create a linked server from SQL Server -- not sure if

> this
> > is
> > > even possible. But if it is, then you could query them together and

> > combine
> > > results.
> > >
> > > http://support.microsoft.com/default...b;en-us;198493
> > >
> > > The above article has precisely what you are looking for -- querying

> index
> > > server from a SQL server. Just add another query and union the

results.
> > >
> > > --
> > > Manohar Kamath
> > > Editor, .netBooks
> > > www.dotnetbooks.com
> > >
> > >
> > > "Alan" <> wrote in message
> > > news:...
> > > > I'm just about to start a project that needs to combine the results

of
> a
> > > SQL
> > > > Server query with the results of an Index Server query. The basic

idea
> > is
> > > > that the user enters/selects a bunch of search criteria on a form.

> Most
> > of
> > > > the criteria selected by the user will be used to select records

from
> > the
> > > > database - standard WHERE clause stuff - but the user can also enter
> > > > free-text that should be searched for in associated uploaded

> documents.
> > > The
> > > > documents are sitting in the file-system with file-name pointers

only
> > > stored
> > > > in the database (not the document). Only records where the

associated
> > > > free-text is found in the documents should be returned. I'm new to

> Index
> > > > Server and am wondering how is this done. Any good references/tutes?
> > > >
> > > > ASP 3.0
> > > > IIS 5.0
> > > > Windows 2000 Server
> > > > SQL Server 2000
> > > >
> > > > Cheers,
> > > >
> > > > Alan
> > > >
> > > >
> > >
> > >

> >
> >

>
>



 
Reply With Quote
 
Alan
Guest
Posts: n/a
 
      09-11-2003
Thanks for the reply (again). What does IS use as a key value - is it common
to take the filename of the document as found by IS and (in my case) join
that with the value of the filename column in SQL?

Cheers,

Alan

"Manohar Kamath [MVP]" <> wrote in message
news:ulPpWy%...
> Since you can UNION across databases, you can JOIN as well. I don't see

any
> problems there.
>
> --
> Manohar Kamath
> Editor, .netBooks
> www.dotnetbooks.com
>
>
> "Alan" <> wrote in message
> news:%23DTMFB%...
> > I've been a bit slack in replying and haven't tested any of this yet but

> all
> > this talk of UNIONing is getting me worried. Basically I'm looking for

> JOIN
> > functionality, where a row of data in my Applicants table includes the
> > path-name to a resume and covering letter stored in the file-system. I'm
> > hoping to query IS for content in the documents (keyword search), JOIN

> these
> > results with the results of a normal ...WHERE xxx LIKE 'xxx' AND yyy =
> > 'yyy'... (etc.) query of the Applicant row data itself, and then display

a
> > row for each Applicant record that satisfied both the SQL and IS search
> > criteria.
> >
> > I'll have a read of the references provided but thought I'd add the

above
> in
> > the meantime just to make sure I haven't misrepresented what I'm trying

to
> > do. Apologies if this is all explained in the links provided.
> >
> > Cheers,
> >
> > Alan
> >
> >
> > "John Kane" <jt-> wrote in message
> > news:eZ8$...
> > > Alan,
> > > Manohar, here's an example of both a local IS for the files and

UNION'ed
> > > with SQL FTS:
> > >
> > > use master
> > > go
> > > EXEC sp_addlinkedserver 'Monarch', '', 'MSIDXS', 'Web', NULL, NULL
> > > EXEC sp_addlinkedsrvlogin 'Monarch', 'FALSE', NULL, 'abc', ''
> > > go
> > >
> > > -- test IS query
> > > select * from OpenQuery(Monarch, 'Select Directory,
> > > FileName, size, Create, Write From SCOPE() Where size <= 200')
> > > go
> > >
> > > -- MSIDXS combined or UNIONed with SQL FTS query...
> > >
> > > select * from titles where contains(*, 'books')
> > > union
> > > select * from OpenQuery(Monarch,
> > > 'select Directory, FileName, size, Create, Write
> > > from SCOPE() where CONTAINS(Contents,''Index'')> 0 ')
> > >
> > > Regards,
> > > John
> > >
> > >
> > >
> > >
> > > "Manohar Kamath [MVP]" <> wrote in

message
> > > news:#...
> > > > There are some good references in the Index server documentation

> itself,
> > > or
> > > > on MSDN. I have done index queries using Oledb driver for Index

> server,
> > > but
> > > > not combined with SQL server.
> > > >
> > > > One idea is to create a linked server from SQL Server -- not sure if

> > this
> > > is
> > > > even possible. But if it is, then you could query them together and
> > > combine
> > > > results.
> > > >
> > > > http://support.microsoft.com/default...b;en-us;198493
> > > >
> > > > The above article has precisely what you are looking for -- querying

> > index
> > > > server from a SQL server. Just add another query and union the

> results.
> > > >
> > > > --
> > > > Manohar Kamath
> > > > Editor, .netBooks
> > > > www.dotnetbooks.com
> > > >
> > > >
> > > > "Alan" <> wrote in message
> > > > news:...
> > > > > I'm just about to start a project that needs to combine the

results
> of
> > a
> > > > SQL
> > > > > Server query with the results of an Index Server query. The basic

> idea
> > > is
> > > > > that the user enters/selects a bunch of search criteria on a form.

> > Most
> > > of
> > > > > the criteria selected by the user will be used to select records

> from
> > > the
> > > > > database - standard WHERE clause stuff - but the user can also

enter
> > > > > free-text that should be searched for in associated uploaded

> > documents.
> > > > The
> > > > > documents are sitting in the file-system with file-name pointers

> only
> > > > stored
> > > > > in the database (not the document). Only records where the

> associated
> > > > > free-text is found in the documents should be returned. I'm new to

> > Index
> > > > > Server and am wondering how is this done. Any good

references/tutes?
> > > > >
> > > > > ASP 3.0
> > > > > IIS 5.0
> > > > > Windows 2000 Server
> > > > > SQL Server 2000
> > > > >
> > > > > Cheers,
> > > > >
> > > > > Alan
> > > > >
> > > > >
> > > >
> > > >
> > >
> > >

> >
> >

>
>



 
Reply With Quote
 
Manohar Kamath [MVP]
Guest
Posts: n/a
 
      09-11-2003
Depends on your table definition in SQL, although file path/name would be an
obvious choice.

--
Manohar Kamath
Editor, .netBooks
www.dotnetbooks.com


"Alan" <> wrote in message
news:...
> Thanks for the reply (again). What does IS use as a key value - is it

common
> to take the filename of the document as found by IS and (in my case) join
> that with the value of the filename column in SQL?
>
> Cheers,
>
> Alan
>
> "Manohar Kamath [MVP]" <> wrote in message
> news:ulPpWy%...
> > Since you can UNION across databases, you can JOIN as well. I don't see

> any
> > problems there.
> >
> > --
> > Manohar Kamath
> > Editor, .netBooks
> > www.dotnetbooks.com
> >
> >
> > "Alan" <> wrote in message
> > news:%23DTMFB%...
> > > I've been a bit slack in replying and haven't tested any of this yet

but
> > all
> > > this talk of UNIONing is getting me worried. Basically I'm looking for

> > JOIN
> > > functionality, where a row of data in my Applicants table includes the
> > > path-name to a resume and covering letter stored in the file-system.

I'm
> > > hoping to query IS for content in the documents (keyword search), JOIN

> > these
> > > results with the results of a normal ...WHERE xxx LIKE 'xxx' AND yyy =
> > > 'yyy'... (etc.) query of the Applicant row data itself, and then

display
> a
> > > row for each Applicant record that satisfied both the SQL and IS

search
> > > criteria.
> > >
> > > I'll have a read of the references provided but thought I'd add the

> above
> > in
> > > the meantime just to make sure I haven't misrepresented what I'm

trying
> to
> > > do. Apologies if this is all explained in the links provided.
> > >
> > > Cheers,
> > >
> > > Alan
> > >
> > >
> > > "John Kane" <jt-> wrote in message
> > > news:eZ8$...
> > > > Alan,
> > > > Manohar, here's an example of both a local IS for the files and

> UNION'ed
> > > > with SQL FTS:
> > > >
> > > > use master
> > > > go
> > > > EXEC sp_addlinkedserver 'Monarch', '', 'MSIDXS', 'Web', NULL,

NULL
> > > > EXEC sp_addlinkedsrvlogin 'Monarch', 'FALSE', NULL, 'abc', ''
> > > > go
> > > >
> > > > -- test IS query
> > > > select * from OpenQuery(Monarch, 'Select Directory,
> > > > FileName, size, Create, Write From SCOPE() Where size <= 200')
> > > > go
> > > >
> > > > -- MSIDXS combined or UNIONed with SQL FTS query...
> > > >
> > > > select * from titles where contains(*, 'books')
> > > > union
> > > > select * from OpenQuery(Monarch,
> > > > 'select Directory, FileName, size, Create, Write
> > > > from SCOPE() where CONTAINS(Contents,''Index'')> 0 ')
> > > >
> > > > Regards,
> > > > John
> > > >
> > > >
> > > >
> > > >
> > > > "Manohar Kamath [MVP]" <> wrote in

> message
> > > > news:#...
> > > > > There are some good references in the Index server documentation

> > itself,
> > > > or
> > > > > on MSDN. I have done index queries using Oledb driver for Index

> > server,
> > > > but
> > > > > not combined with SQL server.
> > > > >
> > > > > One idea is to create a linked server from SQL Server -- not sure

if
> > > this
> > > > is
> > > > > even possible. But if it is, then you could query them together

and
> > > > combine
> > > > > results.
> > > > >
> > > > > http://support.microsoft.com/default...b;en-us;198493
> > > > >
> > > > > The above article has precisely what you are looking for --

querying
> > > index
> > > > > server from a SQL server. Just add another query and union the

> > results.
> > > > >
> > > > > --
> > > > > Manohar Kamath
> > > > > Editor, .netBooks
> > > > > www.dotnetbooks.com
> > > > >
> > > > >
> > > > > "Alan" <> wrote in message
> > > > > news:...
> > > > > > I'm just about to start a project that needs to combine the

> results
> > of
> > > a
> > > > > SQL
> > > > > > Server query with the results of an Index Server query. The

basic
> > idea
> > > > is
> > > > > > that the user enters/selects a bunch of search criteria on a

form.
> > > Most
> > > > of
> > > > > > the criteria selected by the user will be used to select records

> > from
> > > > the
> > > > > > database - standard WHERE clause stuff - but the user can also

> enter
> > > > > > free-text that should be searched for in associated uploaded
> > > documents.
> > > > > The
> > > > > > documents are sitting in the file-system with file-name pointers

> > only
> > > > > stored
> > > > > > in the database (not the document). Only records where the

> > associated
> > > > > > free-text is found in the documents should be returned. I'm new

to
> > > Index
> > > > > > Server and am wondering how is this done. Any good

> references/tutes?
> > > > > >
> > > > > > ASP 3.0
> > > > > > IIS 5.0
> > > > > > Windows 2000 Server
> > > > > > SQL Server 2000
> > > > > >
> > > > > > Cheers,
> > > > > >
> > > > > > Alan
> > > > > >
> > > > > >
> > > > >
> > > > >
> > > >
> > > >
> > >
> > >

> >
> >

>
>



 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
How can I make this more efficient? (combining DataSet results with the results of a DB lookup.) Ken Fine ASP .Net 3 07-23-2008 08:11 AM
sorting index-15, index-9, index-110 "the human way"? Tomasz Chmielewski Perl Misc 4 03-04-2008 05:01 PM
New to ASP: Read SQL user table output results in a table on a ASP webpage matching search field Yas ASP .Net 0 08-01-2007 04:02 PM
How to extract data from SQL Server with the Index Server Search Result? savvy ASP .Net 0 01-14-2006 06:04 PM
UPDATE : Help Required to Populate search results - Array Search Craig Keightley Javascript 10 06-29-2005 10:54 AM



Advertisments
 



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57