PDA

نسخه کامل مشاهده نسخه کامل : همه چيز در مورد Database ها



صفحه ها : 1 [2] 3

aj
08-09-2007, 10:35
سلام مرد مباح عزیز. خسته نباشید.
من به حرف شما گوش کردم آدرس های امضای شما را نگاه کردم اما باز هم اشکالاتم رفع نشد.
مثلا فرض کنیم من یک edit دارم که شامل فیلد شماره عضویت است و می خواهم بعد از تایپ شماره مثلا در dbgrid رکوردها با این مشخصات نمایش داده شود. برای این کار این دستور ***** را باید چطور بنویسم و اصلا این دستور باید برای کدام کامپوننت نوشته شود؟؟؟؟؟؟؟؟؟؟؟؟؟؟

مرد مباح
09-09-2007, 11:00
پست 245 رو دوباره و کامل بخون.
برای Table یا DataSet ویا ... میتونی از فیـلتر استفاده کنی.

مرد مباح
09-09-2007, 11:10
خوب نمی دونم هر کاری کردم erorrداد
من می خوام دوتا عدد بگیره از دو تا ادیت بعد عددای بین اون دو تا رو نشون بده
چه جوری میشه؟؟؟؟؟؟؟؟؟؟؟؟؟

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

aj
09-09-2007, 11:51
سلام
با عرض شرمندگی باید بگم من پست 245 را خوندم اما هر کار کردم نتونستم اجرا کنم.
من برای رویداد FilterRecord جدولم کدهایی را که گفتید نوشتم مثلا
Table1.filter := 'NUM = '+edit1.text;

اما می خواهم بدونم در حالت اجرا بعد از تایپ، مثلا عدد 25 در edit1 چطور باید خروجی جستجو، نمایش داده شود؟ من می خواهم رکوردهای یافته شده با این فیلد را روی dbgrid ببینم. اما با نوشتن این کد برای table هیچ اتفاق خاصی نمی افتد !

مرد مباح
10-09-2007, 09:56
شما باید خاصیت Filterd رو برار True قرار بدین.
اینو توی درسهای اولیه گفته بودم و فکر کردم مطالعه کردید.

موفق باشید

ARASH66
10-09-2007, 10:31
يك سوال داشتم !
اين درسهايي كه ( رد مباح ) زحمتشو كشيديد براي چه نوع ديتابيسه !
و يا اينكه فرقي نداره با هر نوع برنامه ديتابيسي هست و فرقي نداره !؟

ploto
10-09-2007, 10:57
فیلدها از نوع عددی هستن .
adotable1.filter:='code<strtoint(edit1.text) and code >strtoint(edit2.text)'dastoori ke neveshtam
خوب من اینو مینویسم ارور میده .البته موقع اجرا
میگه که مقدارایی که وارد میکنه نمیدونم تداخل داره ؟؟؟!!! یه چیزی تو این مایه ها

aj
10-09-2007, 11:23
مرد مباح عزیز
من همه ی این ها را با دقت خوندم و خاصیت Filterd رو برای جدول True کردم اما باز جواب نمی گیرم.

ploto
10-09-2007, 18:47
خوب من چیکار کنم حالا ؟؟
این کد اشتباهه؟؟

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

درستش چه جوریه؟؟/

ploto
11-09-2007, 10:42
يك سوال داشتم !
اين درسهايي كه ( رد مباح ) زحمتشو كشيديد براي چه نوع ديتابيسه !
و يا اينكه فرقي نداره با هر نوع برنامه ديتابيسي هست و فرقي نداره !؟

ایشون برای همه ی دیتا بیسها توضیحات لازم رو دادند (dbf , sql , access , ....).
البته واقعا دستشون درد نکنه:20:

ARASH66
11-09-2007, 11:21
ایشون برای همه ی دیتا بیسها توضیحات لازم رو دادند (dbf , sql , access , ....).
البته واقعا دستشون درد نکنه:20:
دوست عزيز ممنونم !
ولي چون زياد آشنا نيستم !
اگر بشه دسته بندي بهتري داشته باشه و صفحات رو با مشخص كردن نوع ديتابيس بهم بگيد ممنونم ميشم تا ما هم از آموزش هاي دوست عزيزمون استفاده كنيم !

مرد مباح
12-09-2007, 10:21
فیلدها از نوع عددی هستن .
adotable1.filter:='code<strtoint(edit1.text) and code >strtoint(edit2.text)'dastoori ke neveshtam
خوب من اینو مینویسم ارور میده .البته موقع اجرا
میگه که مقدارایی که وارد میکنه نمیدونم تداخل داره ؟؟؟!!! یه چیزی تو این مایه ها

دوست عزیز.
این ّFilter که نوشتی اشتباه هست. شما باید بخشهای مختلف رو از هم جدا کنی
یعنی بخشهایی که از رو یک Edit خونده میشه رو باید بیرون علامت' قرار دهسد.
نتیجه :

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

ضمنا درتعریف ***** شما نباید از فرامین Strtoint استفاده کنی. بلکه کاملا بلعکس شما باید برای جنس String از یک تابع اشتفاده کنید و یا از روندی که در بالا توضیح داده شده بهره ببرید.

مرد مباح
12-09-2007, 10:25
دوست عزيز ممنونم !
ولي چون زياد آشنا نيستم !
اگر بشه دسته بندي بهتري داشته باشه و صفحات رو با مشخص كردن نوع ديتابيس بهم بگيد ممنونم ميشم تا ما هم از آموزش هاي دوست عزيزمون استفاده كنيم !

دوست عزیز تمام این روندها برای تمامی انواع دیتابیسها کار میکنه و هیچ مشخصه جدا کننده ای وجود نداره که من بهتون بگم.

ploto
12-09-2007, 10:58
مرد مباح جون دستتون درد نکنه.خدا خیرتون بده .
:11::8:

ARASH66
13-09-2007, 11:17
دوست عزیز تمام این روندها برای تمامی انواع دیتابیسها کار میکنه و هیچ مشخصه جدا کننده ای وجود نداره که من بهتون بگم.
دوست عزيز ممنونم !
فقط ميخوام بدونم براي شروع بايد با كدوم ديتابيس كار كرد !
و ديتابيس كامل با كارايي خوب چي هست !ۀ

مرد مباح
14-09-2007, 11:34
دیتابیس کامل و خوب میشه Access ویا SQL. که بسته به نیاز باید انتخاب کنی.
ولی اگه میخوای تازه شروع کنی به لینک امضای من یک سری بزن.

ARASH66
15-09-2007, 01:34
واقعا ممنونم !

soha996
17-09-2007, 13:22
سلام مرد مباح عزيز
واقعا دستت درد نكنه ............خيللي خيلي خسته نباشي ......از روي تاريخ تاپيكها معلومه كه بيشتر از يك ساله كه داري به سوالها جواب ميدي!!!!!!!!!!به قول معروف دمت گرم!!
من تا حالا سوالي ننوشتم ولي جواب خيلي از سوالهام را از تاپيكهاي شما گرفتم........خير ببيني جووون!!!!!!!!
و الان دارم روي يه سيستم حقوق و دستمزد كار مي كنم سوالي كه من دارم اينه كه:
ميخواهم براي هر كدوم از افراد اضافه كارهايي را كه هر ماه انجام دادندرا ذخيره كنم.........براي اين كار بايد چكار كنم؟؟؟؟؟؟؟هر فرد يك جدول؟؟؟؟؟؟چه فيلدهاي داشته باشه؟؟؟لطفا اگه مي شه يه راهنمايي بكن

soha996
17-09-2007, 13:24
سلام
ببخشيد !!!!!!!! اگه مي شه در مورد دستور locate هم كمي توضيح بديد
ممنووووون

مرد مباح
18-09-2007, 10:00
اولا به جمع دوستان این انجمتن خوش آمدید.
ثانیا جواب و توضیح مسائلی که گفتید :

1. شما باید یک Table برای مشخصات اولیه کارکنان داشته باشید نظیر نام و نام خانوادگی و ...
درصورتی که میخواین حتما اضافه کاریها در فیلد جدول جداگانه ذخیره بشه یک جدول با پارامترهای زیر کافیه:
کد پرسنلی که به جدول اول لینک باشه و ساعات کاری
ولی اگه بخواهید میتونی توی همون جدول مربوط به اطلاعات حقوق اونو تعریف کنید. برای این کار فیلدهای مورد نیاز به صورت زیر هست :
کد پرسنلی که به جدول اولیه لینک باشه و دو فیلد تاریخ که بازه حقوق را مشخص کنه و ساعات کاری عادی و ساعات کار اضافی

2. اوایل این تاپیک که مطالعه کردید اطلاعاتی درباره Locate هست. ولی اگه جوابتون رو نداده دقیقا بگید که چی میخواید تا براتون کامل در اون مورد توضیح بدم.

موفق باشی

soha996
18-09-2007, 18:00
ممنون كه وقت گذاشتين و جواب من را هم داديدويكي از مشكلاتم حل شد.
و اما توضيح بيشتر............
ببينيد اشكال من توي جستجو است .البته از خود شما ياد گرفتم كه براي جستجو روي فيلدهاي رشته اي از دستور ***** استفاده كنم...اين كار را كردم و جواب هم گرفتم ، اما مشكل من جستجو روي فيلدهايي از نوع ديگه است مثلا همين فيلدهاي تاريخ،يا فيلدهاي عددي....... من قبلا براي انها از دستور go to key استفاده مي كردم اما توي دلفي 7 روي اين تابع ازم خطا مي گيره و اون را نمي شناسه ،نميدوونم اين اشكال از دلفي منه يا ....گفتم شايد بشه به جاي go to key يه جورايي از locate استفاده كرد،اصلا ميشششه!!!!!!!!
كاري كه من ميخوام انجام بدم دقيقا اينه كه مي خوام بر اساس شماره پرسنلي كه از نوع عددي است يك ركورد را جستجو كنم و مقدار فيلدهاي اون را توي editها بريزم!!!!!اما نمي توونم:41:
در ضمن من همه اين تاپيك و دفترچه تلفن را هم خووندم اما جواب اين يكي را نگرفتم ..
ببخشيد طولاني شد خودتون گفتيد دقيقا!!!!

مرد مباح
20-09-2007, 11:16
ممنون که کامل توضیح دادید
من فرمان مورد نظرتون رو مینویسم واگه درباره اون سوالی داشتید بپرسید :

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

soha996
21-09-2007, 11:01
دوباره سلام....من بازم اومدم
ببين مرد مباح من بعد از نوشتن اين خط كد بايد چه انتظاري ازش داشته باشم؟؟؟؟؟؟؟؟
من انتظار دارم كه بعد از نوشتن اين خط بره سر ركورد مورد نظر !!!آيا درسته يا نه؟؟؟؟؟؟؟

