مشاهده نسخه کامل
: مشکل با query
Armagedon
07-12-2009, 00:33
سلام دوستان.
اول یه اعتراض.این انجمن همه چی توش پیدا میشه الا قسمتی که در مورد برنامه نویسی بانک اطلاعاتی بحث داشته باشه.بجنبین دیگه.
حالا بذارین ببینم نفرات بالقوه این انجمن کیا میتونن باشن.با یه سوال شروع می کنم.
من یه query واسه sql نوشتم که از بانک اطلاعاتی اکسس پرس و جو کنه.یه برنامه خیلی خیلی ساده.ولی نمی دونم چرا هی ارور میده.
بانک اطلاعاتی 1 دونه table داره با دوتا ستون: name و number.اینم خیلی ساده بود.
این برنامه:
SELECT Name
FROM Table1
WHERE Number=DATA1
برنامه با توجه به شماره داده شده تو متغیر data1 از ستون name مقدار متناظرشو برمی گردونه.
اینم ارور: Parameter DATA1 has no default value.
اگه گفتین ایراد از کجاست؟
سلام
اول یه اعتراض.این انجمن همه چی توش پیدا میشه الا قسمتی که در مورد برنامه نویسی بانک اطلاعاتی بحث داشته باشه
بله تقریباً موافق هستم ولی شما میتوانید سوال خود را تحت زبان برنامه نویسی مرتبطتان در انجمن مربوطه اش بپرسید.
مخصوصاً که سوال شما مربوط به ارتباط بانک با یک محیط و زبان برنامه نویس است.
حالا بذارین ببینم نفرات بالقوه این انجمن کیا میتونن باشن.با یه سوال شروع می کنم
اگه گفتین ایراد از کجاست؟
با این طرز جمله بندی به شما اطمینان میدهم که اعضا و سایر دوستان فکر میکنند به شعورشان توهین شده و گمان میکننده که شما میخواهید با آبنبات چوبی یک بچه پیش دبستانی را گول بزنید!!!
بنابر بر تجربه چندساله ام در تالارها به شما اطمینان میدهم، اینطوری افراد بیشتری تاپیک شما را تا باز کنند، آن را نادیده گرفته و خواهند بست و از جواب دادن صرف نظر خواهند کرد.
اینم ارور: Parameter DATA1 has no default value
این بستگی به زبان برنامه نویسی شما دارد.
شما یاباید DATA1 را با جمع String (که اصلاً پیشنهاد نمیکنم) و یا با دستورات ارسال پارامتری تغذیه و پر کنید.
که روش اینکارها برمیگردد به زبان برنامه نویسی شما ...
و البته پارامترهای SQL را با @ شروع میکنند.
Armagedon
08-12-2009, 14:01
ممنون از اینکه رک حرفتونو زدین.من قصد توهین نداشتم. امیدوارم همه اینطوری فکر نکرده باشن.معذرت می خوام از کسایی که این برداشتو از حرفام داشتن.
در مورد راهنمایی هم ممنون.ولی من تو محیط برنامه نویسی از sql استفاده نکردم.تو برنامه robotask لازمش دارم و فکر نمی کنم ربطی به نوع خاصی از برنامه نویسی داشته باشه.یه سوال دیگه.تو query نمیشه واسه data1 یه مقدار پیش فرض تعیین کرد که اگه مقدار متغیر data1 تو بانک اطلاعاتی نبود یا معتبر نبود، پرس و جو رو با اون مقدار پیش فرض معتبر انجام بده؟
سلام
یه سوال دیگه.تو query نمیشه واسه data1 یه مقدار پیش فرض تعیین کرد که اگه مقدار متغیر data1 تو بانک اطلاعاتی نبود یا معتبر نبود، پرس و جو رو با اون مقدار پیش فرض معتبر انجام بده؟
بانک اطلاعاتی شما هم مشخص نیست.
Access یا SQl Server یا MySQL یا Oracle و...
مثلاً در Microsoft SQL Server میتوانید یک SP مثل این تعریف کنید که پارامتر عددی Data1 را بگیرد ولی پیشفرض 5 را هم داشته باشد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
و اما زبان برنامه نویسی که گفتم، مثلاً اینها میتواند یک کدعادی ارسال پارامتری مقادیر در SQL باشد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
=====
البته همانطورکه قبلاً هم گفتم، گاهاً برای ارسال پارامتر در زبانها و محیطهای مختلف از جمع String هم استفاده میشوند و عمل فوق با سهل انگاری فقط برای فیلدهای عددی منطقی است و برای سایر موارد قابل استفاده است ولی به شدت توسیه میشود که انجام نشود ...
کدهایی شبیه این در خیلی از محیطها و زبانهای قدیم و جدید پشتیبانی میشود ...
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
=====
یا در محیطهایی مثل داخل نرم افزار Microsoft Access اگر جایی SQL ای شبیه اینها بنویسید، در زمان اجرا خودکار Access فرمی بازمیکند با یک ورودی و از کاربر میپرسد و میخواهد که فقط مقدار جاینشینی همان فیلد مجهول را برایش وارد.
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
Armagedon
08-12-2009, 22:11
سلام.
بانک اکسسه.
کدای بالا رو هم امتحان میکنم ببینم جواب میده یا نه.در کل خیلی زحمت کشیدی.ممنون
Armagedon
08-12-2009, 22:11
سلام.
بانک اکسسه.
کدای بالا رو هم امتحان میکنم ببینم جواب میده یا نه.در کل خیلی زحمت کشیدی.ممنون
نمیدونم چرا دوتا شد.
حذفش کنید ممنون میشم.
راستی چرا امکان حذف پست خودمونو به ما نمیدین؟
vBulletin , Copyright ©2000-2025, Jelsoft Enterprises Ltd.