PDA

View Full Version : در دلفی -ساخت جدول در اکسس



sardar_ahmadi
پنج شنبه 18 مرداد 1386, 10:03 صبح
دوستان من با دلفی برنامه نویسی میکنم(دلفی 7) یه برنامه دارم که دیتا بیس آن اکسس است چگونه در آن جدول جدید بسازم یعنی ماه که عوض شد یک جدول جدید به اسم همان ماه بسازد. ضمنا اگر آن جدول به اسم همان ماه وجود دارد دیگر نسازد . من در دلفی برای DB جدول ساختم با کلید و ایندکسهای دوم.... ولی در اکسس بلد نیستم. لطفا راهنمائی نمائید . تشکر فراوان

Valadi
پنج شنبه 18 مرداد 1386, 11:02 صبح
نمونه برنامه در این تاپیک هست
http://barnamenevis.org/forum/showthread.php?t=46347

sardar_ahmadi
یک شنبه 21 مرداد 1386, 07:42 صبح
دوستان جواب سوال ما در این تایپیک نبود . آیا روش دیگری وجود دارد ؟ مه میخام تاریخ را از سیستم بگیره و یک جدول با نام این تاریخ به جدولهای موجود اضافه کند . با تشکر فراوان

hedi
یک شنبه 21 مرداد 1386, 19:55 عصر
ببین جناب Sardar_ahmadi باید برای این کار از ADOX استفاده کنی با توجه به این که شما کاربر دائمی هستید و حتما قواعد برنامه نویسی را هم می دانید باید با دستورات SQL که وظیفه ایجاد Table را دارد استفاده کنی خود من از کسانی هستم که همیشه از این روش استفاده می کنم و این کار را هم در سایت کلی در تاپیک های مختلف(VBوDelphi) ترویج دادم اما هیچ کسی یک ستاره هم بما نداد و همه از ADo معمولی استفاده می کردند.حالا اگرخودت اوستایی و فهمیدی من چه می خوام بگم که هیچی اگر نه به من یک ندا بده در همین بخش تا کارت را راه بیاندازم .

sardar_ahmadi
دوشنبه 22 مرداد 1386, 07:10 صبح
جناب Hedi با تشکر از حسن توجه شما.
اما من در DB دلفی جدول ساختم و در SQl هم با دستور Insert into جدول ساختم . اما حالا میخام در Access بسازم که تا بحال موفق نشدم و کسی هم راهنمائی جامع نکرده . دستم بگیرید و پا به پا برید.

sardar_ahmadi
سه شنبه 23 مرداد 1386, 10:18 صبح
ما هنوز جواب نگرفتیم . هنوز هم منتظریم. آیا کسی هست مارا یاری کند؟

sardar_ahmadi
پنج شنبه 25 مرداد 1386, 09:38 صبح
عاجزانه تقاضا دارم که این موضوع را جدی بگیرید و جواب دهید. چون در آینده به درد بعضی ها خواهد خورد دیگران کاشتند و . . . .. . .. . ما بکاریم و دیگران . . . . . . . . . . . . .

Hamid_PaK
پنج شنبه 25 مرداد 1386, 17:02 عصر
ساختن بانک توسط کوئری SQL ...


procedure Tfrm_main.bt_maketableClick(Sender: TObject);
begin
with ado_main do
try
Prepared := True;
SQL.Text :=
'CREATE TABLE `main_table` ('+
'`id` STRING(1) PRIMARY KEY, '+
'`ensani` STRING(30), '+
'`farmandeh` STRING(30), '+
'`mantaqeh_kod` STRING(2), '+
'`mantaqeh` STRING(25), '+
'`nahieh_kod` STRING(2), '+
'`nahieh` STRING(25), '+
'`hozeh_kod` STRING(3), '+
'`hozeh` STRING(25), '+
'`paygah_kod` STRING(2), '+
'`paygah` STRING(25), '+
'`mk_kod` STRING(9) '+
//'`jens` STRING(5), '+
//'`first_id` DOUBLE DEFAULT 0, '+
//'`first_basig_kod` DOUBLE DEFAULT 0 '+
')';
ExecSQL;

SQL.Text := 'SELECT * FROM main_table';
Open;
except
on Err: Exception do ShowMessage( Err.Message );
end;
end;


یا حق ...

sardar_ahmadi
شنبه 26 آبان 1386, 08:03 صبح
جناب حمید پاک تشکر از حسن توجه شما.
و اما خطهای زیر را توضیح دهید :
with ado_main do
Prepared := True
on Err: Exception do ShowMessage( Err.Message )

Hamid_PaK
شنبه 26 آبان 1386, 16:38 عصر
دوست عزیز خط اول که همان فرمان with است که مربوط به syntax دلفی است و امکان دسترسی به خصوصیات کنترل ado_main (که یک TADOQuery است) را خواهد داد.
خط دوم نیز :

Specifies whether the command is prepared before execution.

Delphi syntax:
property Prepared: WordBool;

C++ syntax:
__property Word Prepared = {read=GetPrepared, write=SetPrepared, default=0};

Description
Set Prepared before calling the Execute method to specify whether ADO prepares the command. If Prepared is set to true and the command component is connected to a data store, ADO prepares the command before executing it. If Prepared is set to false, ADO does not prepare the command.

The default value of Prepared is false.
و خط سوم که در میان except قرار دارد وظیفه کنترل خطاهای احتمالی که در هنگام اجرای کد صورت خواهد گرفت را بر عهده دارد که با یک پنجره پیغام خطا را نمایش خواهد داد.

یا حق ...

sardar_ahmadi
یک شنبه 23 دی 1386, 12:50 عصر
دوستان من همانطور که گفتم من میخام جدولی که در Access طراحی شده (جدول جدول نه فایل) عینا کپی شود منتها با نام دیگری .
یعنی اگر جدولی با نام 8610 وجود دارد جدول جدید با نام 8611 ساخته شود با همان ساختار. باچه دستوری این کار را انجام دهم . با تشکر فراوان

mrm0101
یک شنبه 23 دی 1386, 16:46 عصر
سلام .
فرض کن توی نرم افزار حسابداری یک جدول داری مثل kol که می خواهی این جدول در پایان هر سال مالی عینا ساخته بشه .مثلا kol_1385 , kol_1386,.... حالا اینکه اطلاعات سال قبل بره توی جدول جدید یا نه دست خودت است




var
s : String;
begin
s:= inttostr(YearOf(now))
ADOCommand1.CommandText:='select * into kol_'+s+' from kol ';
ADOCommand1.Execute;
ShowMessage('دفتر کل سال مالی جدید با موفقیت ایجاد گردید ');
end;





البته این کد اطلاعات سال قبل رو هم می بره توی جدول جدید .که شما می توانید با کد نویسی فیلد ها یا رکوردهای خاصی را به جدول جدید ارسال کنید .
موفق باشید

Mahmood_M
دوشنبه 24 دی 1386, 21:36 عصر
دوست عزیز ، در این مقاله ( که لینکش در زیر هست ) نحوه تبدیل یک بانک پارادکس به اکسس توضیح داده شده که یکی از مراحل این کار هم ساخت جدول در یک فایل اکسس هست ، شاید بتونه کمکتون کنه :

http://barnamenevis.org/forum/showthread.php?t=78621

موفق باشید ...