السلام عليكم ورحمة الله وبركاتة
إيه الأخبار يا شباب ؟
فى مشكلة عندى بجدول عاوز أعمل إدخال بيانات به بطريقة سريعة دون التأكد من وجود السجل و لكن هذا الجدول له طبيعة خاصة بمعنى أنه جدول يحتوى على عدد رهيب من السجلات و يزداد يوم بعد يوم بالألفات يعنى ممكن فى يوم واحد يتم إدخال فوق 50000 سجل :wacko: و لذلك لم أصنع به حقل مفتاح (PRIMARY Key) و لكن السجلات تعتمد على حقلين واحد منهم عبارة عن تاريخ و الثانى عبارة عن رقم
بمعنى أن ممكن أن يكون هناك 100 سجل بتاريخ واحد و لكن كل سجل منهم له رقم مختلف ولا يجب أن يتشاركم فى الرقم
ولكن
ممكن أن يكون هناك 100 سجل أخرين بتاريخ مختلف يحملان نفس أرقام 100 سجل السابقين و هنا لا يوجد مشكلة فى تكرار الرقم بين 100 سجل الأولى و 100 سجل الثانية لأن 100 سجل الأولى بتاريخ مختلف عن 100 سجل الثانية
و هذا هو طبيعة السجلات التى أعتمد عليها و هى بتجيلى كده و العيب فى البرامج إللى خارجة منها و قاعدة البيانات بتاعتها وأنا لازم أمشى معاها أساساً فقاعده البيانات هذة لا يهمها هل السجل موجود أم لا أما فى قاعدة البيانات عندى فيهمنى أمر التكرار
فهل يوجد طريقة يتم إدخال بها السجلات و تجاهل المكرر ولا يتم تسجيلة إذ تطابق الحقلين (التاريخ و الرقم) سوياً علماً بأن كلمة IGNORE يتم تطبيقها إذا كان هناك حقل PRIMARY Key أو INDEX أو UNIQUE و هنا لا يوجد أى من هذة الحقول :blush:
أنا مشعاوز أعمل إدخال و بعدين أمسح المكرر لأن طريقة مسح المكرر إللى لقتها فى نتيجة البحث على النت هى عبارة عن إنشاء جدول جديد و نقل البيانات إليه دون تكرار ثم مسح القديم و إعادة تسمية الجدول الجديد و طبعاً طريقة الإعتماد على مسح السجلات المكررة دى طريقة غبية جداً وخصوصاً لما يبقى عدد السجلات كبيييييييير جداً كما أننى لم أتوصل إلى طريقة أخرى للمسح لذلك أريد أن أمنع التكرار من البداية
أعرف أننى يمكننى أن أدرج السجلات فى سطر واحد عند التسجيل و هذا يقوم بفتح الجدول مرة واحدة و يتم إرسال سطر SQL واحد و بهذة الطريقة يتم التسجيل أسرع و لكن المشكلة تكمن فى التكرار السابق ذكرة
كل واحد يأتى بما عنده ...... انتو سامعين :angry:
