با سلام
منم همچین چیزی رو میخوام* یعنی من یه جستجوی ساده میخوام که روی فرم قرار بدم و بین نام نام خانوادگی و معدل جستجو کنه لطفا با جزئیات چون من زیاد دلفی رو بلد نیستم.
با تشکر
نمایش نسخه قابل چاپ
با سلام
منم همچین چیزی رو میخوام* یعنی من یه جستجوی ساده میخوام که روی فرم قرار بدم و بین نام نام خانوادگی و معدل جستجو کنه لطفا با جزئیات چون من زیاد دلفی رو بلد نیستم.
با تشکر
با سلام *می خواستم در دلفی *بانک اطلاعاتی ایجاد کنم که امکان جستجو به صورت زیر را داشته باسد درصورت امکان لطف کنید کد آنرا بنویسید البته با Sql*یک بانک اطلاعاتی شامل 2 فیلد نام ونام خانوادگی داریم
1- اگر فقط فیلد نام را کاربر وارد کرد *با کلیک بر روی دکمه جستجو لیست نام ها را نمایش دهد.
2- *اگر فقط فیلد نام خانوادگی را کاربر وارد کرد *با کلیک بر روی دکمه جستجو لیست نام ها ی خانوادگی *را نمایش دهد.
3- اگر هر دو فیلد فوق را پر کرد تمام رکوردهایی که نام ونام خانوادگی انها به مقادیر فوق یکی میباشد را نمایش دهد.
4- اگر کاربر هیچ کدام از فیلدها *را وارد نکرد *با کلیک بر روی دکمه جستجو تمام رکوردهای بانک رانمایش دهد .
با سپاس
با تشکر مشکل من در مرحله 4 که مطرح کرده اید می باشد.مرحله چهارم :*
با کلیک بر روی Button کدهای مربوط به جستجو رو بنویسید.*
تمام کار های فوق انجام داده ام*
این هم کد آن ولی مشکل من این است که قسمت اول یعنی سوالات 1 و 4 اجرا میشود ولی سوالات 2و3 جواب نمی دهد؟
1- اگر*فقط*فیلد نام را کاربر وارد کرد *با کلیک بر روی دکمه جستجو لیست نام ها را نمایش دهد.*
2- *اگر*فقط*فیلد نام خانوادگی را کاربر وارد کرد *با کلیک بر روی دکمه جستجو لیست نام ها ی خانوادگی *را نمایش دهد.*
3- اگر هر دو فیلد فوق را پر کرد تمام رکوردهایی که نام ونام خانوادگی انها به مقادیر فوق یکی میباشد را نمایش دهد.*
4- اگر کاربر هیچ کدام از فیلدها *را وارد نکرد *با کلیک بر روی دکمه جستجو تمام رکوردهای بانک رانمایش دهد .*
با سپاس*
procedure TForm1.Button2Click(Sender: TObject);
begin
with dm.ADOQuery1 *do
* * *begin
* * * *if edit1.Text " " then
* * * * * begin
* * * * * * * sql.Text :="select * from tbl_st where name_st like :name_st1";
* * * * * * * parameters.ParamByName("name_st1").Value :="%"+edit2.Text +"%";
* * * * * * * open;
* * * * *end
* else *if edit3.Text " " then
* * * * *begin
* * * * * * *sql.Text :="select * from tbl_st where family_st like :family_st1";
* * * * * * *parameters.ParamByName("family_st1").V alue :="%"+edit3.Text +"%" ;
* * * * * * open ;
* * * * *end
* *
* * * else
* * * *sql.Text :="select * from tbl_st";
* * * * * end;
* * * * **
end;[برای مشاهده لینک ها شما باید عضو سایت باشید برای عضویت در سایت بر روی اینجا کلیک بکنید]* * **
سلام کاربر [برای مشاهده لینک ها شما باید عضو سایت باشید برای عضویت در سایت بر روی اینجا کلیک بکنید]
شما بایستی در مرحله اول یک دیتابیس در SQLServer یا Access یا ... طراحی کنید نه در دلفی .
مثال :
در SQLServerکد:
مرحله دوم :کد:create database test
go
use test
go
create table tblPerson(prsnName nvarchar(15),prsnFamily nvarchar(15));
go
یک پروژه ی جدید ایجاد کنید و روی فرم اصلی یک DataSource و ADOQuery بگذارید و تنظیمات مربوطه رو انجام دهید.
مرحله سوم :
دو Edit و یک Button و یک DBgrid روی فرم قرار دهید و Datasource مربوط به DBgrid* رو* برابر با دیتاسورس مربوطه قرار دهید.
مرحله چهارم :
با کلیک بر روی Button کدهای مربوط به جستجو رو بنویسید.
اگه در طول انجام مراحل بالا به مشکل برخوردید ، مطرح کنید .
اینم کد مورد نظر :
کد:
کد:procedure TForm1.btnSearchClick(Sender: TObject);
begin
DBGrid1.DataSource := DataSource1;
** with ADOQuery1* do**
********* begin
******* if (txtFamily.Text <> "") and (txtName.Text ="") then*
******* begin***
********** SQL.Clear;*
*********** sql.Text :="select * from tblPerson where prsnFamily like :prsnFamily";*
*********** parameters.ParamByName("prsnFamily").Value :="%"+txtFamily.Text +"%" ;**
********* open ;*
******* end******
** else if (txtName.Text <>"") and (txtFamily.Text = "") then****
***** begin*****
******** SQL.Clear;**
*********** sql.Text :="select * from tblPerson where prsnName like :prsnName";*
************ parameters.ParamByName("prsnName").Value :="%"+txtName.Text +"%";***
********** open;***
***** end** *
**** else if** (txtName.Text ="") and (txtFamily.Text = "") then*
****** begin**
***** SQL.Clear;**
**** sql.Text :="select * from tblPerson";****
*** open;***
******* end****
****** else if** (txtName.Text <>"") and (txtFamily.Text <> "") then
******* begin*****
******** SQL.Clear;***
********** sql.Text := "select * from tblPerson where ( prsnName like :prsnName) and (prsnFamily like :prsnFamily)";*
*
*********** parameters.ParamByName("prsnName").Value :="%"+txtName.Text +"%";**
*********** * * parameters.ParamByName("prsnFamily").Value :="%"+txtFamily.Text +"%" ;*
*********** open;*
********* end;**
** end;**
* ******* ******** end;
البته یادتون نره که میشه این رو با چندین روش نوشت ، من فقط یه روش ساده و کاربردی رو نوشتم .
اینم یک پروژه ی ساده برای جستجو از ترکیب دلفی + اکسس
البته فقط با ADOQuery، با ADOTable هم که دیگه خیلی ساده تره ...
[برای مشاهده لینک ها شما باید عضو سایت باشید برای عضویت در سایت بر روی اینجا کلیک بکنید]
دانلود پروژه : [برای مشاهده لینک ها شما باید عضو سایت باشید برای عضویت در سایت بر روی اینجا کلیک بکنید]
سلام.
شما پروژه رو دانلود کنید ، با تمام جزئیات می باشد ...
سلام به نظر شما این پروژه یه کمی حرفه ای تر از اون چیزی نیست که من میخوام؟
سلام.والا به نظر من باید از اینجا شروع کنید ...
سلام مهندس چگونگی قرار دادن* یک جستجوی ساده برای بانک database desktop رو اگه میشه توضیح بدین از نوع paradox7
تشکر