الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

إستفسار بخصوص كود

بدأه فجر الغد في 15 يونيو 2011 · 7 رد · 494 مشاهدة · في قواعد بيانات Microsoft SQL Server
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله وبركاته

الإخوة والأخوات الكرام لدي إستفسار بخصوص كود ...

لدي جدول مشتركين لقاعدة بيانات مكتبة من ضمن حقول الجدول (حقل رسوم إشتراك يدخله المشترك حسب عمره) .. ( أي مثلا إذا كان عمره 15 فما فوق رسوم الإشتراك يكوت 50 للسنة و15 للشهر ..

أحترت في عمل الكود اللازم لذلك حيث فكرت بإستخدام دالة Ifالشرطية لأن الحقل مشروط ولكن عجزت عن كيفية ترتيب خطوات الكود فهل من مساعد أو موجه لي

ودمتم

#2

هذا المثال المقتضب لا يكفي لكتابة استعلام مناسب.

ضع حقول الجدول كاملة + مثالين على الأقل (كاملين دون "إلخ ..." لأن "..." لا تساعد من لا يملك الكود ليفهم ما تريد)

هل 50 للسنة تقصد بها لكل سنة من العمر أم للـ 15 سنة كاملة، كما ترى، الأمر غير واضح.

من ناحية أخرى، هل سيقوم المشترك بإدخال عمره فقط وتريد تحديد قيمة الاشتراك التي سيتم "إدراجها" ضمن القاعدة أم "إظهارها" للمشترك.

والسلام عليكم

Do as I say, not as I do

We are Anonymous. We are Legion. We don't forgive. We don't forget

#3

السلام عليكم ورحمة الله وبركاته

شكرا لك أخي الكريم على الرد وآآسفة على عدم التوضيح ..

(حقول جدول الإشتراك هو (( أسم المشترك , رقم الهوية,رقم الهاتف, نوع الإشتراك و نوع الإشتراك [شهري,سنوي]وتاريخ بدء الإشتراك , تاريخ إنتهاء الإشتراك ,تاريخ الميلاد , حلة المشترك . مدة التعطيل للمشترك , تاريخ تحديث الإشتراك و رسوم الإشتراك ( عبارة عن حقل حسابي لا يتم إدخاله مباشرة من قبل المستخدم ) حيث يعتمد قيمة الرسوم على عمر المشترك بناء على ما يلي : إذا كان عمر المشترك أكبر من 15 سنة ]

[قيمة الإشتراك=10 دولار شهريا و100 دولار سنويا]

[أما إذا كان أقل من 15]

*قيمة الإشتراك =5 دولار شهريا و50دولار سنويا]

.. بصراحة أن قمت بفصل الحقول السابقة على جدولين ( جدول المشتركين ويحوي المعلومات الخاصة بالمشترك ...... وجدول الإشتراك ويحتوي على معلومات الإشتراك

وقمت بالربط بينما بعلاقة من خلال رقم المشترك كما هو موضح في الصورة التالية ...

http://www.mlfnt.com/lives4/13082151671.png

المشكلة الآن .. كتابة شرط الكود عند إنشاء الجدول وهذا ماأريد الإستفسار عنه

آآآسفة على الإطالة

#4

السلام عليكم

وين الردود معقولة ماأحد يرد ولة بكلمة ؟؟؟

أين الخبراء محتاجة الرد بسرعة بارك الله فيكم

#5

السلام عليكم ورحمه الله وبركاته

اختي جربي الاجراء التالي


Create Procedure AddSubscribe
(
@F_Name nvarchar(50),
@S_Name nvarchar(50),
@ID_num int,
@PhoneNum int,
@BirthDate datetime,
@SubscriptionType nvarchar(50),
@StartSubscription datetime,
@ExpiryDate datetime,
@SubscriptionFeed nvarchar(150),
@SubscriberFees nvarchar(100),
@BlockedPeriod int,
@StatusUpdate nvarchar(50)
)
As
begin
declare
@Fee nvarchar(100)
if DATEDIFF(year,@BirthDate,getdate())>15
begin
set @Fee=N'10$ monthly, 100$ annual'
end
else
begin
set @Fee=N'50$ monthly, 50$ annual'
end
INSERT INTO Particibants(F_Name,S_Name,ID_num,PhoneNum,BirthDate)
VALUES(@F_Name,@S_Name,@ID_num,@PhoneNum,@BirthDate)
INSERT INTO Subscription(SubscriptionType,StartSubscription,ExpiryDate,SubscriptionFeed,SubscriberFees ,BlockedPeriod,StatusUpdate)
VALUES (@SubscriptionType,@StartSubscription,@ExpiryDate,@SubscriptionFeed,@SubscriberFees ,@BlockedPeriod,@StatusUpdate)
end

.:: Wish to become better and better ::.

#6

بارك الله فيك أخي

إن شاء الله أجرب الكود وارد

فشكرا لك مقدماً

#7

السلام عليكم عفوا أخي عندي كم إستفسار ...

* ماهم الإصدار الذي كتبت فيه الكود .. أنا أستخدم ( microsoft sql server 2005 )

* أنا أريد إنشاء جداول فيهل هذه القيود .. وحضرتك أستخدمت إجراءات مخزنة Procedure ممكن توضح السبب إن أمكن

*طبعا الكود مشي معايا تمام كإجراء مخزن لكن كجدول لا .. بارك الله فيك ممكن توضح لي أكثر !!! :blush: :blush:

تم تعديل هذه المشاركة بواسطة فجر الغد في 17 يونيو 2011 في 17:46

#8

السلام عليكم ورحمه الله وبركاته

اختي انا استخدمت الاصدار 2008 مو مشكلة لو استخدمتي 2005, اما بالنسبه للكود وضعته كاجراء مخزن لأستفيد من البرمجه ضمن السيكول, اما الجدول وظيفته انشاء البنية الاساسية من حقول وقيود .. الخ

.:: Wish to become better and better ::.

مواضيع مشابهة