كيفية عمل بحث داخل قاعدة بيانات سكوال وى انى استخدم اى اس بى 2 اذى اكتب كودها حد يرد ضرورى جداااااااااااااااااااااا
كيفية البحث فى قاعدة يانات باستخدامasp.net 2
معليشى انا هتعبك معايا الموضع انى عندى قاعدة بيانات فيها جداول عاوز احط على الفورم اكتر من دروب دون ليست عاوز اختر الحاجات من كل دروب دون ليست ى بعد كدة ادوس سرش يعمل بحث فى قاعدة البيانات وى يطلع النتاج على مثلا جريد يعنى كدة وى معليشى انا هتعبك معايا بس والله انا محناجة جدااا علاشان المشروع واقف على كذا حتة كدة مع العلم انى انا استخدم asp.net 2 شكرااااااا جدا انا هتعبك معايا
Ramy Ramadan
1-اخى العزيز يجب عليك اولا ان تعيد انزال sql server وتنزل حاجه اسمها full text search service
وذلك باختيار custom اثناء التحميل واختار منها full textsearch service
2-
بعد كده من sql server manager تختارها ودوس run
3-
وبعدين تفتح interprise manager علشان تعدل فى الجداول بحيث تدعم خاصيه البحث
تختار الجدول وتعمل right click وتختار
full text index table->define full text on table
4-
يظهر جدول اول خطوه فيه تختار primary key للجدول
تانى خطوه تختار العواميد الى عايز تعمل البحث فيها مع العلم ان الانواع الممكن عمل بحث فيها varchar,text,char
واترك الخيار الثالث كما هو اضغط next ->finish
5-
الان كل ما عليك ان تقوم بعمل access من سى شارب او فيجوال بيسك للجداول عن طريق هذا الكود
FREETEXTTABLE( Titles, Title, 'computer cooking' ) searchTable
هذه الجمله تقوم بالبحث فى الجدول المسمى Titles وخصوصا فى العمود المسمى Title وجمله البحث هيا computer cooking
وطبعا الجمله ده ممكن تغيرها و تخدها من المستخدم
6- وجمله free text table بترجع جدول فيه عمودين اول واحد
rank وده بيمثل نسبه بتوضحلك هل النتيجه ده قريبه من الجمله الى اليوزر دخلها بنسبه قد ايه
Key وده بيمثل primary key بتاع الrecord الى بيطابق جمله البحث
7- ده مثال على الكلام الى فوق
@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.SqlClient" %>
<script Runat="Server">
Sub Button_Click( s As Object, e As EventArgs )
Dim conPubs As SqlConnection
Dim strSearch As String
Dim cmdSearch As SqlCommand
Dim dtrSearch As SqlDataReader
conPubs = New SqlConnection( "Server=Localhost;UID=sa;PWD=secret; Database=Pubs" )
strSearch = "SELECT RANK, Title FROM Titles," & _
"FREETEXTTABLE( Titles, Title, @searchphrase ) searchTable " & _
"WHERE [KEY] = Titles.Title_ID " & _
"ORDER BY RANK DESC "
cmdSearch = New SqlCommand( strSearch, conPubs )
cmdSearch.Parameters.Add( "@searchphrase", txtSearchphrase.Text )
conPubs.Open()
dtrSearch = cmdSearch.ExecuteReader()
lblResults.Text = "<table border=1 cellspacing=0 cellpadding=4>"
While dtrSearch.Read
lblResults.Text &= "<tr>"
lblResults.Text &= "<td align=right> "
lblResults.Text &= ShowRank( dtrSearch( "RANK" ) )
lblResults.Text &= "</td>"
lblResults.Text &= "<td>" & dtrSearch( "Title" ) & "</td>"
lblResults.Text &= "</tr>"
End While
lblResults.Text &= "</table>"
conPubs.Close()
End Sub
Function ShowRank( intRank As Integer ) As String
Dim intCounter As Integer
Dim strRank As String
strRank = "<font color=green>"
For intCounter = 1 to intRank / 10
strRank &= "*"
Next
strRank &= "</font>"
Return strRank
End Function
</Script>
<html>
<head><title>FreeTextTable.aspx</title></head>
<body>
<form Runat="Server">
<h2>Search Titles:</h2>
<asp:TextBox
ID="txtSearchPhrase"
Columns="50"
Runat="Server" />
<asp:Button
Text="Search!"
OnClick="Button_Click"
Runat="Server" />
<hr>
<asp:Label
ID="lblResults"
EnableViewState="False"
Runat="Server" />
</form>
</body>
</html>
اقتباس1-اخى العزيز يجب عليك اولا ان تعيد انزال sql server وتنزل حاجه اسمها full text search serviceوذلك باختيار custom اثناء التحميل واختار منها full textsearch service
اظن ان الأخ RAMYPRE لم يستخدم text data type او ذكر انه عايز يبحث في نص
طيب بص ان كنت تقصد يا RAMYPRE انك عايز تعمل جمله بحث دينامكيه يعني جمله WHERE ممكن تختلف حسب
اختيارات المستخدم و طبعا العلاقه بين هذه الاختيارات و ممكن المستخدم لا يختار من دروب دون لست معينه يعني مش عايزها تدخل في
شروط WHERE
انا كده فاهم صح ولا أخونا المشكور dead_zone أجاب عليك
و الله الموفق
لا حضرتك فاهم صح انا عاوز اختار البحث من دروب دون لست وى يعرض النتاج على جريد بس انا شغال asp.net2005
وى بردك انا عندى صفحة تانى فيها بحث بس انا سايب المستخدم تكست يكتب فية جملة بحث وى يطلعلو النتاتج فى جريد
شكراااااا جداا انا هتعبك معايا بس انا محتاجها ضرورى جدااا
Ramy Ramadan
اخى العزيز احمد طاهر الباز انت لو فاهم الطريقه الى انا كتبتها هاتعرف انها لا تستخدم للبحث فى
text data type ولكنها تستخدم للبحث فى data base ارجو التركيز قليلا قبل كتابه الرد
ياجماعه وايه المشكله drop down list او غيرها يعنى مش هاتعرف تكتب الجمله البسيطه ده
string Search = DropDownList1.SelectedItem.Text
وتاخد string وتبحث فى database بالطريقه الى ذكرتها
السلام عليكم
اسف يا باشا dead_zone
انا مقصدش حاجه خالص
يس انا حسب السؤال شايف ان full textsearch service بعيده شويه
لو فاضي ممكن توضحلي كلامك
حقك عليا يا باشا
سلام
اعتذر اخى احمد اذا كان ردى حاد شويه فنحن اخوه و الاختلاف فى الراى لا يفسد للود قضيه وسوف اوضح لك ما قصدته
نفترض ان لدينا database بها جدول اسمه book يحتوى على اعمده للاسم والمؤلف والسعر
ولدنيا dropdownList بها اسماء المؤلفين فكل ما عليك الا ان تاخذ اسم المؤلف الذى اختاره المستخدم من dropDownList وتبحث به بالطريقه التى ذكرتها فسوف تكون النتيجه انها سوف ترجع جميع record الموجوده فى database والتى يكون المؤلف لها هو الذى اختاره المستخدم فاذا كان هذا هو المطلوب فطريقه full text search
صحيحه فى هذه الحاله واعتذر مره اخرى عن ردى وشكرا
هذا الموضوع مغلق.