;([ ], (table1.locate('personalkey',strtoint(edit2.text


يعني با نوشتن خط زير ديگه نام همان ركورد كه دنبالش بوديم را توي اين ليبل بريزه ولي اينكا را نمي كنه و اسم اولين ركورد را در ليبل مي ريزه


;[' lb1.Caption:=adotable1.FieldValues ['fname


حالا چييييييييييييكار كنم؟؟؟؟؟؟؟؟؟؟؟

Mavix
21-09-2007, 11:58
با سلام

سطر آخر (مقدار دهی به Label) را اینجوری بنویس :


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

مرد مباح
22-09-2007, 00:07
دوباره سلام....من بازم اومدم
ببين مرد مباح من بعد از نوشتن اين خط كد بايد چه انتظاري ازش داشته باشم؟؟؟؟؟؟؟؟
من انتظار دارم كه بعد از نوشتن اين خط بره سر ركورد مورد نظر !!!آيا درسته يا نه؟؟؟؟؟؟؟

;([ ], (table1.locate('personalkey',strtoint(edit2.text


يعني با نوشتن خط زير ديگه نام همان ركورد كه دنبالش بوديم را توي اين ليبل بريزه ولي اينكا را نمي كنه و اسم اولين ركورد را در ليبل مي ريزه


;[' lb1.Caption:=adotable1.FieldValues ['fname


حالا چييييييييييييكار كنم؟؟؟؟؟؟؟؟؟؟؟

اگه Loctae رو توی Table ایتفاده میکنی توی همون هم باید بری سراغ اطلاعات.
این کد شما توی Table میگرده و توس ADOTable میخواد نشون بده که نمیشه.

soha996
22-09-2007, 09:35
نهههههههههههههه......دوتاش adotable1 اينجا اشتباه نوشتم..........ببخشيد.

مرد مباح
22-09-2007, 12:58
فرمانی که نوشتی کاملا درسته و باید عمل بکنه.
نمیدونم مشکل از کجاست.
البته معمولا قبل از فرمان Locate از یک First استفاده میکننی که از اول دیتابیس جستجو بکنه.

soha996
23-09-2007, 00:45
سلام.... خسته نباشي
ان first هم گذاشتم اولش
اين دستورات روي فيلد name كه رشته اي است به خووبي جواب مي ده و مشكلي نداره ولي فكر كنم كه ان چون از نوع عددي است جواب نمي ده ولي همينشم خوووبه....حالا ديگه كاملا فهميدم locate چكار مي كنه...
الهي همانطور كه به ما كمك ميكني تا مشكلاتمون حل شه خدا همه مشكلاتت را حل كنه......

niaz
30-09-2007, 10:28
سلام من از بابت این تایپیک ممنونم

1. من متوجه ****** نمی شم تو درس 4 نوشتید table*****کنید

2. باز هم همون درس 4 ببینید اگه ما این کار رو کردیم و یه قسمت از جدول رو روی فرم نمایش دادیم چه جوری می تونیم به حالت اول برگردیم

در ضمن فرقی نداره data base چی باشه؟

مرد مباح
01-10-2007, 12:53
توی پست 229 توضیح کامل درباره انواع فیلنـر وجود داره.
ضمنا فیلتـر یعنی اینکه یک مجموعه فیلد رو با یک پارامتر خاص انتخاب کنی و نمایش بدی.

hp1361
03-10-2007, 14:34
با سلام

دوستان من مي خواهم از بانك SQLSERVER در برنامه هايم استفاده كنم و با سوالات زير روبرو هستم
1-بعد از اينكه بانكم رو ساختم (از طريق خود SqlServer ) كجا ذخيرش كنم ؟ تو پوشه برنامه يا تو پوشه خود sqlserver ؟
2-حالا كه بانكم رو ساختم و جاشم معلوم شد واسه كاربر چطور اين كارا رو بكنم ؟(يعني ساختن و قرار دادن بانك در مقصد )
3-چطور به بانكم وصل بشم ؟(بدون اينكه از پروپرتي كانكشن استرينگ و زدن دكمه build استفاده كنم - يعني اينكه دستي و با كد به بانك وصل بشم )


ممنون و منتظرم

DrXoX
03-10-2007, 19:39
سلام

1- فرقی نمی کنه کجا ذخیره بشه
2- شما باید از دیتابیس بک آپ بگیری و در کامپیوتر مقصد آن را Restore کنی
3- نحوه اتصال پایگاه داده SQL Server با دلفی هم در این مقاله به طور کامل توضیح داده شده که می تونید اونو از لینک زیر دانلود کنید

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

باز هم اگر سوالی بود بپرسید تا جایی که بتونم کمک می کنم

hp1361
04-10-2007, 01:07
سلام

1- فرقی نمی کنه کجا ذخیره بشه
2- شما باید از دیتابیس بک آپ بگیری و در کامپیوتر مقصد آن را Restore کنی
3- نحوه اتصال پایگاه داده SQL Server با دلفی هم در این مقاله به طور کامل توضیح داده شده که می تونید اونو از لینک زیر دانلود کنید

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

باز هم اگر سوالی بود بپرسید تا جایی که بتونم کمک می کنم


دوست عزيز خوب اگه من اين كارا رو بلد بودم كه سوال نميكردم

1-چطور بك اپ بگيرم و چطور رستور كنم ؟
2-گفتم كه ميخوام دستي و با كد به بانكم وصل بشم نه با اين روش (كد برنامه خودش همه كارا رو بكنه )


ممنون

DrXoX
04-10-2007, 02:52
دوست عزيز خوب اگه من اين كارا رو بلد بودم كه سوال نميكردم

1-چطور بك اپ بگيرم و چطور رستور كنم ؟
2-گفتم كه ميخوام دستي و با كد به بانكم وصل بشم نه با اين روش (كد برنامه خودش همه كارا رو بكنه )

ممنون

سلام

شرمنده من نمی دونستم اگر نه کامل توضیح می دادم به هر حال معذرت می خوام

برای سوال اول مراحل زیر رو به ترتیب انجام بدین:

بک آپ گرفتن در SQLServer

1- روی دیتابیسی که ساختی در SQL کلیک راست کن بعد All Tasks و بعد Backup DataBase رو بزن

2- در پنجره ظاهر شده در قسمت DataBase : نام دیتابیس دیده میشه و در قسمت Name می تونی نام فایل بک آپ رو تغییر نام بدی

3- در قسمت Destination روی دکمه Add کلیک کن سپس در قسمت File name روی دکمه ... کلیک کن و مسیری که می خواهی فایل بک آپ در آنجا ذخیره شود را از قسمت بالای پنجره انتخاب و در قسمت File name نیز یک نام برای فایل بک آپ انتخاب کن و بعد ---> OK و ---> OK و ---> OK

4- بعد از زدن Ok آخر این پیغام نمایش داده میشه
The backup operation has been completed successfully

خوب تا اینجا از دیتابیس مورد نظر بک آپ گرفتیم حالا باید آن را در کامپیوتر مقصد بتونیم Restore کنیم که دو روش برای این کار وجود داره یکی از داخل خود SQLServer و دیگری با استفاده از یک برنامه ساده دلفی

روش اول : Restore کردن دیتابیس از داخل خود SQL server

خوب الان دیتابیسی که ساختی رو از داخل SQl پاک کن (کلیک راست -->Delete و --> Yes ) و بعد مراحل زیر رو انجام بده:
1- اول باید یه دیتابیس با همون نام دیتابیس که داشتی بسازی یعنی مثلا من نام دیتابیسم رو گذاشتم Ali حالا وقتی می خوام در کامپیوتر مقصد اونو Restore کنم اول باید یه دیتابیس با همین نام بسازم

2- روی دیتابیس (مثلا Ali ) کلیک راست و بعد All Tasks و بعد Restore Database رو بزن

3- در پنجره ظاهر شده سه تا گزینه وجود داره Database , Filegroups or files , From device شما گزینه From device رو انتخاب و بعد روی دکمه Select Devices کلیک کن

4- در پنجره بعدی روی دکمه Add کلیک کن و سپس روی ... در جلوی File name کلیک کن و فایلی که در مرحله بک آپ ساخته بودی رو انتخاب کن و --> Ok و و --> Ok و --> Ok و --> Ok

روش دوم : Restore کردن با استفاده از یک برنامه ساده دلفی

با این روش می تونید backup ای را که database تون تو sql گرفتید. توسط یک برنامه دلفی ساده در sql ساخته و توسط همین برنامه با تمام table های دورنش و اطلاعات آنها restore کنید

یک adoconneciton روی فرم بگذارید! سپس روی سه نقطه خصوصیconncetion string کلیک کرده. build کلیک کرده. microsoft OLE DB Provider for SQL Server را ناتخاب کرده و next بزنید و use windows Nt را انتخاب کنید و next بزنید! test conection و ok و ok

سپس یک adocommand روی فرم بگذارید. و خصوصیت connection آنرا را برابر adoconnection1 انتخاب کنید.
یک button برای ساخت database ویکی برای restore در نظر بگیرید!
در رویداد کلیک buuton اول این کد را بنویسید!


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

البته به جای mydatabase1 نام database خودتان را بنویسید!

در همان فولدری که exe این برنامه را قرار می دهید. backup مورد نظر را نیز قرار دهید!
و دو رویداد کلیک button دوم این کد را بنویسید!


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
البته به جای mybackup نام backup خودتان را بنویسید!
و به جای mydatabase1 اسم database خودتون را!

در مورد سوال دوم اطلاع ندارم (شرمنده)

niaz
04-10-2007, 10:26
سلام
من تا صفحه 11 رو بیشتر نخوندم اگه به سوالم در صفحه های بعد اشاره شده شرمندم
در مورد استفاده از dbimage ببینید من این کدرو تو on click مربوط به db image نوشتم


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

ولی error میده یعنی بعد ار اجرا وقتی رو ش کلیک می کنمerror میده لطفا بگید مشکلش چیه؟

در ضمن فیلدی که قراره دیتا فیلد مر بوط به دی بی ایمج رو بهش لینک کنم باید از جه نوعی باشه

DrXoX
04-10-2007, 10:47
سلام

از تب Dialogs یک کنترل OpenPictureDialog روی فرمت قرار بده

و بعد در OnClick مربوط به DbImage کد زیر رو بنویس


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

در مورد سول دوم هم اگه از دیتابیس Access استفاده می کنی نوع فیلد باید OLE Object باشه

بازم اگه مشکلی بود بپرسید تا جایی که بتونم کمک میکنم

niaz
04-10-2007, 13:46
سلام
به جای filename چی باید بنویسم

ممنونم

hp1361
04-10-2007, 16:46
سلام
DrXoX عزيز دستت درد نكنه

دوستان اگه كسي قسمت دوم سوالمو جواب بده ممنون ميشم


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

DrXoX
04-10-2007, 20:13
سلام
به جای filename چی باید بنویسم

ممنونم

سلام

چیزی نیاز نیست بنویسی خود Filename رو باید بنویسی

مرد مباح
05-10-2007, 10:59
سلام
DrXoX عزيز دستت درد نكنه

دوستان اگه كسي قسمت دوم سوالمو جواب بده ممنون ميشم


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

دوست عزیز.
متوجه منظورت نشدم.
اگه منظورت کدی هست که توی ConnectionString قرار میگیره ، و میخوای اسم فایلتو عوض کنی خیلی راحته.
ولی اگه میخوای کار دیگه ای بکنی یک توضیح بده تا اگه بتونم جوابتو بدم.
موفق باشی.

مرد مباح
05-10-2007, 11:01
سلام
من تا صفحه 11 رو بیشتر نخوندم اگه به سوالم در صفحه های بعد اشاره شده شرمندم


دوست عزیز. لطف کن و از این به بعد شماره پست رو یگو چون شماره صفحه بسته به Setting افراد مختلف فرق میکنه. ممنون

hp1361
06-10-2007, 00:57
دوست عزیز.
متوجه منظورت نشدم.
اگه منظورت کدی هست که توی ConnectionString قرار میگیره ، و میخوای اسم فایلتو عوض کنی خیلی راحته.
ولی اگه میخوای کار دیگه ای بکنی یک توضیح بده تا اگه بتونم جوابتو بدم.
موفق باشی.

سلام
آره منظورم همينه

مرد مباح
06-10-2007, 10:41
hp جان. بخش ConnectionString یک سری پارامترهای خاصی داره که بسته به نوع دیتابیس ، اون پارامترها فرق میکنه و خودت میتونی چک کنی و یاد بگیری. یک بخش برای نام فایل هم داره که محل دیتابیست رو اونجا معرفی میکنی.
به همین دلیل برای برنامه هایی که نیاز دارن دیتابیس کنار برنامه اصلی باشه ،آدرس رو از فایل Exe میگیرن و همراه با نام دیتابیس توی ConnectionString اضافه میکنن.

niaz
06-10-2007, 11:37
سلام

از تب Dialogs یک کنترل OpenPictureDialog روی فرمت قرار بده

و بعد در OnClick مربوط به DbImage کد زیر رو بنویس


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

در مورد سول دوم هم اگه از دیتابیس Access استفاده می کنی نوع فیلد باید OLE Object باشه

بازم اگه مشکلی بود بپرسید تا جایی که بتونم کمک میکنم

من این کد رو نوشتم open picture dialog هم اجرا میشه ولی بعد از انتخاب تصویراین ارور رو میده

project project1.exe rasied excepttion classE invalid Graphic with message ' unknown picture file extension()
.jpg: process stoped

F A R H A D
06-10-2007, 12:05
من این کد رو نوشتم open picture dialog هم اجرا میشه ولی بعد از انتخاب تصویراین ارور رو میده

project project1.exe rasied excepttion classE invalid Graphic with message ' unknown picture file extension()
.jpg: process stoped

jpeg رو به قسمت uses یونیت اضافه کن

niaz
11-10-2007, 10:32
jpeg رو به قسمت uses یونیت اضافه کن

من این کار رو کردم اون تصویر هم روی dbimage قرار گرفت ولی تکلیف اون فیلد چی میشه؟

منظورم اون فیلدیه که dbimage رو بهش لینک کردم ببینید اصلا این امکان وجود دار ه که توی یه دیتا بیس

هر رکوردی یه عکس مربوط به خودشو داشته باشه؟؟؟

F A R H A D
11-10-2007, 23:34
من این کار رو کردم اون تصویر هم روی dbimage قرار گرفت ولی تکلیف اون فیلد چی میشه؟

منظورم اون فیلدیه که dbimage رو بهش لینک کردم ببینید اصلا این امکان وجود دار ه که توی یه دیتا بیس

هر رکوردی یه عکس مربوط به خودشو داشته باشه؟؟؟

dataset رو در حالت insert یا edit قرار بده و از کدی که DrXoX نوشته استفاده کن

DrXoX
11-10-2007, 23:50
من این کار رو کردم اون تصویر هم روی dbimage قرار گرفت ولی تکلیف اون فیلد چی میشه؟

منظورم اون فیلدیه که dbimage رو بهش لینک کردم ببینید اصلا این امکان وجود دار ه که توی یه دیتا بیس

هر رکوردی یه عکس مربوط به خودشو داشته باشه؟؟؟

سلام

فکر کنم شما هم مشکلی که چند وقتی فکرمو مشغول کرده بود رو دارین احتمالا شما DBImage رو از تب DataControl برای ذخیره کردن عکس قرار دادین

بله میشه هر رکورد دارای یک عکس و حتی بیشتر هم باشه برای این کار باید :

1- باید روی ADOTable مورد نظر دوبار کلیک کنید و در پنجره باز شده کلیک راست و گزینه Add all Field رو بزنید

2- فیلدی که برای عکس در نظر گرفته بودین را با موس درگ و روی فرم قرار بدین

3- کدی که در پست های قبلی نوشته بودم را داخل DbImage ی که در مرحله 2 روی فرم قرار دادین بنویسید

4- تمام

باز هم مشکلی بود بپرسید

azadmard_mahdi
16-10-2007, 01:47
اگه برنامه نویسهای اران میدونستند دلفی چه دنیاییه برای خودش سراغ هیچ زبان دیگه ای نمیرفتند .
مطمئن باشید بچه ها

aj
24-10-2007, 13:24
دوستان سلام.
خسته نباشید.
من می خواهم برای جدولم دوتا index بذارم البته در دیتا بیس این را تعیین کردم یعنی برای جدولم دو تا شاخص انتخاب کردم، درون دلفی هم در گزینه index name دو تا اننخاب دارم اما فقط می تونم یکی را انتخاب کنم در صورتی من می خواهم با هر دوتای اینها به ترتیب مرتب شوند مثلا اول با فیلد شماره و بعد با فیلد نام همزمان مرتب شوند اما نمیدونم این را باید کجا و چه جوری تعیین کنم.
ضمنا من رکوردهای دیتا بیسم را با dbgrid می بینم می خواهم با اجرای فرم table در حالت edit باشد یعنی رکوردهای قبلی قابل ویرایش باشند. زمانی طراحی جدول نوع رکوردها را تعیین کردم، مثلا عدد باشند یا کاراکتر. اما در این حالت برای ویرایش رکوردهای قبلی هر چیزی تایپ می شود. به عنوان مثال برای فیلد نام مریم12 که من می خواهم شرط داشته باشد و فقط حروف را بگیرد.
اگر راهنمائی کنید ممنون می شم.

مرد مباح
25-10-2007, 09:39
دوست عزیز.
دوتا ایندکس رو اگر درست توی دیتابیست تعریف کنی(این ایندکسها اگه توی اکسس و SQL باشه)دیگه نیازی نیست که تو دلفی هم دوباره تعریف کنی. (البته مطمئن نیستم ولی فکر میکنم که بتونه کار کنه)
برای سوال دومت باید بگم که اینجوری با DBGride خیلی سخته این کاری که میخوای بکنی. بهتره از یک Edit استفاده کنی و کدهاشو محدود کنی. در نظر داشته باش که "مریم12" در همه زبانها از جنس کاراکتر محسوب میشود. بنابراین داری یک چیز خاص درست میکنی و در نتیجه کد نویسیت زیاد میشه.

khoda2006
02-11-2007, 19:24
سلام دوستان
من واسه یه شرکتی یه برنامه با دلفی دارم مینویسم که اطلاعات رو بخونه و تو دیتا بیس ذخیره کنه .(خوب تا اینجا هیچی).
حالا این شرکت ما میخواد از طریق دو تا کامپیوتر به دیتابیس دسترسی داشته باشه ( هم بنویسه هم بخونه) چه طوری این کارو انجام بدم؟
یه چیز دیگه وقتی داده تکراری تو جدول وارد میکنیم پیغام خطا میده چه کدی توی دکمه insert استفاده میکنم که اول چک کنه که این داده قبلا وارد شده یا نه؟
ممنون
منتظرم
خدانگهدار

مرد مباح
03-11-2007, 10:43
1. باید دیتابیست رو توی سرور بزاری و از طریق ado به سرور لینک بشی و اطلاعات رو اونجا عوض کنی.
2. راه های زیادی داره.
یکیش اینه که قبل از ورود با Locate ببینی پارامتر مشابهی وجود داره یا نه و اگه نبود اون موقع اضافه کنی.

khoda2006
03-11-2007, 13:42
ممنون از جوابت
یه مشکل دیگه :

میخوام یه سری اطلاعات رو روی یه فرم نشون بدم از قبیل نام و نام خانوادگی و... بعد ازشون پرینت بگیرم. اصلا پرینت گرفتن تو دلفی چه طوریه ؟ وقتی پرینت میگیری فرم رو پرینت میگیره یا میتونی بگی مثلا اینا رو با طرز قرار گری خواصی پرینت بگیر؟

Mavix
03-11-2007, 15:11
با سلام

برای پرینت گرفتن میتونی خود فرم رو ازش پرینت بگیری ولی اگه بهتون بخندند از من نیست (; میتونی از کمپوننت های مخصوص اینکار استفاده کنی.

من بهتون FastReport رو توصیه میکنم ولی اگه کمپوننتش رو پیدا نکردی میتونی از FastReport استفاده کنی که رو خود دلفی است.

- البته رو دلفی 6 نصبه ولی توی دلفی 7 باید خودت اضافه اش کنی. (روش نصب رو جستجو کنی حتما است).

موفق باشین.

مرد مباح
03-11-2007, 17:39
دوست عزیز.
منظور ماویکس جان QuickReport بود .
باید فایلشو با نام bin\dclqrt70.bpl رو توی Install Packages توی دلفی وارد کنی.
موفق باشی.

khoda2006
03-11-2007, 18:47
واقعا ممنون از راهنمائیتون
اولا تشکر تشکر تشکر
دوما:
آیا با quickReport میشه رزولوشن چاپ رو هم تعیین کرد؟ من از خود فرم پرینت گرفتم خیلی بی کیفیت بود, میخوام یه پرینت با کیفیت خوب داشته باشم.
TNX
BYe

Mavix
03-11-2007, 20:33
با سلام

مرسی مرد مباح اونقدر با عجله مینویسم که خودم هم گاها قاطی میکنم.

khoda2006 جان Quick Report کارش اصلا گزارش گیری است، نگران اینجور چیرا نباش تمام انتظارات شما رو تا حد بیشتر از متوسط فراهم میکند.

khoda2006
04-11-2007, 11:54
مرسی
اگه امکان داره نحوه استفاده از QuickReport رو توضیح بدین
در ضمن من یه نسخه از این کامپوننت رو گرفتم ولی نمیدونم چه جوری باید ازش استفاده کنم ؟ تازه کرک هم نشده؟
ممنون
خدانگهدار

F A R H A D
04-11-2007, 12:02
اگه امکان داره نحوه استفاده از QuickReport رو توضیح بدین
در ضمن من یه نسخه از این کامپوننت رو گرفتم ولی نمیدونم چه جوری باید ازش استفاده کنم ؟ تازه کرک هم نشده؟
ممنون

دوست عزیز لطفا سوالاتی که به موضوع تاپیک ارتباط ندارند رو در تاپیک های دیگر پیگیری کنید.
در مورد quick report هم بارها بحث شده و آموزش هم هست. جستجو کنید
موفق باشی

hamidehsadat
04-11-2007, 12:08
چگونه مي توان نوار منو اكسس را برداريم و منوهاي پروژه خودم را بگذارم
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

Mavix
04-11-2007, 14:41
با سلام

khoda2006 جان Quick Report رو از کجا گرفتی؟! خودش رو دلفی است و نیازی به کرک نداره !!!

آموزش رو هم جستجو کن و hamidehsadat جان تاپیک جدیدی با این نام ایجاد شده.

khoda2006
09-11-2007, 01:56
آقا دستت درد نکنه منظورم fastreport بود که اشتباه کرئم کرک هم بود.
یه مشکلی دارم (مثل همیشه) چه جوری وقتی یه فایل اکسل رو با دلفی باز میکنی اطلاعاتش رو با DBedit ویرایش کنی؟ یعنی لود که شد هر فیلدی که انتخاب کردم مثلا نام و نام خانوادگی و .. رو توی dbedit ها نشون بده و بشه ویرایش کردش؟ اصلا این کار با فایل اکسل نجام میشه یا باید اکسس باشه؟اگه با اکسس میشه چه جوری؟

در ضمن دست تک تکتون درد نکنه واقعا گل کاشتین
ممنون
خدانگهدار

مرد مباح
09-11-2007, 11:37
با هر دوتا میتونی این کارو بکنی.
ولی مسئله اصلی اینجاست که اکسل بانک اطلاعاتی نیست و کار کردن با اون خیلی سختتر از اکسس هست.
برای اکیی بعد از طراحی دیتابیس باید به کمک ADOConnection و درایور Jet فایلتو به دلفی متصل کنی.
بعد هم به کمک ADOTable,ADODataset یا ADOQuery میتونی کاراتو بکنی و اگه از تب DataAccess یک DataSource به اونا لینک کنی ، خیلی راحت میتونی DBEdit , DBLabel و ... رو بهش لینک کنی.
موفق باشی.

khoda2006
10-11-2007, 01:19
سلام
اول یه AdoConnection ساختم بعد یه AdoQuery بهش متصل کرذم و و از آخر یه datasourc رو به AdoQuery وصل کردم
وقتی من dbedit رو انتخاب میکنم و datasourc اونو ست میکنم قسمت datafield پیغام
ADOQuery1 : Missing Sql Peraperty میده؟

البته فایل من اکسل هست؟

یه سوال دیگه : فایلهایی با پسوند Dbf رو چه جوری باید تو دلفی لود کرد؟

ممنون از اینکه وقت میذارین

khoda2006
16-11-2007, 01:24
ممنون از اینکه کمک کردین !!!!
مشکل بالا حل شد. ولی مشکل با فایل Dbf شروع شد

as13851365
16-11-2007, 10:46
آقا ببخشید می دونم این بحث مربوط به این قسمت نمی باشد اما چون کلمه fastreport برایم غیر قابل تحمل است این سوال را می پرسم :
سوال :
آقا می شه این کامپوننت fastreport را یک جائی آپلود کنی و ما هم دانلودش کنیم ؟

من یک fastreport دانلود کردم با حجم 7.6 مگابایت اما آنقدر فایل توش وجود داره که من کم آوردم که کدام را نصب کنم .
اگر یکی از دوستان زحمت بگشه و کامپوننت fastreport را که کرک هم باشه را برای من دربه در ارسال کنه خیلی ازش ممنون می شم.

مرد مباح
17-11-2007, 12:01
فايلهاي DBF فايلهاي بانك اطلاعاتي FoxPro هستند.
به كمك BDE توي دلفي ميتوني به اونا كاننكت بشي و ديگه نيازي هم به ADO نيست.
توي 5 پست اول اين تاپيك توضيحات درباره BDE داده شده.

NoneForce
17-11-2007, 12:25
آقا ببخشید می دونم این بحث مربوط به این قسمت نمی باشد اما چون کلمه fastreport برایم غیر قابل تحمل است این سوال را می پرسم :
سوال :
آقا می شه این کامپوننت fastreport را یک جائی آپلود کنی و ما هم دانلودش کنیم ؟

من یک fastreport دانلود کردم با حجم 7.6 مگابایت اما آنقدر فایل توش وجود داره که من کم آوردم که کدام را نصب کنم .
اگر یکی از دوستان زحمت بگشه و کامپوننت fastreport را که کرک هم باشه را برای من دربه در ارسال کنه خیلی ازش ممنون می شم.

سلام
مشكلي كه به چشم مياد اينه كه شما مشكل اساس با نحوه نصب كامپوننتها داريد. پيشنهاد مي كنيد اين مشكل را حل كنيد بعد سراغ گرفتن كامپوننت برويد.

اين لينك مستقيم FastReport 4.33 Enterprise :
(حجم هر فايل : 1.44 مگابايت)


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

as13851365
18-11-2007, 12:43
مشكلي كه به چشم مياد اينه كه شما مشكل اساس با نحوه نصب كامپوننتها داريد. پيشنهاد مي كنيد اين مشكل را حل كنيد بعد سراغ گرفتن كامپوننت برويد.


من مشکلی با نصب کامپوننت ندارم ( این ها را از مقاله های گذاشته شده در این سایت یاد گرفتم ) .



(حجم هر فايل : 1.44 مگابايت)

اندازه هات کمی مشکل داره .


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
اندازه : 1.38 مگابایت


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
اندازه : 559 کیلو بایت

اندازه کل ( حاصل جمع اندازه هر سه فایل ): 3.32 مگابایت می باشد.

در هر حال امیدوارم که موفق باشید.

duji
11-12-2007, 18:08
خیلی ممنون از آموزشهایی که به این حقیر مبتدی دادید.
از آموزشتون سپاسگزارم

duji
11-12-2007, 18:10
اينجا ميخوام اول طراحي پايگاه داده رو براي همه آموزش بدم.
لطفا در اين تاپيك تا زماني كه مطالب درسي شروع نشده چيزي ننويسيد.
بعد از آموزش براي پاسخ به سوالات در خدمتم.



خیلی ممنون از آموزشهایی که به این حقیر مبتدی دادید.
از آموزشتون سپاسگزارم

hp1361
15-12-2007, 00:08
سلام

دوستان من در برنامه ام از دیتا بیس Access استفاده کردم و با ADO بهش وصل شدم . محتویات بانکم رو بعد از ----- کردن بر اساس تاریخ در یک DBGrid نمایش داده ام .

در رویداد AfterInsert تعریف کردم که فیلد تاریخشو تاریخ امروز بزاره تا در DBGrid نمایش داده بشه (چون جدولم فیلتره)

در رویداد OnKeyPress نوشتم که اگه اینتر فشار داده شد اطلاعات ذخیره بشه و به خانه بعدی حرکت کنه .

واسه حذف رکورد جدید هم نوشتم که اگه دیلیت فشرده شد دیلیت کنه


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

مشکلی که دارم اینه که موقع دیلیت کردن یا موقع اضافه کردن اگه با موس به یک خانه دیگه برم (بغیر از فشار دادن اینتر ) ارور زیر رو میده

[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

ممنون میشم راهنمایی بفرمایین

مرد مباح
15-12-2007, 13:45
اولا لزومي نداره كه توي OnKeyPress و OnKeyDown به صورت جدا جدا بنويسي و خيلي راحت ميتوني يكيشون كني.
دوما نيازي نيست كه قبل از Delete از Edit استفاده كني.
سوما مشكل شما در اين خطوط نيست.
لطفا كدهاي OnAfterInsert رو توي تاپيك بزار. چون مشكل از اونجاس. اگه Trace كني خودت دقيق ميبيني.

hp1361
15-12-2007, 19:14
سلام

اون كد رو در پست قبلي اضافه كردم

راستي اين Trace كه گفتي چيه ؟

ممنون از توجه شما

مرد مباح
16-12-2007, 10:54
1. به نظر من بهتره اين كاري كه ميكني رو تو BeforeInsert بكني.
زمنا احتمالي كه ميدم توي ديتابيست اندازه يا جنس فيلدت مشكل داره كه اين ارر رو ميده.
ولي مطمئن نيستم.

2. Trace يعني بررسي برنامه. شما ميتوني جلوي خط مورد نظرت (در برنامه شما اولين خط بعد OnAfterInsert) روي بخش خاكستري كليك كني.
به اين ترتيب اون خط قرمز ميشه و موقع اجرا تا موقعي كه به اون خط نرسيده كاراشو ميكنه و وقتي به اون خط رسيد متوقف ميشه و ميتوني به كمك F8 برنامتو خط به خط بعد از اون نقطه چك كني و ببيني Error از كجاس.

hp1361
16-12-2007, 13:10
سلام

دوست عزیز مگه تا وقتی رکوردی به بانک اضافه نشده میشه فیلدی از اون رو تغییر داد ؟

ممنون از توجه

albaloot
19-12-2007, 11:51
با سلام
من اولین پستی هست که دارم براتون مینویسم
میخواستم ببینم آموزشی چیزی در رابطه با بانک اطلاعاتی اسکویل مطالبی دارین به ما هم بدین
البته در رابطه با اکسس هم باشه قبوله
با تشکر

albaloot
19-12-2007, 12:27
با سلام
من یک سری برنامه دلفی دیده بودم که بانک اطلااتی اون با یک پسوند دیگه بود مثل dbl dll میخواستم بدونم که این فایل ها همان بانک است یا نه و اگه هست چه جوری؟
و سوال دیگر اینکه در مورد آدرس دهی نسبی توضیحی هم بدهید

1795
19-12-2007, 13:04
با سلام
اگه ميشه توضيح بديد كه چطوري ميشه محتويات يك جدول از يك بانك رو در يك جدول از يك پايگاه داده ديگر ذخيره كرد يعني كپي كرد
با تشكر

hp1361
20-12-2007, 01:35
سلام

من در راهنماي دلفي خواندم وقتيكه محتويات يك جدول كه در يك DBGrid نمايش داده ميشه اگر ما مقادير رو در DBGrid تغيير بديم و بعد به خانه ي ديگه حركت كنيم اطلاعات ذخيره مي شوند .

1- در اينصورت ديگه لازم نيست Post رو فراخواني كنم ؟(آخه بعضي مواقع در برنامه هام پيش مياد كه اطلاعات ورودي پاك ميشن)

2- اگه اينطور باشه (با تغيير فيلد اطلاعات ذخيره بشه)و اگه كاربر نخواهد اطلاعات ذخيره بشه چه كار بايست كرد؟


ممنون

F A R H A D
22-12-2007, 14:47
با سلام
اگه ميشه توضيح بديد كه چطوري ميشه محتويات يك جدول از يك بانك رو در يك جدول از يك پايگاه داده ديگر ذخيره كرد يعني كپي كرد
با تشكر

با استفاده از query ها میتونید این کار رو انجام بدید. توضیحات بیشتر:

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

F A R H A D
22-12-2007, 14:51
سلام

من در راهنماي دلفي خواندم وقتيكه محتويات يك جدول كه در يك DBGrid نمايش داده ميشه اگر ما مقادير رو در DBGrid تغيير بديم و بعد به خانه ي ديگه حركت كنيم اطلاعات ذخيره مي شوند .

1- در اينصورت ديگه لازم نيست Post رو فراخواني كنم ؟(آخه بعضي مواقع در برنامه هام پيش مياد كه اطلاعات ورودي پاك ميشن)

2- اگه اينطور باشه (با تغيير فيلد اطلاعات ذخيره بشه)و اگه كاربر نخواهد اطلاعات ذخيره بشه چه كار بايست كرد؟


ممنون

1- نه لازم نیست
2- باید رویدادهای مختلفی رو مدیریت کنید: keypress,after scroll . مثلا اگر کاربر کلید Esc رو زد، اطلاعات ذخیره نشه. همچنین بعد از scroll کردن جدول. و مثلا فقط با کلید Enter اطلاعات ذخیره بشه. به هر حال استفاده مستقیم از dbgrid برای ذخیره اطلاعات مشکلات زیادی رو داره که بهتره روش دیگه ای استفاده شه.

afshinaghasi
26-12-2007, 14:50
سلام خوبی نخسته
می گما
من یک Adoquery دارم و تو فرمم یه کلید که کدش اینه
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
البته رکوردهارو پاک میکنه ولی قبلش یه error هم میده که حاله آدمرو میگیره اونم اینه :

adoquery1:commandtext does not return a result set::10:
ممنون میشم کمکم کنید

مرد مباح
26-12-2007, 15:09
احتمالا برنامه شما فقط توي دلفي اين ارر رو ميده و وقتي از Exe اجراش كني اينجوري نخواهد شد.

hp1361
26-12-2007, 15:11
سلام

من دو تا جدول دارم که میخوام اونارو با هم مقایسه کنم . کدومش کم داره کدومش زیاد .(مثلا بگه جدول اول دوتا رکورد از جدول دوم بیشتر یا کمتر داره و رکوردها رو هم مشخص کنه )

بهترین کار برای انجام این کار چیه ؟ (روش انجام کار) و از چی استفاده کنم (query یا چیز دیگه ؟)

ممنون و منتظرم .

راستی من یه جدول دارم که اطلاعاتی رو که بر اساس تاریخ روز ----- شده در یک dbgrid نمایش میده . اگه بخوام رکوردی بهش اضافه کنم که قبل از هرچیز فیلد تاریخش ، تاریخ روز جاری درش ذخیره شه چیکار کنم ؟(اخه اگه تاریخ وارد نشه جزو رکورد های روز جاری نمایش داده نمیشه)

مرد مباح
26-12-2007, 16:12
1. ميتوني از روند زير توي Query‌استفاده كني. البته اميدوارم كه درست نوشته باشم :

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
اميدوارم كه فرهاد جان پست منو ببينه و درست شده اين فرمان رو برات بنويسه.
چون فكر كنم اشتباه داره.

2. ميتوني مقدار تاريخ رو در DBGrid حذف و يا ReadOnly كني و خودت مقدار رو توش پر كني.

albaloot
26-12-2007, 20:48
کسی نیست جواب مارو بده .................
باید در این تاپیکو گل گرفت اونم از نوع کاه گل
اگه چیزی بارتون نیست ما به شما کمک کنیم

مرد مباح
26-12-2007, 22:35
با سلام
من یک سری برنامه دلفی دیده بودم که بانک اطلااتی اون با یک پسوند دیگه بود مثل dbl dll میخواستم بدونم که این فایل ها همان بانک است یا نه و اگه هست چه جوری؟
و سوال دیگر اینکه در مورد آدرس دهی نسبی توضیحی هم بدهید


هم ممكنه كه باشه و هم نه.
اگه باشه تازه ممكننه ديتابيسهاي عمومي و مطرح مانند اس كيو ال يا اكسس يا اوراكل باشه و يا به كمك ديتاي دروني خود دلفي روش كار شده باشه.

منظورتو از آدرس دهي نسبي نفهميدم يك نمونه يا مثال بگو تا اگه بدونم توضيح بدم.
ضمنا من دو هفته آن لاين نبودم و پستهاي قبلي رو نديدم.
اميدوارم بتونم كمكت كنم.

1795
30-12-2007, 09:03
با سلام خدمت اساتيد بزرگوار
من در برنامه اي از بانك اكسس استفاده مي كنم و با دومشكل روبرو هستم
1- اگه اطلاعات رو در يك dbgrideنمايش داده شود وبا دكمه هاي جهت به ركورد بعد از اخرين ركورد بريم موقع خارج شدن پيغام خطا ميده كه شما اخرين يا اولين ركوردتون دچار مشكل شده . البته فكر ميكنم به خاطر اينه كه موقع خروج از اين ركورد مي خواد اونو ثبت كنه براسا اينكه ديبيگريد ها تغييرات رو ذخيره مي كنن اينجور مي گم.

2- اگه در برنامه اكسس براي بانك اطلاعات مون رمز گذاشته باشيم وقتي مي خوايم در يك پروژه با كدهامون بانك رو باز كنيم خطا مي ده البته در نظر داشته باشيد كه من نمي خوام كاربر بدونه رمز بانك اكسس چيه.

با تشكر از جوابهاتون

مرد مباح
30-12-2007, 10:12
1. اين Err فقط توي كامپايلر ديده ميشه. يعني وقتي از EXE برنامه رو اجرا كني ، اين خطا رو نميبيني.
2. قبلا درباره اين موضوع صحبت شده و فكر كنم نان فورس جان در يك تاپيك جواب اين موضوع رو دادند.
البته بحث رو شخص ديگري شروع كرده بود.

1795
31-12-2007, 09:47
2. قبلا درباره اين موضوع صحبت شده و فكر كنم نان فورس جان در يك تاپيك جواب اين موضوع رو دادند.
البته بحث رو شخص ديگري شروع كرده بود.

با سلام
شما دوست عزيز كه زحمت مي كشي جواب ميدي و تايپ ميكني حداقل آدرس اون تايپيك رو هم بده نه اين كه آدم رو استخوون تو زخم بكنيد
با تشكر

مرد مباح
31-12-2007, 13:51
متاسفانه من نميدونم اين لينك كجاست
ميتونستي سرچ كنيد. چون فكر كنم كار شما براي خودتون بايد مهمتر باشه تا براي من.
ولي قاعدتا خيلي راحت توي دسته بندي كه Soldier عزيز كرده ميتوني پيداش كني.
اين كه ديگه خيلي راحته.

فكر كنم دنبال كلمه Password هم بگردي به نتيجه برسي.

1795
01-01-2008, 08:08
ممنون از راهنماييتون

مرد مباح
13-01-2008, 12:05
چون در تاپيك جداگانه اي اين مبحث صحبت شده بود من فقط پستي كه كاربرد داره رو توي اين پست قرار ميدم.
هدف از اين كد كه در پائين ميبينيد باز كردن فايل اكسس پسورددار به كمك برنامه است بدون اينكه كسي پسورد رو ببينه.
با تشكر از نان فورس عزيز كه اين جواب رو ارسال نموده بودند. :


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

ضمنا سايت زير هم منبع خوبي براي اطلاعات ConnectioString ميباشد و انواع اتصالات فايلها به دلفي و يا زبانهاي برنامه نويسي ديگه رو ميتونين اونجا پيدا كنيد. :

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

afshinaghasi
14-01-2008, 13:03
سلام خسته نباشید
سواله من درباره dbgrid است . من یه dbgrid دارم با یه DBNavigator ویک کلید تو فرمم.می دونید که وقتی می خواهیم تو جدولمون تغییراتی رو بدیم حالا چه اضافه کردن وچه تغییر رکوردها برای ذخیرش باید به یک خط بعد رفت یعنی یک ردیف جدید درست کرد با کلید + روی DBNavigator و یا کلید ایضنی که روی DBNavigator هست فشار داد تا ذخیره بشه ولی من می خوام که وقتی که رکوردی رو به جدولم اضافه می کنم بدون اینکه روی کلید ایضن کلیک کنم ذخیره بشه البته این کارو من می خوام توی کلیدم انجام بدم که کد ADOTable1.Post; روبراش نوشتم و کار کرد ولی موقعی که من هیچ تغییری تو جدولم نمیدم حالا چه تغییر و یا چه اضافه کردن رکورد جدید وقتی که کلید رو فشار میدم یه error میده Adotable1:dataset not in edit or insert mode .خوب یه چیز طبیعیه دیگه بایدم خطا بده حالا باید چیکار کنم از کجا بفهمونم که جدولم تغییر کرده یا نه ؟
:41:

afshinaghasi
14-01-2008, 14:15
هنوز نتونستم درستش کنم .البته یه متغیر بولین گذاشتم تقریبا نصف کار رو درست کرده و هر وقت مقدار اون false بود عملیات post انجام نمیشه ولی حالا چه جوری اونرو true کنم یعنی تو کدوم event قرارش بدم
حل شد !!!!!!!!!!!!!!!

ali_golpesar
22-01-2008, 11:20
دوست عزیز مطلب عالی است.
واقعا از شما ممنونم.

ali_golpesar
22-01-2008, 11:27
دوست عزیز آموزشت خیلی عالی است.
ادامه بده.
موفق باشی.

albaloot
06-02-2008, 21:34
با سلام
برای انتخاب اکسس از منوی پراپرتیز عمل میکنم
میخواستم به صورت دستی آدرس دهی کنم و آدرس دهی نسبی بدم
(می خوام بانکم بغل فایل exe ام باشه تا روی هر سیستمی جواب بده)
اگه کمک کنید ممنون میشم

مرد مباح
06-02-2008, 22:54
با سلام
برای انتخاب اکسس از منوی پراپرتیز عمل میکنم
میخواستم به صورت دستی آدرس دهی کنم و آدرس دهی نسبی بدم
(می خوام بانکم بغل فایل exe ام باشه تا روی هر سیستمی جواب بده)
اگه کمک کنید ممنون میشم

سلام دوست عزيز. فكر ميكنم قبلا در اين باره صحبت شذه. ئلي بازم ميگم.
به برنامه شما و طريقه نوشتارتون بستگي داره.
اگر از ديتابيس اكسس يا چيري شبيه به اون استفاده ميكني بايد توي بخش ConnectionString اتصالت درستش كني.
يعني توي OnShow فرمت اونو تنطيم كني.
براي اين كار هم كاقيه كه يك كانكشن درست كني و با يك كپي و پيست مقدار فايل موزد نظرت با آدرسش رو توي اون ميزون كني. همين

m*z
10-02-2008, 19:29
با سلام. يه سؤال داشتم اگه ممكنه راهنماييم كنيد.
توي اكسس توي قسمت Relationships وقتي ميخوام بين بعضي از فيلدها ارتباط برقرار كنم مثلا كد رشته در جدول1 و كد رشته در جدول2 توي Edit Relationships قسمت پايين Relationship Type رو Indeterminate نشون ميده و واسه همين وقتي چك باكس اول و دوم رو تيك ميزنم و روي Ok كليك ميكنم اين پيغام رو ميده

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
و اجازه نميده ارتباط برقرار بشه. فقط به صورت يك خط به هم وصل ميشه ديگه يك به چند اون رو نشون نميده. اين اتصال درسته؟ با توجه به اينكه ميخوام تغييرات جدول 2 توي جدول 1 هم اعمال بشه؟

مرد مباح
10-02-2008, 21:39
اولا دوست عزيز. بهتر بود اين سوال رو در بخش Office/Access ميپرسيدين.
ثاتيا وقتي ميتوني از اين نوع لينك استفاده كرد كه شما لينك رو به فيلد پريمري بدي.

موفق باشي.

F A R H A D
11-02-2008, 11:32
فقط به صورت يك خط به هم وصل ميشه ديگه يك به چند اون رو نشون نميده. اين اتصال درسته؟
من فکر میکنم شما دقیقا مفهوم یک به چند رو متوجه نشدید. یک به چند یعنی یک رکورد از جدول اول با چند رکورد از جدول دوم در ارتباط هست که این ارتباط بوسیله یک فیلد مشخص در هر دو جدول نمایش داده میشه. مثلا کد درس در جدول درسها با کد درس در جدول انتخاب واحد یک دانشجو در سیستم انتخاب واحد. پس نیازی نیست ارتباط چند خط رو به شما نمایش بده.

با توجه به اينكه ميخوام تغييرات جدول 2 توي جدول 1 هم اعمال بشه؟
از چه دیتابیسی استفاده میکنید؟اگر access هست چنین کاری نیاز به کد نویسی داره اما اگر sql server هست میتونی از طریق امکانات مختلف relationship این امکان رو در برنامه قرار بدید.

mojtaba-design
11-02-2008, 17:52
سلام دوستان،ميخواستم بگم كه چه جوري و با چه برنامه اي ميشه sql server راه انداخت و اينكه آيا بايد حتما براي استفاده از آن شبكه داشت
در ضمن به نظر شما براي يك سيستم كتابخانه چه بانكي بهتر است ( امنيت و سرعت* بالا).

F A R H A D
13-02-2008, 23:25
سلام دوستان،ميخواستم بگم كه چه جوري و با چه برنامه اي ميشه sql server راه انداخت
تشریف می برید به یک فروشگاه نرم افزار میگید SQL SERVER 2000 یا 2005 میخوام

و اينكه آيا بايد حتما براي استفاده از آن شبكه داشت
خیر


در ضمن به نظر شما براي يك سيستم كتابخانه چه بانكي بهتر است ( امنيت و سرعت* بالا).
دوست عزیز جناب مجتبی خان، با این سوالاتی که یکجا مطرح میشوند و فقط خودتون از مفهوم اونها سر در میارید انتظار پاسخ کامل نداشته باشید

tikzahraaran
19-02-2008, 22:07
سلام دوستان
می خواستم بپرسم آیا در این تاپیک در خصوص کپی کردن اطلاعات یک دیتا بیس به دیتا بیس دیگه بحث شده یا نه اگه شده لطفا شماره آن تاپیک را بذارین چون من تا آنجا که تونستم جستجو کردم
من می خواهم رکوردهای یک دیتا بیس به آخر رکوردهای دیتابیس دیگر اضافه شود و سپس رکوردهای دیتا بیس اول پاک شده و آماده دریافت رکوردهای جدید باشه
با تشکر از هماری شما

:40::40::40::40::40::40::40::40::40::40::40::40::4 0::40::40::40::2::46:

F A R H A D
20-02-2008, 08:10
ديتابيس يا جدول؟

tikzahraaran
20-02-2008, 15:04
جدول
من یک جدول از دیتا بیس اکسس را به عنوان temp قرار داده ام و می خواهم وقتی کلیه رکوردهایش کامل شد و دکمه ثبت زده شد رکوردهای این table داخل table اصلی کپی شود و دوباره رکوردهای جدول temp خالی شود
با تشکر
:40::40::40::40::40::40::40::40::40::40::40::40::4 0::40::2::46:

F A R H A D
20-02-2008, 17:11
لينك امضاي من رو ببينيد (insert into)

hasanmomen68
26-02-2008, 02:22
[سلام می بخشید می خوام اطلاعاتی رو که بین دو تاریخ هستن رو از بانک بگیرم و در دی بی گرید نشون بدم اگه می شه راهنماییم کنین.
form1.ADOQuery1.Active := False;
DBGrid1.datasource:=form1.datasource1 ;
form1.ADOQuery1.SQL.Clear;
form1.ADOQuery1.SQL.Add('Select * From Table1 Where date between 20/12/1386 and 22/12/1386');
form1.ADOQuery1.Active:= true;
همچین کدی نوشتم ولی جواب نمی ده!!!!
ممنون می شم کمکم کنین

F A R H A D
26-02-2008, 08:14
سلام دوست عزيز خوش آمديد. به جاي مقدار دادن به خصوصيت active متد open رو فراخواني كنيد ( adoquery.open ) . ضمنا اين گونه سوالات رو در تاپيكي كه قبلا ايجاد شده پيگيري كنيد "آموزش و سوالات مربوط به استفاده از دستورات sql در دلفي" (لينك امضاي من رو ببينيد)
موفق باشيد

tikzahraaran
26-02-2008, 23:12
فرهاد جان ببخشید
به غیر از SQl نمیشه با خود دلفی این کار را کرد ؟
:40::40::40::40::40::40::40::40::40::40::40::40::4 0::40::40::40::40::40::11::46:

F A R H A D
27-02-2008, 08:11
ميشه اما سرعت و انعطاف پذيري كمتري داره. filter رو در همين تاپيك جستجو كنيد

VDeveloper
27-02-2008, 10:22
----- سرعتی کمتر از یک کوئری نداره، بلکه فوق العاده سریعتر اجرا میشه، چون بصورت لوکال کار میکنه، ولی محدودیت و انعطاف پذیری کمتری داره.

F A R H A D
27-02-2008, 11:11
----- سرعتی کمتر از یک کوئری نداره، بلکه فوق العاده سریعتر اجرا میشه، چون بصورت لوکال کار میکنه، ولی محدودیت و انعطاف پذیری کمتری داره.

منظورت اينه كه filter سريع تر هست؟

VDeveloper
27-02-2008, 17:42
منظورت اينه كه filter سريع تر هست؟
بله. ظاهرا این سایت شکل فارسی Filter رو با ---- جایگزین میکنه. Filter سریعتر هست چون فقط روی داده های داخل حافظه کلاینت اعمال میشه یعنی؛ نه داده ایی از هارد میخونه، نه درخواستی به سرور ارسال میکنه تا از طریق شبکه براش نتایج جستجو برسند. اما در نوع جستجو محدودیت داره، از طرفی همیشه امکان این نیست که کل داده های محدوده مورد جستجو را در حافظه کلاینت بارگزاری کرد.

F A R H A D
27-02-2008, 18:11
چون فقط روی داده های داخل حافظه کلاینت اعمال میشه یعنی؛ نه داده ایی از هارد میخونه، نه درخواستی به سرور ارسال میکنه تا از طریق شبکه براش نتایج جستجو برسند
در كامپوننتهاي ado مطمئنا CursorLocation رو ديديد. براي اين هست كه انتخاب كنيم بار انجام كار روي كلاينت باشه يا سرور.

VDeveloper
28-02-2008, 01:17
در كامپوننتهاي ado مطمئنا CursorLocation رو ديديد. براي اين هست كه انتخاب كنيم بار انجام كار روي كلاينت باشه يا سرور.
Filter در ADO روی کرسرهای سمت سرور عمل نمیکنه.

F A R H A D
28-02-2008, 19:25
Filter در ADO روی کرسرهای سمت سرور عمل نمیکنه
منظور من هم برای دستورات sql بود نه filter . و هدف این بود که بگم برای filter مزیتی نسبت به sql نمی بینم

VDeveloper
29-02-2008, 02:25
منظور من هم برای دستورات sql بود نه filter . و هدف این بود که بگم برای filter مزیتی نسبت به sql نمی بینم
گفتم Filter کارکرد خودش رو داره. جایی که نیاز نیست جستجوی روی کل رکوردهای یک جدول صورت بگیره، یا داده های بصورت لوکال نگه داری میشند، یا جایی که بدلیل استفاده از حالت Brief Case کاربر باید با داده های بانک بصورت Offline کار بکنه و اصلا امکان استفاده از کوئری وجود نداره، Filter کارایی خودش رو نشون میده. پس نه کوئری SQL، نه Filter هیچکدوم آچار فرانسه نیستند که بشه یکی رو برای تمامی سناریوهای موجود انتخاب کرد و بهتر از دیگری دونست. هر کدوم در جای خودشون کاربرد و مزیت خاص خودشون رو دارند.

F A R H A D
29-02-2008, 17:21
جایی که بدلیل استفاده از حالت Brief Case کاربر باید با داده های بانک بصورت Offline کار بکنه و اصلا امکان استفاده از کوئری وجود نداره
منظور شما استفاده از داده ها با CDS هست؟


پس نه کوئری SQL، نه Filter هیچکدوم آچار فرانسه نیستند که بشه یکی رو برای تمامی سناریوهای موجود انتخاب کرد و بهتر از دیگری دونست
موافق نیستم

VDeveloper
29-02-2008, 17:36
منظور شما استفاده از داده ها با CDS هست؟
ADO هم می تونه Offline کار کنه.

F A R H A D
01-03-2008, 08:30
ADO هم می تونه Offline کار کنه
خوب زماني كه به صورت bath با داده ها كار مي كنيم هم استفاده از sql پشتيباني ميشه. اگر واضح تر بگي زود تر به نتيجه ميرسيم و بحث مفيدي ميشه

VDeveloper
01-03-2008, 21:16
خوب زماني كه به صورت bath با داده ها كار مي كنيم هم استفاده از sql پشتيباني ميشه.
Batch با Brief Case فرق میکنه. اینجا یعنی شما داده ایی رو از بانک میگیری، ارتباطت با بانک رو قطع میکنی، روی داده پردازش انجام میدی یا تغییرش میدی و حتی اگر لازم شد داده ها را بصورت لوکال روی دیسک ذخیره میکنی تا دفعه بعدی که به بانک متصل شدی، اون وقت تغییرات را در بانک اعمال میکنی.
نکته دیگه ایی که هست و ربطی به Brief Case نداره اینه که حتی اگر با استفاده از کوئری و یک کرسر لوکال داده ایی را در سمت کلاینت لود کنید، با تغییر خصوصیت SQL از ADOQuery، دیتاست لوکال از بین میره و درخواست جدیدی برای سرور ارسال میشه و دیتاست مجدد در حافظه کلاینت لود میشه، اما در صورت استفاده از Filter درخواست جدیدی برای سرور ایجاد نمیشه.

F A R H A D
02-03-2008, 08:19
خوب brief case با اين شرايط همون استفاده از cds هست ديگه؟

VDeveloper
02-03-2008, 20:12
خوب brief case با اين شرايط همون استفاده از cds هست ديگه؟
دوست عزیز، Brief Case یک مفهوم هست. شما می تونید این مفهوم رو در دلفی با ClientDataSet یا کامپوننت های ADO، یا کامپوننت های 3rd Party پیاده سازی کنید. معنی اش این نیست که این کار فقط با ClientDataSet امکان پذیر هست، یا ClientDataSet فقط برای این منظور بکار میره.

F A R H A D
03-03-2008, 11:17
دوست عزیز، Brief Case یک مفهوم هست
بنده هم عرض كردم brief case با اين شرايط همون استفاده از cds هست .
و منظور كلي اين بود كه طبق گفته شما:

جایی که بدلیل استفاده از حالت Brief Case کاربر باید با داده های بانک بصورت Offline کار بکنه و اصلا امکان استفاده از کوئری وجود نداره
اما در استفاده از CDS كه مفهوم brief case رو ميرسونه با دستورات sql كار كرد (طبق گفته شما اين كار امكان پذير نيست)

VDeveloper
03-03-2008, 18:17
اما در استفاده از CDS كه مفهوم brief case رو ميرسونه با دستورات sql كار كرد (طبق گفته شما اين كار امكان پذير نيست)
من نمی دونم کجای این حرف اینقدر گنگ هست. وقتی شما Offline هستید، DataSet شما، هر چی می خواد باشه، به سرور یا Data Provider ایی وصل نیست که بخواد بهش کوئری SQL بفرسته. این مفهومه؟
ثانیا، حتی اگر امکان ارسال کوئری هم داشت - نمی دونم بدون سرور به کجا - باز هم اون کوئری باید از طریق شبکه به سرور ارسال میشد، در سرور پردازش می شد، جوابش از طریق شبکه به کلاینت می رسید و در حافظه کلاینت جایگزین داده های قبلی می شد. یعنی شما نمی تونید روی داده های موجود در حافظه کلاینت با SQL کوئری بگیرید. هر بار که مقدار خصوصیت SQL یا CommandText تغییر کنه، DataSet ریست میشه، پس کارکردش با Filter متفاوت هست. این هم مفهومه؟

F A R H A D
04-03-2008, 08:10
من نمی دونم کجای این حرف اینقدر گنگ هست. وقتی شما Offline هستید، DataSet شما، هر چی می خواد باشه، به سرور یا Data Provider ایی وصل نیست که بخواد بهش کوئری SQL بفرسته. این مفهومه؟
ثانیا، حتی اگر امکان ارسال کوئری هم داشت - نمی دونم بدون سرور به کجا - باز هم اون کوئری باید از طریق شبکه به سرور ارسال میشد، در سرور پردازش می شد، جوابش از طریق شبکه به کلاینت می رسید و در حافظه کلاینت جایگزین داده های قبلی می شد. یعنی شما نمی تونید روی داده های موجود در حافظه کلاینت با SQL کوئری بگیرید. هر بار که مقدار خصوصیت SQL یا CommandText تغییر کنه، DataSet ریست میشه، پس کارکردش با Filter متفاوت هست. این هم مفهومه؟
دوست عزيز وقتي كه ميگيم استفاده از داده ها به صورت offline يعني recorset ي از سرور جدا ميشه، به كلاينت انتقال داده ميشه و ذخيره و بازيابي روي اون صورت ميگيره. حالا اگر منظور شما اين هست كه به هيچ وجه نميشه دستورات sql رو در كلاينت استفاده كرد و براي اين حرف استدلال قوي داريد بهتره به جاي به درازا كشيدن بحث منبع خودتون رو معرفي كنيد تا هم من و هم دوستان ديگه استفاده كنيم. وگرنه به درازا كشيده شدن اين بحث رو به صلاح اين تاپيك نمي بينم و از طريق پيغام خصوصي پيگيري كنيد. اگر به نتيجه رسيديم، جواب نهايي رو همين جا قرار ميديم.

این مفهومه؟
این هم مفهومه؟
لطفا از ادبيات متناسب تر استفاده كنيد.

VDeveloper
04-03-2008, 13:46
دوست عزيز وقتي كه ميگيم استفاده از داده ها به صورت offline يعني recorset ي از سرور جدا ميشه، به كلاينت انتقال داده ميشه و ذخيره و بازيابي روي اون صورت ميگيره.
به این چیزی که شما مطرح کردید نمیگن Offline !! در این روشی که شما اشاره کردید، فقط یک کپی از داده ها در سمت کلاینت نگه داری میشه و هر زمان لازم شد، برای انجام Update و سایر مسائل به سرور درخواستی ارسال میشه. در حالت Offline شما اینو دارید:
AdoDataSet.Connection := nil
اگه شما مدعی هستید که بدون کانکشن به سرور می تونید یک کوئری روی دیتاست بزنید، بسم الله...

نکته بعدی اینه که بحث ما سر مفهوم Offline یا Online نبود. بحث بر سر مزیت های کوئری بر Filter بود که شما مدعی بودید Filter هیچ مزیتی بر کوئری گرفتن نداره. فکر کنم تا الان باید با توجه به پست های قبلی جواب گرفته باشید که تغییر خصوصیت SQL = ریست شدن دیتاست. و ریست شدن دیتاست = ارسال مجدد درخواست به سرور و دریافت مجدد داده ها. این مسئله خیلی ساده و روشن هست. جای بحث اضافی هم نداره. اگر شما فکر می کنید می تونید بدون ریست شدن دیتاست خصوصیت SQL را تغییر بدید، یا روی دیتاست بدون نیاز به ارسال کوئری به سرور با SQL رکوردها را محدود کنید، بجای کشاندن بحث به مباحث نامرتبط، یک مثال ساده بزنید که توش تونستید روی یک DataSet بدون ریست کردن آن خصوصیت SQL را تغییر بدید. برای رد یک ادعا یک مثال نقض کفایت میکنه.
حالا اگر بحثی درباره Filter و کوئری با دستورات SQL دارید، من می شنوم، وگرنه الصاق زمین و زمان به این بحث مشکلی از کسی حل نمیکنه.

F A R H A D
04-03-2008, 15:19
در حالت Offline شما اینو دارید:
AdoDataSet.Connection := nil

خوب دوست عزيز از همون اول اينو ميگفتيد. ديگه جاي بحث نداره
موفق باشيد

hamed322
30-03-2008, 00:39
سلام
من هر سه تا رو دانلود کردم ولی پس از دانلود فایل اجرایی اجرا نمیشه وموقعی که با WinRAR آن هارو Extract می کنم پیام میده فایلی وجود نداره اگر میشه راهنماییم کنید.
متشکرم

elham-a
28-05-2008, 17:01
سلام
من میخواستم بدونم با دلفی جه جوری باید جدول بسازیم من تا حالا با دلفی کار نکردم هیچی سر در نمی یارم

mojtaba-design
28-05-2008, 20:05
فكر كنم منظورت ديتابيس هستش؟
خوب با دلفي كه اين كار رو نميكنن تو مثلا تو اكسس يك بانك اطلاعاتي ميسازي و چند جدول بعد ديتابيس رو لينك ميكني
سوالي؟نظري؟پيشنهادي؟

fattane1365
29-05-2008, 11:26
روش query گرفتن در دلفی رو می خوام. از چه کامپوننت هایی باید استفاده کنم و متنsql در کجا نوشته
می شود؟

Mah6447
29-05-2008, 12:27
روش query گرفتن در دلفی رو می خوام. از چه کامپوننت هایی باید استفاده کنم و متنsql در کجا نوشته
می شود؟

اگه از بانک اکسس یا اسکیوال استفاده می کنید : Adoquery
اگه از بانک پارادوکس استفاده می کنید : Query

elham-a
29-05-2008, 13:16
چه جوری باید دیتا بیس رو لینک کنم از اکسس به دلفی

khoda2006
07-06-2008, 16:02
سلام دوستان
ببخشید اگه سوالم تکراریه...
ببینید دو تا کامپیوتر دارم که با هم شبکه هستن.حالا میخوام یه برنامه بنویسم که هر دوتا به بانک اطلاعاتی دسترسی داشته باشم چه جوری میتونم این کارو انچام بدم؟
اگر دیتابیس رو روی یکی از کامپیوترا بذارم توی اون یکی کامپوتر چه جوری بهش آدرس دیتا بیس رو بدم ؟
مرسی
بای

مرد مباح
23-06-2008, 14:19
چه جوری باید دیتا بیس رو لینک کنم از اکسس به دلفی
به كمك ADOConnection و ADOTable.
براي لينك هم بايد از درايور Jet استفاده كني.
فكر ميكنم توي صفحات او ل درباره انواع ارتباطها توضيحات داده بودم.
موفق باشي

مرد مباح
23-06-2008, 14:22
سلام دوستان
ببخشید اگه سوالم تکراریه...
ببینید دو تا کامپیوتر دارم که با هم شبکه هستن.حالا میخوام یه برنامه بنویسم که هر دوتا به بانک اطلاعاتی دسترسی داشته باشم چه جوری میتونم این کارو انچام بدم؟
اگر دیتابیس رو روی یکی از کامپیوترا بذارم توی اون یکی کامپوتر چه جوری بهش آدرس دیتا بیس رو بدم ؟
مرسی
بای

فرض كن اسم كامپيوتري كه ديتابيس توشه Abbas هست.
يك جايي از اين كامپيوتر يك فولدر درست ميكني و با FullAccess شير ميكنيش. بعدش بايد توي برنامت به جاي آدرس ديتابيس بنويسي :

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

موفق باشي.

sorrowdancer
29-06-2008, 12:45
سلام دوستان
چند سوال ساده و اساسی داشتم که می تونه در طراجی دیتابیس ها کمکمون کنه:


در طراحی جداول بانک که بیشتر با اکسس کار می کنم این سوالات را جواب دهید:

1- آیا بهتر است در یک فایل اکسس جداول زیادتری داشته باشیم یا در چند فایل اکسس آنها را پخش کنیم (اتصال برنامه همزمان به چند فایل بهتره یا یک منبع)

2- اگر بتونیم مثلا یک فیلد که کاملا جدا از موضوع دیگر جداول است رو در یکی از جداول فایل اکسس قرار بدیم بهتره یا اینکه اون رو در جدولی جدا قرار بدیم (پردازش کدوم بهتره)

3- اگر اندازه یک فیلد رو که مثلا از نوع استرینگ است با Length مثلاً 80 در نظر بگیریم بهتر است یا اینکه بیاییم دو فیلد 40 تاییش کنیم و اگر مثلا بیشتر از 40 کاراکتر زده شد ادامش بره فیلد کمکیش

4- شاید در جواب مورد چهار این مورد رو جواب داد باشید که آیا اگر طول را 80 گذاشتیم و بیست کاراکتر زده شد فضای باقی مانده جایی در دیتابیس اشغال خواهد نمود یا خیر



منتظر پاسختون هستم
موفق باشید

solook
10-07-2008, 18:37
می خوام اندازه RowHeight های BDGrid به اندازه خطوط داخل هر فیلد باشه..
مثلا یک فیلد هست که اندازه یه خط هست اندازه اون باید بشه اندازه اون ولی فیلدی هست که اندازه یک صفحه هست که بشه اندازه یک صفحه

بصورت پیش فرض سایز همه اونا یکی هست .یعنی اونی که یک خط هست با اونی که 100 خط هست اندازش یکی است وا این خیلی کیفیت کارو پایین میاره.

Mehrdad-bx
11-07-2008, 11:12
مرد مباح جان سلام
این آموزش هایی که گذاشتی رو میتونی تو یه Pdf آپلود کنی؟
40 صفحه رو نمیتونم سیو کنم بخونم سخته! چون دیر دارم باهاتون همراه میشه میگم.

ممنون

carnivore
13-08-2008, 17:33
سلام
لطفاً مرا راهنمایی کنید که در دلفی چطوری دوتا از خانه های جدول را در هم ضرب کنم ، حاصل هر ضرب را در همان جدول در یک خانه دیگر به طور مجزا ذخیره کنید.' خیلی ممنونم"

مرد مباح
15-08-2008, 12:17
راههاي زيادي داره.
ولي اگه ميخواي توي ديتابيست هم ذخيره بشه ، از كدهاي زير استفاده كن.

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
اين كدها رو توي OnColExit ويا OnDrawDataCell ويا ... بسته به نيازت ميتوني بنويسي.
ضمنا اين كدي كه من اينجا نوشتم فقط براي اينه كه يك نمونه دستت بياد و ممكنه توي خيلي شرايط خطا بده كه بايد اونا رو خودت ديباگ كني.

موفق باشي.

MehrdadBX عزيز. خيلي از اين پستهايي كه داده شده سوال و جواب هست و خيلياش هم تكراريه.
متاسفانه من هم نميتونم اين همه وقت بزارم و همه اين پستها رو چك كنم و يك PDF از روش بسازم.

carnivore
16-08-2008, 05:51
ازت خیلی ممنونم جناب مرد مباح بابت کدها.:31:

carnivore
27-08-2008, 04:10
سلام
دو تا سوال دارم لطفا راهنمایم کنید.
اول اینکه : اگه توی یک جدول بخوام به طور همزمان دو تا فیلد خاص را با هم search کنم به طوری که فقط تاپل هایی توی این جدول دیده بشن که مطعلق به هردو فیلد با شند .

دوم اینکه : اکه توی DBGrid بخوام یه سری از تاپل ها رو فاکتور بگیرم که دیده نشن و یه سری خاص دیده شن چیکار کنم .

nell
27-11-2008, 00:27
سلام ممنون از مطالب خوبتون
يه سوال داشتم
من ميخوام شماره پرسنلي رو كه توي يه dbedit هست رو توي يه جدول ديگه ديگه جستجو كنم بعد اگه پيدا شد مقدار فيلد حقوق براي اون شماره پرسنلي رو بدست بيارم چيكار كنم؟

as13851365
27-11-2008, 08:26
اول اینکه : اگه توی یک جدول بخوام به طور همزمان دو تا فیلد خاص را با هم search کنم به طوری که فقط تاپل هایی توی این جدول دیده بشن که مطعلق به هردو فیلد با شند .
دوم اینکه : اکه توی dbgrid بخوام یه سری از تاپل ها رو فاکتور بگیرم که دیده نشن و یه سری خاص دیده شن چیکار کنم .

می تونید از فـیـلـتـر استفاده کنید ( جستجو کنید )



من ميخوام شماره پرسنلي رو كه توي يه dbedit هست رو توي يه جدول ديگه ديگه جستجو كنم بعد اگه پيدا شد مقدار فيلد حقوق براي اون شماره پرسنلي رو بدست بيارم چيكار كنم؟

سوالیت بیشتر حالت کلی بودن داره
ولی خوب شما می تونید اول در جدول مورد نظر رکورد خود را پیدا کنید ( با فـیـلـتـر کردن یا جستجوی خطی ) بعد اگر رکورد مورد نظر رو یافتید در جدول دیگه دنبال حقوق این رکورد بگردید .

سوالات کلی نپرسید که جواب کاملی نمی توانید بگیرید شما سوالات رو تجزیه کنید و به صورت بخش بخش بپرسید تا جوابی که می گیرید شما رو قانع کند

مرد مباح
30-11-2008, 23:59
سلام
دو تا سوال دارم لطفا راهنمایم کنید.
اول اینکه : اگه توی یک جدول بخوام به طور همزمان دو تا فیلد خاص را با هم search کنم به طوری که فقط تاپل هایی توی این جدول دیده بشن که مطعلق به هردو فیلد با شند .

دوم اینکه : اکه توی DBGrid بخوام یه سری از تاپل ها رو فاکتور بگیرم که دیده نشن و یه سری خاص دیده شن چیکار کنم .

1.

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

2. كافيه كه روش دبل كليلك كني و يك ليست خالي بهت ميده كه ميتوني فيلدهاتو دونه دونه اضافه كني.

موفق باشي.

nell
12-12-2008, 18:00
سلام
من يه سوال داشتم
data base رو چطور مي تونم توي دلفي آدرس دهي نسبي كنم
تا توي هر سيستمي كه برنامم رو اجرا كردم واسه data base خطا نده
خيلي ممنون ميشم اگه جواب بدين

Morteza_SOS
01-01-2009, 07:56
سلام ،‌
دوستان من براي اولين بار است كه به بانك اطلاعاتي نياز پيدا كرده ام .
يه برنامه مي خوام بنويسم با خصوصيات زير لطفا كمك كنيد :
يه Edit داشته باشه
يه Memo داشته باشه
يه List Box داشته باشه

و مي خوام وقتي كه داخل Editمقداري قرار داده مي شه داخل ليست Listbox مقادير يكسان جستجو بشه و سپس بدون كليك بر آيتم هاي List box مقادير آن انتخاب بشه . ( هنگامي كه توسط Edit مقادير جستجو مي شه . ( مثلا : داخل Listbox مقادير MO,HO,ZO‌ قرار داره مي خوام وقتي داخل Edit مثلا حرف M تايپ شد فوري List box مقدار MO را انتخاب كنه ) و مي خوام مقادير Memo را نمايش بشه . مثلا : MO‌ يكسري توضيحات مربوط به خودش را دارد كه بايد در Memo نمايش داده بشه .

حالا چطوري يه همچين بانكي بسازم ؟
چطوري مقاديرم را به همراه متن هاي طولاني Memo ‌درون آن قرار بدم‌ ؟
چطوري اين مقادير را (‌ مثلا : MO,HO,ZO ) را به همراه توضيحاتش فراخواني كنم ؟
...

برنامه ام يه ديكشنري قطعات است !
و مي خوام براي هر قطعه مثلا مادربورد ، سي پي يو و... توضيحاتش درون Memo‌نمايش داده بشه و ليست قطعات نيز درون listbox باشه .
لطفا سورس قرار بديد چون من توي بانك اطلاعاتي خيلي خيلي ضعيفم تا حالا كار نكرده ام .

ali zi zeperto
01-01-2009, 11:49
من دارم يه برنامه مي نويسم كه قراره محتويات يه تيبل رو نمايش بده و قراره كه روي اسم هر كسي كليك شد اطلاعات اون شخص نمايش داده بشه.ليست حدود 20 نفر داره.از چه ابزاري بايد براي اينكار استفاده كنم.منظورم اين كه اگه روي اسم كليك بشه بتونه به يه عمل ديگه اي رو انجام بده.اميدوارم كه منظورمرو فهميده باشيد.ممنونم

مرد مباح
02-01-2009, 21:59
اگه از ديتابيس براي اين كار استفاده ميكني با استفاده از DBText و DBEEdit و ... ميتوني به نتيجه مورد نظرت برسي

ali zi zeperto
03-01-2009, 21:43
دوستان يه سوال ديگه
من ميخوام كه يه كنترلي مثل dbcombobox داشته باشم كه وقتي به يه فيلد وصل شد تمام مقادير موجود تو اون تيبل رو توي كنترل بصورت ليست بياره.با خود dbcombobox امتحان كردم ولي مثل اينكه فقط مال ركرد جاري رو نشون مي ده.آيا dbcombobox چنين قابليتي كه من مي خوام داره؟ اگر نه چطوري مي تونم چنين حالتي رو بوجود بيارم.

خيلي ممنون

مرد مباح
03-01-2009, 22:27
دوست عزيز. توي همين تاپيك و تاپيك فرامين sql به دو نوع مختلف دربارش صحبت شده.
لطفا سرچ كن و نتيجه اي كه گرفتي رو خبر بده.

*Batman*
05-01-2009, 14:27
سلام دو ستان.
دنبال یه برنامه ساده میگردم که بانکش Access باشه.مثلا یه دفترچه تلفن ساده.
باتشکر.

F A R H A D
05-01-2009, 17:45
سلام
لینک امضای مرد مباح رو ببینید (قبل از شما پست دادند)

*Batman*
05-01-2009, 17:56
ممنون.قبلا دیدمش.
اما دنبال یه برنامه ساده هستم که با Access کار کرده باشه.در واقع دنبال آموزش نیستم.یه برنامه ساده میخوام. همین.

F A R H A D
05-01-2009, 19:58
ممنون.قبلا دیدمش.
اما دنبال یه برنامه ساده هستم که با access کار کرده باشه.در واقع دنبال آموزش نیستم.یه برنامه ساده میخوام. همین.

خواهش
اینجا معمولا برنامه آماده خیلی کم گیر میاد
اما با اون آموزش در عرض کمتر از یک ساعت میتونید خودتون بنویسید
موفق باشید

smhzkk61
07-01-2009, 07:51
با سلام به دوستان
مي خوام از Table آمار گيري كنم مثلا آمار تعداد شركت كننده هاي آقا و خانم رو استخراج كنم يا چه تعداد قبول شدند و چه تعداد تجديد.بايد چه كد هايي بنويسم و چه جوري پياده سازيش كنم لطفا منو راهنمايي كنيد(از پارادكس استفاده مي كنم)

مرد مباح
07-01-2009, 12:46
ميتوني از ----- استفاده كني :

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
از فرامين SQL هم ميتوني استفاده كني كه توي لينك امضاي فرهاد جان، ميتوني ببينيش و نمونه هم براش هست.

موفق باشي

Morteza_SOS
08-01-2009, 17:54
سلام ،‌
دوستان من براي اولين بار است كه به بانك اطلاعاتي نياز پيدا كرده ام .
يه برنامه مي خوام بنويسم با خصوصيات زير لطفا كمك كنيد :
يه edit داشته باشه
يه memo داشته باشه
يه list box داشته باشه

و مي خوام وقتي كه داخل editمقداري قرار داده مي شه داخل ليست listbox مقادير يكسان جستجو بشه و سپس بدون كليك بر آيتم هاي list box مقادير آن انتخاب بشه . ( هنگامي كه توسط edit مقادير جستجو مي شه . ( مثلا : داخل listbox مقادير mo,ho,zo‌ قرار داره مي خوام وقتي داخل edit مثلا حرف m تايپ شد فوري list box مقدار mo را انتخاب كنه ) و مي خوام مقادير memo را نمايش بشه . مثلا : Mo‌ يكسري توضيحات مربوط به خودش را دارد كه بايد در memo نمايش داده بشه .

حالا چطوري يه همچين بانكي بسازم ؟
چطوري مقاديرم را به همراه متن هاي طولاني memo ‌درون آن قرار بدم‌ ؟
چطوري اين مقادير را (‌ مثلا : Mo,ho,zo ) را به همراه توضيحاتش فراخواني كنم ؟
...

برنامه ام يه ديكشنري قطعات است !
و مي خوام براي هر قطعه مثلا مادربورد ، سي پي يو و... توضيحاتش درون memo‌نمايش داده بشه و ليست قطعات نيز درون listbox باشه .
لطفا سورس قرار بديد چون من توي بانك اطلاعاتي خيلي خيلي ضعيفم تا حالا كار نكرده ام .

پس ما چي ؟؟

مرد مباح
10-01-2009, 13:52
دوست عزيز. اين مطلب شما به ديتابيس ارتباطي نداره. لطفا دفعه بعدي موضوع مورد نظرتون رو در جاي مخصوص و درستش بنويسيد.

اين روند رو من برات توضيح ميدم.
توي رويداد OnChange اديت كدهاي مورد نظرتو مينويسي.
توي اون بايد يك حلقه به تعداد آيتهاماي LidtBox ايجاد كني كه توي حلقه كار زير انجام بشه
بايد چك بشه كه مقدار سمت چپ با مقدار وارد شده در اديت برار هست يا نه. اگه نبود ItemIndex=-1 وگرنه اونو انتخاب كنه.
كدشم چيزي شبيه به پائين ميشه. ولي چون خيلي وقته استفاده نكردم و دسترسي به دلفي ندارم، به طور تقريبي برات مينويسم :

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

از تابع LeftStr مطمئن نيستم ولي اگه كد درست كار نكرد، دنبال فرماني شبيه به اين باش.
موفق باشي.

mojtabaie
03-02-2009, 20:08
سلام
من در دلفي با ado به ديتابيس sql متصل ميشم خب تا اينجا مشكلي وقتي هم table يا query مي زارم بازم مشكلي نيست ولي مشكل اينجاست كه بايد براي هر فرم يه connection جديد بزارم چون وقتي از datamodule استفاده ميكنم موقع طراحي هيچ مشكلي نداره و راحت به ديتابيس متصل ميشه اما موقع اجرا پيغام زير رو ميده
Missing Connection or connection string

لطفا اگر كسي دليل اين خطا رو ميدونه بگه

با تشكر

F A R H A D
03-02-2009, 23:55
سلام
شما فقط یک adoConnection در دیتاماژول بگذارید و پراپرتی کانکشن تمام دیتاست ها رو روی اون تنظیم کنید. مطمئنا مشکلی پیش نمیاد. نیازی نیست در هر فرم یک adoConnection قرار بدید
موفق باشید

picher_s
25-02-2009, 11:23
سلام
دارم یه برنامه مینویسم که پایگاش Accesse و میخوام هر وقت کاربر خواست با یه دکمه Creatre Database بتونه دیتابیس جدید با ویژگی هایی رو که به صورت Custom تو برنامه گذاشتم ایجاد کنه.
به طور خلاصه میخوام database پویا بسازم. برای هر پروژه جدید که تو برنامه تعریف میشه کاربر یه فایل MDB جدید بسازه. چطور میتونم در کد زیر جدول هامو تعریف کنم.؟

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

picher_s
04-03-2009, 08:34
سلام دو ستان.
دنبال یه برنامه ساده میگردم که بانکش Access باشه.مثلا یه دفترچه تلفن ساده.
باتشکر.
سلام
سورس يه دفترچه تلفن كه توسط بابك احدي نوشته شده رو براتون الصاق كردم.

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
راستي يادم رفت بگم انم كد MD5 اين فايله
MD5: B127D2E5094D90BB3A4451D0BF68C813
اين برنامه يه نمونه كامل از پايگاه داده اكسس هست.
پسوردش هم 1 هست.
موفق و پيروز و پولدار باشيد. :31:

D3lphi
08-03-2009, 15:04
آیا از طریق دلفی میشه پسورد دیتابیس اکسس رو تغییر داد؟!

F A R H A D
13-03-2009, 12:47
سلام
دارم یه برنامه مینویسم که پایگاش Accesse و میخوام هر وقت کاربر خواست با یه دکمه Creatre Database بتونه دیتابیس جدید با ویژگی هایی رو که به صورت Custom تو برنامه گذاشتم ایجاد کنه.
به طور خلاصه میخوام database پویا بسازم. برای هر پروژه جدید که تو برنامه تعریف میشه کاربر یه فایل MDB جدید بسازه. چطور میتونم در کد زیر جدول هامو تعریف کنم.؟

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


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

nemo57
03-04-2009, 16:16
سلام به همگي
تازه وارد اين انجمن شدم و مدتي بود كه دنبال مطلبي براي ايجاد ديتابيس در دلفي ميگشتم .
اين مطالب خيلي خوب و ساده بيان شدند ولي من 1 مشكلي دارم .
در سربرگ data accessعنصر Table را ندارم .دلفي رل دوباره نصب كردم ولي بازهم نشد.
لطفا كمك بفرمائيد اگر كسي فايل كمكي از جمله pdf هم داشت لطف كنه براي ايميل كنه.
nemo57@kashan.com
باتشكر

l8026070
29-04-2009, 19:47
آقا سلام
خیلی گشتم. اما چیز درست و حسابی پیدا نکردم...
یک جدول با 50000 رکورد در sql server دارم. همش سیستم موقع اتصال هنگ میکنه.
یک راه حل بدین...

F A R H A D
29-04-2009, 21:44
سلام. خوش آمدید
ابزار اتصال و کامپوننتهای درگیر در نمایش اطلاعات رو هم بگید تا مشخص بشه مشکل از کجاست

l8026070
01-05-2009, 23:18
سلام
من خيلي وقت تو اين سايت ميگردم و از امكانات و مطالب مفيدش استفاده مي كنم و خيلي هم از مديران و دوستان زحمت كش اين سايت تشكر مي كنم.
با تشكر از شما ميرم سراغ اصل سوال
تعداد ركوردها همين حدودهاست و كامژوننت هاي درگير و نحوه فعاليت:
(لازم به ذكره براي تعداد پايين هيچ مشكلي وجود نداره)
1- ورود يك ركورد جديد با حدود 30 فيلد در يك جدول و يك عكس در يك جدول ديگر (لازم به ذكره ساختار جداول غير قابل تغييره)
2- ويرايش اين ركورد
3- گزارش از يك ركورد
اما ابزارهاي درگير:
1- ابتدا از sdac استفاده كردم و خيلي هم راحت بود ولي با تعداد بالا اصلا نميخونه
2- حالا از ado استفاده ميكنم و با تنظيم متغير option يك مقدار نمايش ركوردها بهبود پيدا كرده
3- ابزارهاي نمايش: dbgrid, dbeditbox,dbimage,dbnavigation
بي نهايت تشكر اگر مشكلم رو حل كنيد.

F A R H A D
02-05-2009, 19:30
از dbeditbox به عنوان ابزار نمایش استفاده نکید.
قبل از ایجاد ارتباط و بارگذاری رکوردها، از dataset.disableControl استفاده کنید

l8026070
02-05-2009, 22:08
با تشكر
اگر از dbeditbox استفاده نكنم از چي براي نمايش و ويرايش اطلاعات استفاده كنم? (بجز dbgrid)
ضمنا براي عكس چي؟

مرد مباح
03-05-2009, 15:49
سلام و خوش آمديد. فكر كنم قبلا اين سوال رو جواب داده باشم ولي دوباره گفتنش ضرر نداره!
اگر شما بخوايد از چيز ديگه استفاده كنيد كه كار DBEdit رو انجام يده، بهترين گزينه خود Edit هست ولي قبل از نمايش بايد اطلاعات رو از ديتابيس بخونين و توس منتقل نمائيد.
براي عكس هم بايد اول جنس عكس رو مشخص كنيد و بعدش توي يك Image نمايش بدين.
منظور از نوع عكس BMP,JPG هست.

l8026070
03-05-2009, 19:23
سلام
خوب براي ويرايش و ارسال متن و عكس چيكار كنم. البته ميشه براي متن كد sql نوشت ولي براي عكس چي؟

مرد مباح
04-05-2009, 16:18
چه براي عكس و چه براي نوشته بايد هنگام اعمال تغييرات يك مجموعه كد بنويسي!
توي انجمن دنبال "ذخيره عكس" يا يك همچين چيزي بگرد. قبلا درباره عكس صحبت شده!
شايد حتي اونو توي اين تاپيك هم بتوني پيداش كني.

F A R H A D
05-05-2009, 18:22
در تکمیل صحبتهای مرد مباح عزیز در مورد عکس، stream رو جستجو کنید

l8026070
06-05-2009, 23:36
با تشكر از شما

yaskowsar
14-05-2009, 10:53
با سلام
من با دلفی 2009 کار می کنم و دیتابیسی مستقل بدون نیاز به نصب سرویس به غیر از paradox و acsses نیاز دارم از blackfish استفاده کردم ولی سرعت خیلی پایین بود. خواهشنمدم اگر اطلاعاتی دارید راهنمایی فرمایید.
ضمنا از absolute نیز استفاده کردم ولی کمپوننتهای آن روی برنامه نصب نمی شود.
با تشکر

F A R H A D
15-05-2009, 07:52
سلام. خوش امدید
ClientDataSet رو جستجو کنید و استفاده کنید

sahebi
09-07-2009, 11:03
سلا من تازه عضو شدم نمی دونم چه جوری اطلاعات مورد نیازم رو دریافت کنم لطفا کمکم کنید.

sahebi
29-07-2009, 20:14
سلام
اگه ممکنه درباره گزارش گیری از بانک راهنماییم کنیییییییییییییییییید.

مرد مباح
30-07-2009, 09:24
دنبال QReport, FastReport, CrystalReport بگرد.
من هم قبلا یک مقاله برای QReport نوشته بودم که اگه پیدا کنم برات آپ میکنم.

ولی اول جستجو کن!

M.Hashemi
17-08-2009, 18:24
سلام
با تشكر
لطفا توضيح دهيد براي استفاده از dbisam به چه نرم افزارها و كامپوننت هاي نياز داريم و اگر ممكنه لينك دانلودش را نيز بگذاريد چون هر چه گشتم يا لينكي نبود يا كار نمي كرد.
در ضمن اگر ممكنه بگيد براي يك برنامه معمولي كه براي يك سيستم نوشته مي شود(نه براي شبكه) از چه پايگاه داده بهتر است استفاده شود.
ممنون

F A R H A D
17-08-2009, 22:37
لطفا توضيح دهيد براي استفاده از dbisam به چه نرم افزارها و كامپوننت هاي نياز داريم و اگر ممكنه لينك دانلودش را نيز بگذاريد چون هر چه گشتم يا لينكي نبود يا كار نمي كرد.
در همین بخش دلفی لینک توسط NoneForce عزیز گذاشته شده. اگر لینکی کار نکرد در همون تاپیک درخواست بدید

در ضمن اگر ممكنه بگيد براي يك برنامه معمولي كه براي يك سيستم نوشته مي شود(نه براي شبكه) از چه پايگاه داده بهتر است استفاده شود.
اگر در آینده هم قرار نیست از شبکه استفاده کنید و برنامه چندان پیچیده و بزرگی نیست از access و در غیر اینصورت sql server

Mr_M
18-08-2009, 03:24
سلام
من يه بانك اكسس دارم.با دستور table1.edit ميخام جدولمو اصلاح كنم.تغييرات تو برنامه اعمال ميشه ولي وقتي فايل اكسس رو دستي باز ميكنم هيچ تغيييري نكرده مثل اولشه...ميخام بدونم مگه نبايد اين تغييرات تو فايل اكسس اعمال بشه؟

Mr_M
18-08-2009, 09:11
سلام
من با استفاده از دستور table1.edit ميخام بانكم رو كه اكسس هست رو اديت كنم.با اين كار از داخل خود برنامه اطلاعات اديت ميشه ولي وقتي بانك رو به صورت دستي باز ميكنم اطلاعات همون قبلياست.ميخام بدونم مشكل چيه؟مگه نبايد بانك هم اديت بشه...وقتي يه ركورد جديد از تو برنامه اضافه ميكنم تو بانك اضافه ميشه ولي اديت اينطوريه...
ممنون

مرد مباح
18-08-2009, 12:43
دوست عزیز. تا جایی که یادم میاد قبلا این رو گفته بودم و یاز هم تکرارش میکنم.
بعد از تغییرات و برای تصبیت آنها در دیتابیس باید کد بنویسی :

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

Mr_M
18-08-2009, 18:41
دوست عزیز. تا جایی که یادم میاد قبلا این رو گفته بودم و یاز هم تکرارش میکنم.
بعد از تغییرات و برای تصبیت آنها در دیتابیس باید کد بنویسی :
کد:
table1.post

ممنونم مرد مباح كه جواب دادي
ولي من همين كار رو هم كردم.من الان تو برنامه مشكلي ندارم حتي وقتي برنامه رو ميبندم و دوباره باز ميكنم تغييرات اعمال شده ولي مشكل اينه كه بانك رو كه دستي باز ميكنم تغيير نكرده

Mr_M
18-08-2009, 18:47
دوست عزیز. تا جایی که یادم میاد قبلا این رو گفته بودم و یاز هم تکرارش میکنم.
بعد از تغییرات و برای تصبیت آنها در دیتابیس باید کد بنویسی :
کد:
table1.post

ممنون كه جواب دادي
اما من همين كار رو كردم ولي تغييرات بازم اعمال نشد.تغييرات فقط وقتي انجام ميشه كه برنامه رو ميبندم و دوباره باز ميكنم.اونم فقط از توي برنامه.اما وقتي جدول رو دستي باز ميكنم هيچ تغييري تو اون نميبينم o:

مرد مباح
19-08-2009, 16:40
مطمئنی همون فایلی که توی برنامت باز میکنی و استفاده میشه رو به صورت دستی باز میکنی؟

زیاد پیش میاد که توی برنامه با یک آدرس دیگه یا ... کار انجام میشه و آدم یادش میره. حتما چک کن ببین یکی باشن.

Mr_M
19-08-2009, 22:19
سلام
اون هيچي.اينكه تغييرات فقط در صورت باز و بسته كردن برنامه تو برنامه اعمال ميشه چي؟
من تو فرم ويرايش اطلاعات تيبل رو اديت ميكنم ولي تو گريد فرم اصلي تغييرات اعمال نميشه فقط وقتي برنامه رو ميبندم و باز ميكنم گريد رفرش ميشه

مرد مباح
20-08-2009, 14:53
برای اینکه از یک Table استفاده نکردی. شما باید اطلاعات Tableها و DataSourceها رو به صورت یکتا در یک دیتا ماژول وارد و استفاده کنی.

Mr_M
21-08-2009, 07:51
ممنون مرد مباح
مشكلم حل شد

matinebi
22-08-2009, 20:01
میخوام به جای این کد

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

از کد

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

کد اول درست عمل میکنه ولی من به like نیاز ندارم باید حتمی از = استفاده کنم

مشکل: در کد دوم زمانی که آرایه یک کالا داشته باشد هیچ فیلدی برنمیگردونه زمانی که دو تا کالا داشته باشد کالای اولی رو برمیگردونه زمانی که سه تا کالا داشته باشد دو تای اولی رو برمیگردونه به همین ترتیب....

مشکل کجاست

لطفا راهنمایی کنید

مرد مباح
23-08-2009, 16:31
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

درست نیست. بهتره بزنی :

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

فکر کنم High(arr)-1 یابد یکنیش.
چون وقتی فقط arr[0] پر باشه مقدار High(arr) تا جایی که یادم میاد 1 هستش.

beygloo
20-09-2009, 19:04
با سلام خدمت مرد مباح عزیز . استاد بی ادعای دلفی.
جناب مباح من یک برنامه نوشتم که چند جدول رابطه ای داره. بعد از انتخاب سال ماههای اون سال میان و بعد از انتخاب ماه ، روزها میان و با انتخاب هر روز میتونی اطلاعات مورد نیاز رو ثبت کنی.
من از دیتابیس اکسس استفاده کردم و جداولم هم ADO Table هستن.
میخوام ببینم اطلاعات جدول آخر که مربوط به ثبت برنامه های روزانه هستش رو چطوری میتونم بر اساس فیلدهایی که میخوام صعودی یا نزولی مرتب کنم؟
مثلا فرض کنید مشتری برای انجام خدماتی از ما نوبت میگیره برای ساعت 12 و مشتری بعدی برای ساعت 9 حالا من میخوام خود این مشتریها بر اساس ساعت مرتب بشن . خیلی خلیی ممنون از لطفت.

مرد مباح
21-09-2009, 17:05
یه جمع ما خوش آمدید و امیدوارم که این اولین و آخرین سوال و یا جواب شما نباشه.
دوست عزیز.
من استاد دلفس نیستم و هر چی بیشتر بدونی میفهمی که کمتر بلدی و من هم جزئی از این قاعده هستم. شاید چون خیلی وقته که با دلفی کار میکنم مشکلاتی که شما الان بهش یرخورد کردی من قبلا برخورد کرده باششم و بتونم یک چیزایی از اون براتون بگم. همین.

جواب :
نمیدونم چطوری Tableهاتون رو تعریف کردی ولی فکر کنم توی ایجاد اونا هم مشکل وجود داره. برای این کاری که شما میخواین بکنین نهایتا 2 تا Table لازم میشه و حتی میتونی توی یکی هم جمع کنیش. مشکل شما اینه که چندتا تیبل رو با هم استفاده کردی و یک کمی گیج کننده شده.
اگه با همین تعداد میخوای ادامه بدی باید از فرامین SQL استفاده کنی و یا اینکه به کمک خود Access یک Query بسازی که اطلاعات مورد نظرت رو از همه تیبلها جمع کنه و بعد Sort کنیش.

موفق باشی.

mohsenpj
04-10-2009, 10:56
سلام
چند سوال داشتم.
1- دستورات ایندکس گذاری در اکسس و استفاده اون در دلفی رو کسی اگه بلده توضیح بده لطفا.
2- روش فیلتر گذاری در استفاده از ado در واکسس رو لطفا توضیح بدید.
البته من در db (database desktop)همشو انجام دادم ولی حالا که میخوام از اکسس به عنوان دیتابیس استفاده کنم نمیشه. لطفا توضیح بدید برام.
مرسی

مرد مباح
04-10-2009, 21:49
اگه میخوای توی اکسس سورت کنی که بحث فرق داره. ولی اگه منظورت اینه که بانکت اکسس هستش دو تا راه حل داری :
1. استفاده از فرامین SQL که توی تا÷یک دیگه ای مفصل توضیح داده شده. (با تشکر از فرهاد عزیز)
2. استفاده از خود ADODataset که به کمک بخش Filter و IndexFieldName انجام میشه.
در مورد فیلتر توی لینکهای امضام قبلا توضیح دادم. برای سورت کردن هم اسم فیلدهای مورد نظرت رو توش بنویسی
برای مثال : Name,Family

mohsenpj
05-10-2009, 16:44
ممنونم مرد مباح.
مگه دستورات sql هم برای بانکهای اکسس کار میکنند؟ در ضمن ایندکس رو چیکار کنم؟
من یک بانک دارم که چند هزار عدد(رکورد و ویژگیهاشون که همه عدد هستند) دارم که برای هر محاسبه نیار به فقط یه گروه خاص دارم که باید یا از طریق ایندکس گذاری اونا رو جدا کنم یا از طریق فیلتر. البته عدد ثابتی نیست که توی برنامه ام بتویسمش بلکه توسط کاربر تغییر میکنه.
در database desktop از ایندکس استفاده میکردم و بعد محاسبتم رو با اون رکوردهای جدا شده انجام میدادم و بعد دوباره ایندکس رو تغییر میدادم بعد محاسیات بعدی....
حالا میخوام از اکسس به عتوان دیتابیسم استفاده کنم....

مرد مباح
05-10-2009, 19:57
ایندکس گداری میشه سورت کردن (ترتیب دادن).
اون کاری که شما میخواین بکنین Filter کردنه. ضمنا با چی به اکسس لینک میشین؟
اگر با ADODataset ویا ADOQuery به اکسس کانکت بشی میتونی از فرامین SQL یرای انتخاب جداولت استفاده کنی.

موفق باشی.

mohsenpj
07-10-2009, 16:52
من از ADODataset استفاده کردم. ولی نتونستم از فیلتر استفاده کنم. میشه لطف کنید و یک نمونه ساده از دستورات فیلتر که از کاربر مورد فیلتر رو بگیره و نیز سرچ توی مقادیر فیلتر شده رو برام بذارید . ممنونم

مرد مباح
11-10-2009, 19:10
اوایل همین تاپیک و در لینک امضای من این چیزا با نمونه اومده. ولی حتما دقت کنید که خاصیت Filtered = true یاشه.

ali135ugd
19-11-2009, 13:29
با سلام
من تمام بحث ها رو خوندم اما نتونستم مشکلم رو حل کنم
متن برنامم اینجوریه ایراداز کجاست که ارور میده
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Mask, DBCtrls, DB, DBTables, Grids, DBGrids;

type
TForm1 = class(TForm)
DataSource1: TDataSource;
Table1: TTable;
Table1Studentnumber: TStringField;
Table1Fristname: TStringField;
Table1Lastname: TStringField;
Table1Averag: TFloatField;
Label1: TLabel;
DBEdit1: TDBEdit;
Label2: TLabel;
DBEdit2: TDBEdit;
Label3: TLabel;
DBEdit3: TDBEdit;
Label4: TLabel;
DBEdit4: TDBEdit;
Button1: TButton;
Button2: TButton;
Button3: TButton;
Edit1: TEdit;
Label5: TLabel;
Edit2: TEdit;
Label6: TLabel;
DataSource2: TDataSource;
Table2: TTable;
Table2Stunum: TStringField;
Table2Nam: TStringField;
Table2Famil: TStringField;
Table2Moadel: TFloatField;
DBGrid1: TDBGrid;
Label7: TLabel;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure ValueListEditor1Click(Sender: TObject);

private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

uses Unit2;

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
table1.Open;
table1.edit;
table1.append;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
table1.Open;
table1.edit;
table1.post;
table1.close;
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
table1.Open;
table1.edit;
table1.First;
While not eof(table1) do
Begin
if table1.FieldByName('averag').value =>15 then
begin
table2.Open;
table2.edit;
table2.append;
table2.Post;
table2.Close;
table1.Close;
end;

end.
لطفا ایرادام رو یکی بگیره

ali135ugd
19-11-2009, 13:30
مشکلم توی
While not eof(table1) do
Begin
if table1.FieldByName('averag').value =>15 then
begin
table2.Open;
table2.edit;
table2.append;
table2.Post;
table2.Close;
table1.Close;
هست

Mahmood_N
19-11-2009, 13:37
فکر کنم مشکلتون اینه که Table1 رو در حلقه Open نمی کنید ...
بهتره Table1 رو در حلقه Close نکنید ، و بعد از حلقه Table1 رو ببندید ...
یک بار که حلقه اجرا میشه ، Table1 بسته میشه ولی دفعه ی باز باز نمی شه تا دوباره بسته بشه !

چه Error ای میده ؟

...

مرد مباح
19-11-2009, 22:56
1. لطفا Error رو بنویسین.
2. قبل از فرمان append نیازی به Edit نیست.
3. همون طور که محمود عزیز گفتند، با Table1.close شرط حلفه رو درون حلقه از بین میبرید. و حدس من اینه که ارر میگه نمیتونم این کار رو بر روی یک دیتابیس بسته انجام بدم.

ali135ugd
21-11-2009, 12:04
سلام
من برنامه رو کمی به کمک استادم تغییر دادم اما هنوز ایراد داره تغییرات اینجوریه
table1.Open;
table1.First;
while not table1.Eof do
begin
if table1.FieldByName('averag').Value = edit1.Text then
begin
table2.Open;
table2.Edit;
table2.Append;
table2.FieldByName('stunum').value := table1.FieldbyName('student number').Value;
table2.FieldByName('nam').value := table1.FieldByName('frist name').Value;
table2.FieldByName('famil').value := table1.FieldByName('last name').Value;
table2.FieldByName('moadel').value := table1.FieldByName('averag').Value;
table2.Post;
table2.Close;
end;
table1.Close;
table1.Next;

end.

اماارور ها ایناند
[Error] Unit1.pas(90): Record, object or class type required
[Error] Unit1.pas(116): 'END' expected but end of file found
[Fatal Error] Project1.dpr(5): Could not compile used unit 'Unit1.pas'

مرد مباح
21-11-2009, 18:17
1. بطفا کدهاس خود را در تگ Code فرار دهید تا درست قابل خواندن باشند.

2. لطفا به جوابهایی که یه شما داده میشه دقت کنید و اون اصلاحات رو هم انجام بدین (نکته 2 و 3 در پست 462)

3.میتونید به جای استفاده از فرمان FieldByName(FieldName).value از مقدار FieldValues(FieldName) استفاده کنسد که نتیجه مشابهی دارد.
هم کد شما خواناتر میشود و هم کوتاهتر است. (البته اگه از دلفی 5 استفاده نمیکنی. چون فکر میکنم این فرمان از نسخه 6 به بعد اضافه شده)

4. شما میتوانید یک بار Table2 را قبل از حلقه Open کرده و در انتها آنرا Close کنید. به این ترتیب برنامه سریعتر عمل خواهد کرد.

ali135ugd
22-11-2009, 08:17
سلام
1. یه سوال دیگه ازتون بژرسم شاید کلا مشکل حل بشه
2. چطوری 2 تا تیبل رو به هم متصل میکنید
3. یا بجای حلقه وایل آیا میشه از گزینه فیلتر استفاده کرد چه جوری (البته من در مورد فیلتر خوندم در ژست های قبلی اما خیلی چیزی دستگیرم نشد
4. اگه بتونید یه نمونه برام بزارین که ببینم دقیقا چطوری دو تا تیبل باهم ارتباط دارند یا چطور فیلتر میشند خیلی خوب میشد
5. خیلی ممنون از این که جوابمو میدین مرد مباح:10:

مرد مباح
22-11-2009, 17:17
جوابها :
2. به کمک فیلتر و یا فرامین SQL وبرای دومین مورد مرجع خبی رو دوست همکارم فرهاد عزیز تهیه کرده.

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

3. قصیه حلقه و فیلتر کاملا متفاوت هست. حلقه برای تکراه و فیلتر برای دسته بندی اطلاعات یک تیبل.

4. یک نمونه ساده :

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
در این نمونه شما کدهای خاصی را که در Table2 قرار دارند، مطابق با کد پرسنلی (PersonCode) شخصی که در Table1 تعریف شده خواهید داشت.

ali135ugd
23-11-2009, 08:12
خیلی گلی مرد مباح
امید وارم که هیچ وقت نری سربازی تا پ:11:یش خودمون بمونی

مرد مباح
25-11-2009, 21:05
نمونه برنامه ای برای درک و کار با Master/Detail :

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
حجم فایل 23kb

ali135ugd
26-11-2009, 08:26
خیلی دوست دارم مرد مباح خدا خیرت بده
اما کاشکی کمی رو پارادوکس کار میکردیم
راسی ازگزینه های ado برا پرادوکس میشه استفاده کرد

F A R H A D
26-11-2009, 15:45
اما کاشکی کمی رو پارادوکس کار میکردیم
اینجا ([ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]) رو ببینید بعد اگر هنوز هم دوست داشتید از پارادوکس استفاده کنید بفرمایید تا مردمباح عزیز یا من راهنمایی کنیم

راسی ازگزینه های ado برا پرادوکس میشه استفاده کرد
بله

ali135ugd
29-11-2009, 08:30
سلام فرهاد جان ممنون که جوابمو میدین
چه طوری میشه از گزینه های ado برا پارادوکس استفاده کرد چون من که نتونستم:13:

F A R H A D
29-11-2009, 19:44
چه طوری میشه از گزینه های ado برا پارادوکس استفاده کرد چون من که نتونستم
-رفتن به control panel
-انتخاب bde administrator
-کلیک راست روی database
-انتخاب odbc administrator
- انتخاب add از user DSN
-انتخاب فایل paradox و انتخاب نامی برای dsn جدید
-تنظیم connection string بوسیله ی ole db provider for odbc drivers در ado connection
-انتخاب datasource nameی که قبلا تنظیم کردید
تنظیم بقیه خصوصیات در ado table

چه اصراری به استفاده از paradox دارید؟ و چرا روش ساده تر ارتباط رو انتخب نمیکنید!؟

ali135ugd
30-11-2009, 08:28
1.ممنون
2.مثلا چی؟
3. تازشم ما فعلا استادمون گفته باید پارادوکس بلد شین یعنی درحد sql نیستین
چیکارش میشه کرد دیگه اینم اینجوریه!:23:
4. من با اجازه یه سوال دیگه هم بژرسم ببینم کسی میتونه جوابمو بده


.... برای نمایش اطلاعت تیبلمون توی فرم استاد گفته از لیبل استفاده کنید حالا table ما چهار تا فیلد داره و ده تا رکورد یعنی چهل تا label آسونترین راه چیه چیکارش کنم آخه استاد ما زحمت کشیدند و بجا اینکه نمونه یاد بدن میگن باید خودتون بلد بشین ....
.....کی میتونه بگه چه طوری میشه درستش کرد فک کنم میخواد حالت گزارش گیری داشته باشه یعنی اگه ده تا رکورد شد بیستا مشکلی پیش نیاد!
یه سوال دیگه در این مورد:‌ گزینهdb text تو منوی دیتا کنترل خودش وصل میشه به تیبل و یکی از فیلد ها رو نشون میده از این گزینه چه طور میتونیم برا سوال بالا ازش استفاده کنیم؟

F A R H A D
30-11-2009, 15:44
مثلا چی؟
استفاده از کامپوننتهای موجود در پالت BDE

تازشم ما فعلا استادمون گفته باید پارادوکس بلد شین یعنی درحد sql نیستین
چیکارش میشه کرد دیگه اینم اینجوریه!
واقعا حیف اسم استاد که روی بعضی ها گذاشته میشه. متاسفانه سیستم آموزشی ما مشکل داره که چنین افرادی باید حضور داشته باشند. کسی که به شمای دانشجو میگه در حد sql نیستین و انگیزه رو در شما از بین میبره مطمئنا لیاقت استادی رو نداره.
ببین دوست من شما باید ماهیت کار با دیتابیس ها رو یاد بگیرید و مهم نیست که پارادوکس باشه یا اکسس یا اوراکل. پس خودتون تلاش کنید و به استاد کاری نداشته باشید. اگر من میگم پارادوکس کار نکنید به خاطر ضعف های اون هست وگرنه کاری به اسامی مختلف ندارم

برای نمایش اطلاعت تیبلمون توی فرم استاد گفته از لیبل استفاده کنید حالا table ما چهار تا فیلد داره و ده تا رکورد یعنی چهل تا label آسونترین راه چیه چیکارش کنم آخه استاد ما زحمت کشیدند و بجا اینکه نمونه یاد بدن میگن باید خودتون بلد بشین ....
.....کی میتونه بگه چه طوری میشه درستش کرد فک کنم میخواد حالت گزارش گیری داشته باشه یعنی اگه ده تا رکورد شد بیستا مشکلی پیش نیاد!
یه سوال دیگه در این مورد:‌ گزینهdb text تو منوی دیتا کنترل خودش وصل میشه به تیبل و یکی از فیلد ها رو نشون میده از این گزینه چه طور میتونیم برا سوال بالا ازش استفاده کنیم؟
اتفاقا خودتون به جواب اشاره کردید. db text رو روی فرم بذارید و datasource رو روی دیتاسورس مربوط به جدولی که در فرم گذاشتید تنظیم کنید، بعد میتونید اسم فیلدها رو از dataField انتخاب کنید

ali135ugd
01-12-2009, 09:51
سلام
اگه توجه کنید من گفتم تیبل 10 رکورد داره ولی این لیبل ها فقط اطلاعات یکی از رکورد ها رو نشون میده حتی اگه دهتا از این لیبل ها رو بیاریم باز همه اطلاعات یک رکورد را به صورت مشترک نشون میده مشکل اینجاست که من میخام همه اطلاعات 10 رکورد رو نشون بده
یه مطلب دیگه چطوری با نوشتن دستوری میتونیم یه لیبل اضافه کنیم

مرد مباح
01-12-2009, 18:02
1. میتونین از استادتون بپرسین که چرا باید این کارو بکنیم و کار DBGrid همینه.
2. باید از یک لوپ و Label عادی استفاده کنی و تمام مقادیر رو دستی با کد توش بنویسی.

ali135ugd
02-12-2009, 08:08
سلام
میگم اول باید یک شمارنده بزارم تا بتونه تعداد رکورد رو بخونه و برا هر رکوردی چهار لیبل تعریف بشه اما اینکه چهارتا لیبل رو چجوری میتونیم تعریف کنیم تو دستورات که یه جایی مثل حلقه while مثلا برای رکورد 1 بتونه label1,label2,label3,labe4 رو انتخاب کنه تا اطلاعات داخلش بیاد و برای رکورد 2 بتونه چهار تا لیبل بعدی رو انتخاب کنه تا اطلاعات فیلد داخلش بیاد و به همین ترتیب جلو بره.... جون من اگه میشه بگین چطوری

دوم: منظور مرد مباح عزیز از کلمه لوپ
باید از یک لوپ و Label عادی استفاده کنی چیه و چطوری میشه ازش استفاده کرد (ترجیحا اگه ممکنه با مثال باشه؟
سوم: من یک شمارنده تعریف کردم امه هرجا میخام از اون استفاده کنم ارور میده به کد زیر یه نگاه بندازین این کاریه که من کردم ولی ارور میده
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

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

F A R H A D
02-12-2009, 15:25
جون من اگه میشه بگین چطوری
با یک جستجوی ساده. قبلا در مورد ایجاد کامپوننت در زمان اجرا بحث شده و مثال هم گذاشته شده
ضمنا همونطور که مرد مباح عزیز گفتند DBGrid همین کار رو انجام میده. البته اگر نظر استادتون اینه که label رو یاد بگیرید چون در حد DBGrid نیستید، پس label رو یاد بگیرید! :46:

منظور مرد مباح عزیز از کلمه لوپ
LOOP اصطلاحی هست که برای دستورات مربوط به حلقه ها در زبان های برنامه نویسی استفاده میشه. مثل for و while

ali135ugd
02-12-2009, 17:18
با db grid بلدم کار کنم اما اون میخاد با دستورات و کار با دلفی بیشتر اشنا بشیم:20:

ghahremanimehdi
02-12-2009, 17:22
سلام
میخواستم بپرسم برای دیتابیس برنامه های تحت وب ، چه کتاب و چه مباحثی رو باید مطالعه کنم ؟(چون بحث دیتابیس خیلی گسترده هست)

F A R H A D
02-12-2009, 23:31
سوم: من یک شمارنده تعریف کردم امه هرجا میخام از اون استفاده کنم ارور میده به کد زیر یه نگاه بندازین این کاریه که من کردم ولی ارور میده
قبل از اینکه جواب بدم باید عرض کنم مطلبی که دوست عزیزم مرد مباح در مورد ویرایش پست قبلا خدمت شما گفتند، مربوط به زمانی بود که پشت سر هم چند پست ارسال کرده بودید و به هیچ وجه منظورشون این نبوده که پست ساعت 8 صبح رو در 5 بعد از ظهر و بعد از ارسال پست توسط فرد دیگه ویرایش کنید. پس لطفا از این به بعد این نکته رو مد نظر قرار بدید
اما پیغام های خطایی که گرفتید:
همگی خطاهای syntax هستند یعنی شما در نحوه ی به کار بردن دستور یا رعایت قواعد اشتباه کردید و فقط با ترجمه جملات خودتون میتونستید بدون ارسال پست به خطاها پی ببرید

[Error] Unit4.pas(61): Incompatible types: 'String' and 'Integer'
دو مقدار از دو نوع مختلف رو در خط 61 برنامه به اشتباه با هم مقایسه کردید

[Error] Unit4.pas(70): ';' not allowed before 'ELSE'
کاراکتر ';' قبل از else به کار نمیره

[Error] Unit4.pas(81): BREAK or CONTINUE outside of loop
دستور break رو باید درون LOOP (حلقه) به کار ببرید

همین....

F A R H A D
02-12-2009, 23:35
سلام
میخواستم بپرسم برای دیتابیس برنامه های تحت وب ، چه کتاب و چه مباحثی رو باید مطالعه کنم ؟(چون بحث دیتابیس خیلی گسترده هست)

سلام
برای دیتابیس تحت وب شما میتونید از هر دیتابیسی استفاده کنید اما sql server برای سرورهای ویندوز و mySql برای لینوکس عمومیت دارند. اما برای برنامه نویسی بوسیله ی دلفی باید مباحث intraWeb رو مطالعه کنید
موفق باشید

ghahremanimehdi
02-12-2009, 23:46
سلام
برای دیتابیس تحت وب شما میتونید از هر دیتابیسی استفاده کنید اما sql server برای سرورهای ویندوز و mySql برای لینوکس عمومیت دارند. اما برای برنامه نویسی بوسیله ی دلفی باید مباحث intraWeb رو مطالعه کنید
موفق باشید

ممنون
میدونم. میخواستم مباحثی از دیتابیس رو که مرتبط با برنامه های تحت وب هست و مدل دیتابیس برنامه های تحت وب رو توضیح داده ، بدونم

F A R H A D
03-12-2009, 00:12
لینک های زیر میتونه به شما کمک کنه.
document های IntraWeb
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
تکنولوژی WebSnap
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ] gies.htm
ساخت یک web application سریع:
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

ali135ugd
03-12-2009, 13:58
مرد مباح و فرهاد جان خیلی خیلی ممنون من بالاخره تونستم برنامه رو اجرا کنم خیلی خوشحالم عیدی خوبی بهم دادین انشالله که امام علی هم عیدی خوبی به شما بده:8::12::12::12::10:
از راهنمائی های شما کمال تشکر را دارم و امیدوارم بتونم همیشه از راهنمائیهاتون استفاده کامل رو ببرم:39::22::38::26::26::26::26::26::15::15::1 5:

ali135ugd
09-12-2009, 16:41
مرد مباح عزیز میگم اگه دعوام نکنی:37: میشه یکی توضیح بده برای مسئله بالا چطوری میتونیم از آرایه ها برای نمایش اطلاعات تیبلمون روی لیبل ها از اون استفاده کرد:45:(مباحث آرایه ها رو البته خوندم اما خیلی ناقصه):9:

مرد مباح
09-12-2009, 18:14
دوست عزیز. این مشکل مربوط به دیتابیس نیست و توی همون بخش که پرسیدی ارتباط بیشتری داره و لطفا توی همون بخش ادامه بده.
ضمنا فکر نکن که من فقط جواب پستهای این تاپیک رو میدم. من همه جا رو نگاه میکنم و هرجایی که فک کنم چیزی توش میدونم سعی میکنم توضیحات بدم.

ممنون.

kiyarash1001
11-12-2009, 14:30
سلام دوستان
من یه سایت طراحی کردم که تو حالت لوکال هیچ ایرادی نداره و به دیتا بیس متصل هستش و اطلاعات ورودی در فرم ثبت نام به راحتی داخل دیتا بیس ذخیره میشه و با امکانات دریم ویور من کاری کردم که اطلاعات پس از ذخیره از دیتا بیس فراخونی بشه و در جدولی که ساختم نشون داده بشه حالا مشکل من اینه که چه جوری کاری کنم که اطلاعات فرم ثبت نام ساخته شده در دیتا بیس سرور ذخیره بشه و همچنین چه کار کنم که اطلاعات ذخیره شده در دیتا بیس سرور در اون جدول نشون داده ثبت شه؟

ali135ugd
12-12-2009, 13:33
سلام
میگم چطوری میشه با دستور تیبلمون رو خالی کنیم(پارادوکس)

مرد مباح
12-12-2009, 17:00
سلام دوستان
من یه سایت طراحی کردم که تو حالت لوکال هیچ ایرادی نداره و به دیتا بیس متصل هستش و اطلاعات ورودی در فرم ثبت نام به راحتی داخل دیتا بیس ذخیره میشه و با امکانات دریم ویور من کاری کردم که اطلاعات پس از ذخیره از دیتا بیس فراخونی بشه و در جدولی که ساختم نشون داده بشه حالا مشکل من اینه که چه جوری کاری کنم که اطلاعات فرم ثبت نام ساخته شده در دیتا بیس سرور ذخیره بشه و همچنین چه کار کنم که اطلاعات ذخیره شده در دیتا بیس سرور در اون جدول نشون داده ثبت شه؟

دوست عزیز فکر کنم موضع ربطی به دلفی نداشته باشه. اینجا فقط مباحث دیتابیس دلفی مطرح میشه



سلام
میگم چطوری میشه با دستور تیبلمون رو خالی کنیم(پارادوکس)
با یکی از فرامین SQL میشد یک حطی این کارو کرد. فکر کنم Delete All بود و برای اطلاعات بیشتر به لینک امضای فرهاد عزیز مراجعه کنید.
میتونین هم به کمک یک While و Delete تمام رکوردها رو پاک کنید که البته روش اول خیلی سریعتر هست.

MOHAMMAD_DK
13-12-2009, 12:00
كسي با دستور bcp كاركرده شكل صحيح دستور ميخوام كه اطلاعات بانكSQL به TXT تبديل كنه يا بلعكس

F A R H A D
13-12-2009, 23:06
این دستور رو در دلفی استفاده کردید!؟
برای تبدیل اطلاعات میتونید از DTS در Sql Server استفاده کنید
موفق باشید

ali135ugd
17-12-2009, 08:09
باز من اینجا بودم یه جنب و جوشی هم بود:5:
آقا یه سوال:
اگه تو اکسس برنامه ای مثل برنامه کتابخانه با تمامی فرمها و کوری چیزهایی که نیاز دازیم داشته باشیم چطوری میتونیم این برنامه رو تحت دلفی بیاریم اجرا کنیم
یعنی دلفی فقط اجرا کننده باشه و فرمها از خود اکسس استفاده بشه(اصلا امکانش هست؟):13:

مرد مباح
17-12-2009, 09:57
تا جایی که من میدونم نمیشه چنین کاری کرد.
گرچه اگر هم بشخ کسی که دلفی بلده قابلیتهای دلفی رو به اکسس ترجیح میده و نیازی نداره که از فرمهای اکسس استفاده کنه.

ali135ugd
17-12-2009, 16:07
ممنون فک میکردم فقط شبا سر میزنی
خوب میگفتین روزا هم هستین تا یه احوالی ازتون بپرسم مرد مباح عزیز:10:

ali135ugd
31-12-2009, 13:12
سلام
میگم من یه فایل اکسس دارم که پسورد هم روشه (همون برنامه کتابخونه) ولی هرکاری میکنم نمیتونم با adotable بهش وصل بشم مشکل فک میکنی از کجا باشه اگه توضیح بیشتر یا خود فایل رو میخاین هم بگین تا در اختیار بزارم

F A R H A D
31-12-2009, 15:49
سلام
میگم من یه فایل اکسس دارم که پسورد هم روشه (همون برنامه کتابخونه) ولی هرکاری میکنم نمیتونم با adotable بهش وصل بشم مشکل فک میکنی از کجا باشه اگه توضیح بیشتر یا خود فایل رو میخاین هم بگین تا در اختیار بزارم
شما جستجو رو کلا بی خیال بشید. دکوری هست
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

ali135ugd
31-12-2009, 16:18
فرهاد جان خیلی باحالی من معذرت میخام
خوب بگو چطوری به این خوبی جستجو میکنی تا منم همین کار رو بکنم

F A R H A D
31-12-2009, 23:37
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

alaveh
08-01-2010, 20:00
دوستان حرفه ای دیتابیس یک سوال تخصصی

اگر یک Table حدود 80 فیلد داشته باشه ولی بیشتر فیلدها ( مثلا 60 تا از فیلدها ) 1 بیتی و 10 فیلد در حدود 5 بیتی باشه و فقط 10 فیلد بزرگ داشته باشه آیا مشکل داره این جدول و باید شکسته بشه ؟