PDA

View Full Version : جستجو در داده ها



faramarz_s
چهارشنبه 26 شهریور 1382, 10:04 صبح
if ( ! Page.IsPostBack ) // run 1 time
{
string strCon = ConfigurationSettings.AppSettings["ConnStr"];
SqlConnection sqlconnectionPubs = new SqlConnection(strCon);

SqlDataAdapter sqladaptertblPrimary = new
SqlDataAdapter("select * from tblPrimary ","tblPrimary");
DataSet datasetSignup=new DataSet();
sqladaptertblPrimary.Fill(datasetSignup,"tblPrimary");

DataGrid1.DataSource=datasetSignup.Tables["tblPrimary"].DefaultView;
DataGrid1.DataBind();
/*SqlConnection SqlConnectionPubs = new
SqlConnection("server=(local);uid=sa;pwd=yaali;database=MDB");

SqlDataAdapter sqldataadapterTitles = new
SqlDataAdapter("select * from tblPrimary",SqlConnectionPubs);
DataSet dataSetTitles = new DataSet();
sqldataadapterTitles.Fill(dataSetTitles,"tblPrimary");

DataGrid1.DataSource=dataSetTitles.Tables["tblPrimary"].DefaultView;
DataGrid1.DataBind();*/
}
}

Format of the initialization string does not conform to specification starting at index 0.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.ArgumentException: Format of the initialization string does not conform to specification starting at index 0.

Vahid_Nasiri
چهارشنبه 26 شهریور 1382, 11:20 صبح
ConStr شما چی بوده است؟آنرا اینجا بنویسید.

faramarz_s
چهارشنبه 26 شهریور 1382, 11:24 صبح
<appSettings>
<add key="ConnStr" value="server=Localhost;Connect Timeout=30;User ID=sa;Password=;database=MDB" />
</appSettings>

string strCon = ConfigurationSettings.AppSettings["ConnStr"];
SqlConnection sqlconnectionPubs = new SqlConnection(strCon);

Vahid_Nasiri
چهارشنبه 26 شهریور 1382, 11:53 صبح
ایرادی نمی بینم! اون تایم آوت را حذف کن و یکبار دیگر تست کن.
و یا از چیزی شبیه به این استفاده کن:

server=localhost ; uid=sa; pwd=sqlpass; database=ZarinDotNet

Vahid_Nasiri
چهارشنبه 26 شهریور 1382, 12:02 عصر
اطلاعات بیشتر در مورد کانکشن استرینگ دیگری که تعریف کرده اید:
http://www.codeproject.com/cs/database/sql_in_csharp.asp?print=true

faramarz_s
چهارشنبه 26 شهریور 1382, 16:44 عصر
با کمک دوست مشکلات فوق حل گردید اکنون با کد زیر میتوان عین کلمات تایپ شده را بدست آورد در صورتی که خواسته باشیم کلیه کلماتی که شامل کلمه و حروف تایپ شده از سوی کاربر را هم هست جستجو کرده و نمایش بدهد کد زیر چه تغییراتی باید بکند؟

string strCon = ConfigurationSettings.AppSettings["ConnStr"];
SqlConnection sqlconnectionPubs = new SqlConnection(strCon);
SqlConnection sc2=new SqlConnection("server=(local);uid=sa;pwd=;database=MDB");
//-------------------------------------------------------------------------
String str_SQL =
" select * from tblPrimary where id="+Convert.ToInt32(TextBox1.Text.Trim())+"and un='" + TextBox2.Text.Trim() +
"' and uf='"+TextBox3.Text.Trim() + "'";
//-------------------------------------------------------------------------
SqlCommand sqlcommandLogin = new SqlCommand(str_SQL, sc2);

sqlcommandLogin.Connection.Open();

SqlDataReader myReader = sqlcommandLogin.ExecuteReader();
//-------------------------------------------------------------------------
int i=0;
while(myReader.Read())
{
i++ ;
if (i>=1) break;
}
myReader.Close();

if (i>=1)
{
//lblErrorMessage.Text = "-";
//Session["user_id"]=TextBox1.Text;
SqlDataAdapter sad1 = new
SqlDataAdapter("SELECT id,un,uf,email FROM tblPrimary where id="+Convert.ToInt32(TextBox1.Text.Trim())+"and un='" + TextBox2.Text.Trim() +
"' and uf='"+TextBox3.Text.Trim() + "'",sc2);
//-------------------------------------------------------------------------
DataSet ds1 = new DataSet();
sad1.Fill(ds1,"tblPrimary");
//-------------------------------------------------------------------------
DataGrid1.Visible=true;
DataGrid1.DataSource=ds1.Tables["tblPrimary"].DefaultView;
DataGrid1.DataBind();
//-------------------------------------------------------------------------
myReader.Close();
sc2.Close();
}
else
lblErrorMessage.Text = "چنین رکوردی یافت نشد! ";
//DataGrid1.Visible=false;
myReader.Close();
sqlconnectionPubs.Close();
sc2.Close();

faramarz_s
چهارشنبه 26 شهریور 1382, 17:30 عصر
علاوه بر مورد فوق در کد زیر من تمام andها در کوئری را orکردم تا هر کدام از رکوردها را که یافت یا دوست داشت هم پیدا کند اما ایراد زیر را میگیرد:

Input string was not in a correct format.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.FormatException: Input string was not in a correct format.

Vahid_Nasiri
چهارشنبه 26 شهریور 1382, 21:06 عصر
باز هم Convert.ToInt32 را با string جمع زدی !

و در مورد پیدا کردن یک کلمه در بین یک جمله و از این صحبت ها :
http://www.uv.tietgen.dk/staff/mlha/PC/Prog/SQL/wild.html

faramarz_s
پنج شنبه 27 شهریور 1382, 09:14 صبح
در مورد or نمودن هم بفرمایید مشکلی هست؟
در ضمن اگر ممکن است یک سوال راجع به وجود کلمات کلیدی در کوئری های ساده در بخش اسکیوئل نوشته ام آنرا پاسخ دهید.
با تشکر فراوان :wink:

Vahid_Nasiri
پنج شنبه 27 شهریور 1382, 12:15 عصر
خیر مشکلی نیست ولی عموما استفاده نمی شود.

faramarz_s
پنج شنبه 27 شهریور 1382, 16:33 عصر
در سایتی برای جستجو به کاربر اعلام کرده بود که در صورت علاقه می تواند از کلمات کلیدی
استفاده کند حال ممکنه نمونه ای ارائه دهید؟
تشکر

Vahid_Nasiri
پنج شنبه 27 شهریور 1382, 20:06 عصر
کلمات کلیدی مانند همین and و Or است که خودتان به سادگی می توانید فرم آنرا به صورت دارپ داون لیست طراحی کرده و سپس در کوئری حاصل که یک رشته بیش نیست لحاظ کنید.

faramarz_s
پنج شنبه 27 شهریور 1382, 20:43 عصر
بله متوجهم منظورم این بود که بدون دراپ داون خود کاربر در تکست باکس کلمه کلیدی وارد کند!

Vahid_Nasiri
پنج شنبه 27 شهریور 1382, 21:07 عصر
فکر نمی کنم!
در تکست باکس هم کلمه ی کلیدی وارد کند به راحتی می توان آنرا در قالب یک کوئری در آورد.