LIN@Mit-Mc.ARPA (09/23/84)
From: Herb Lin <LIN@Mit-Mc.ARPA> I am trying to write a dBase program that will allow rapid indexed searches of a database by keyword. In other words, I want to have a database consisting of records each including a field that can include up to (say) 100 characters of keywords, and then I want to be able to display all records that include a particular keyword of interest WITHOUT going through a record by record search. All the ways I can think of to do this are very clumsy. Anyone with good ideas out there? Many bibliography management programs do this, but without knowing about their quality, I'm hesitant to go that way. thanks in advance. I will post replies to anyone who want them.
rbloom@apg-1.ARPA (09/24/84)
From: Robert Bloom DRSTE-TOI 3775 <rbloom@apg-1.ARPA> I aggree - KWOC (keyword out of context) searches in dbase II are very clumsy. What I've done is to separate the keywords into a separate field per keyword and cycle through the indexes for a search. Updateing (or adding records) becomes slow and involves re-indexing if one has more than seven indexes with standard dBase II.4 - I believe III has more capibility for simulataneous indexes. If you find a more elegant method - please tell! -bob bloom
lowans.henr@XEROX.ARPA (09/27/84)
Look in your dBASE manual for information on the "$ substring logical operator", I think this will help you. A search through the entire database is nessessary because this is the way a dabase management system works, it searches through the entire database record by record till the information is found. If it finds it in record #1, it doesn't know if record #50 also containes the correct information. If you can, input the data ranking it in ASCII collating sequence within each record. INDEXing the database will then put records with the same keywords together. Paul
LIN@Mit-Mc.ARPA (09/28/84)
From: Herb Lin <LIN@Mit-Mc.ARPA> From: lowans.henr at XEROX.ARPA Look in your dBASE manual for information on the "$ substring logical operator" ... A search through the entire database is nessessary because this is the way a dabase management system works, it searches through the entire database record by record till the information is found. If it finds it in record #1, it doesn't know if record #50 also containes the correct information. If you can, input the data ranking it in ASCII collating sequence within each record. INDEXing the database will then put records with the same keywords together. Thanks, but I think this won't work. What you are describing is certainly correct, but it will be too slow. I want something that I can use the INDEXing part on. Essentially, I want to INDEX on substrings, and I can't think of an easy way to do it.