ورود

نسخه کامل مشاهده نسخه کامل : مرتب کردن ستون جدول



P A R M I S
25-10-2008, 20:06
با سلام
یک adotable و دی بی گرید دارم که دی بی گرید به adotable وصل است و از stored procedure استفاده می کنم برای عمل ثبت در جدولم
یک ستون در جدولم با نام شماره کلاس دارم که می خوام وقتی عمل ثبت در اون رو انجام می دم اعداد به ترتیب ثبت بشن یعنی اگه اول عدد 20 را ثبت کردم و بعد عدد 10 را عدد 10 قبل از 20 در جدولم ثبت بشه و در دی بی گرید نشون داده بشه (ضمنا اون ستون از نوع int است دلفی با بانک sql )
اگه می خواین بگین از order by استفاده کنم بگید کجا استفاده کنم اینم تکه برنامم


begin
if Edit1.Text='' then
begin
ShowMessage(' ÔãÇ ÈÇíÏ ˜Ï ÇÊÇÞ ÑÇ æÇÑÏ ˜äíÏ ');
Edit1.Text:='';
edit2.Text:='';
edit3.Text:='';
edit4.Text:='';
Edit1.SetFocus;
end
else
begin
adoquery1.SQL.Clear;
adoquery1.Close;
adoquery1.SQL.Add('select * from ttkelas');
adoquery1.SQL.Add('where shomare=:a order by shomare');
adoquery1.Parameters.ParamValues['a']:=Edit1.Text;
adoquery1.Open;
if ADOQuery1.IsEmpty=false then
begin
ShowMessage(' ˜Ïí ÈÇ ÔãÇÑå '+Edit1.text+'ÏÑ ÌÏæá ãæÌæÏ ãí ÈÇÔÏ ');
Edit1.text:='';
edit2.text:='';
edit3.text:='';
edit4.text:='';
Edit1.SetFocus;
end
else
begin
adostoredproc1.Parameters [1].Value :=trim(Edit1.Text );
adostoredproc1.Parameters [2].Value :=trim(edit2.Text );
adostoredproc1.Parameters [3].Value :=trim(edit3.Text );
adostoredproc1.Parameters [4].Value :=trim(edit4.Text );
adostoredproc1.Prepared ;
adostoredproc1.ExecProc ;
Edit1.Text :='';
edit2.Text :='';
edit3.Text :='';
edit4.Text :='';
ADOTable1.Close;
ADOTable1.Open;
showmessage('ËÈÊ ˜áÇÓ ÈÇ ãæÝÞíÊ ÇäÌÇã ÔÏ');
Edit1.SetFocus ;
end;
end;
end;

romixery
26-10-2008, 08:55
سلام
بهتر نيست كه كدهاتون رو داخل تگ Code بنويسين كه هم خودتون بتون بخونيد هم بقيه بچه ها؟
در مورد سؤالتون مي تونم ازتون بپرسم چرا مي خواين هنگام درج، عناصر مرتب شده باشن؟ شما مي تونيد اول داده هاي خودتون رو درج كنيد و بعد هرجا نياز بود مرتبشون كنيد. اگه شما بخواين از درج ترتيبي استفاده كنيد، سرعت درج شما پايين خواهد رفت.
و اما در مورد اينكه orderby رو كجا بزارين: بايد بعد از عمل درج خودتون ازش استفاده كنيد:

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
موفق باشين

kont_200
27-10-2008, 09:49
از این کد موقع show کردن فرمتون می تونید استفاده نمایید



with TCustomADODataSet(DBGrid1.DataSource.DataSet) do
begin
Sort := DBGrid1.Columns[1].FieldName + ' ASC';
end;


شماره columns شماره فیلدی که داخل dbgride قرار داره است
راستی اگر error داد حتما داخل uses این کتابخانه را اضافه کنید adodb