INSERT
```wiki
INSERT: دليل شامل للمبتدئين في SQL
INSERT هو أحد أهم أوامر لغة الاستعلام الهيكلية (SQL) المستخدمة لإضافة بيانات جديدة إلى جداول قاعدة البيانات. يعتبر هذا الأمر أساسيًا لأي شخص يعمل مع قواعد البيانات، سواء كان مطورًا، محلل بيانات، أو مدير نظام. يهدف هذا المقال إلى تقديم شرح مفصل لأمر INSERT، مع أمثلة عملية ونصائح للمبتدئين.
ما هو أمر INSERT؟
أمر INSERT يسمح لك بإضافة صفوف جديدة (سجلات) إلى جدول موجود. يجب أن يتوافق هيكل البيانات التي تحاول إدخالها مع هيكل الجدول المستهدف. بمعنى آخر، يجب أن تتطابق أنواع البيانات وعدد الأعمدة.
بناء الجملة الأساسي لأمر INSERT
بناء الجملة الأساسي لأمر INSERT هو كالتالي:
INSERT INTO اسم_الجدول (عمود1, عمود2, ...) VALUES (قيمة1, قيمة2, ...)
- INSERT INTO: هذا الجزء من الأمر يحدد أنك تريد إدراج بيانات جديدة.
- اسم_الجدول: اسم الجدول الذي تريد إضافة البيانات إليه.
- '(عمود1, عمود2, ...): قائمة الأعمدة التي تريد إدراج البيانات فيها. إذا لم تحدد الأعمدة، فسيتم إدراج البيانات في جميع الأعمدة بترتيبها في الجدول.
- VALUES: هذا الجزء من الأمر يحدد القيم التي سيتم إدراجها.
- '(قيمة1, قيمة2, ...): قائمة القيم المقابلة للأعمدة المحددة. يجب أن تكون القيم بنفس ترتيب الأعمدة.
أمثلة عملية على استخدام أمر INSERT
لنفترض أن لدينا جدولًا باسم "العملاء" (Customers) يحتوي على الأعمدة التالية:
- id_العميل: عدد صحيح (INTEGER) - مفتاح أساسي
- اسم_العميل: نص (VARCHAR)
- المدينة: نص (VARCHAR)
- رقم_الهاتف: نص (VARCHAR)
مثال 1: إدراج بيانات في جميع الأعمدة
لإضافة عميل جديد بجميع البيانات، يمكننا استخدام الأمر التالي:
INSERT INTO العملاء VALUES (1, 'أحمد محمد', 'الرياض', '0551234567');
هذا الأمر سيضيف صفًا جديدًا إلى جدول العملاء بقيم محددة لكل عمود.
مثال 2: إدراج بيانات في أعمدة محددة
إذا أردنا إدراج بيانات فقط في عمودي "اسم_العميل" و "المدينة"، يمكننا استخدام الأمر التالي:
INSERT INTO العملاء (اسم_العميل, المدينة) VALUES ('خالد عبد الله', 'جدة');
في هذه الحالة، سيتم إدخال قيمة 'خالد عبد الله' في عمود "اسم_العميل" و 'جدة' في عمود "المدينة". سيتم تعيين قيم افتراضية أو قيم فارغة (NULL) للأعمدة الأخرى (id_العميل ورقم_الهاتف) إذا لم يتم تحديدها.
مثال 3: إدراج بيانات متعددة في نفس الوقت
يمكن إدراج عدة صفوف في وقت واحد باستخدام أمر INSERT واحد:
INSERT INTO العملاء (اسم_العميل, المدينة) VALUES ('سارة علي', 'الدمام'), ('نورة خالد', 'مكة'), ('فهد سعيد', 'المدينة');
هذا الأمر سيضيف ثلاثة صفوف جديدة إلى جدول العملاء في عملية واحدة.
أنواع البيانات المدعومة في أمر INSERT
يعتمد نوع البيانات التي يمكن إدراجها على نوع العمود في الجدول. تشمل أنواع البيانات الشائعة:
- INTEGER: للأعداد الصحيحة.
- VARCHAR: للنصوص القصيرة.
- TEXT: للنصوص الطويلة.
- DATE: للتواريخ.
- BOOLEAN: للقيم المنطقية (صحيح أو خطأ).
- FLOAT: للأعداد العشرية.
اعتبارات مهمة عند استخدام أمر INSERT
- التحقق من صحة البيانات: تأكد من أن البيانات التي تحاول إدراجها متوافقة مع أنواع البيانات المحددة للأعمدة. يمكن أن يؤدي إدراج بيانات غير صالحة إلى حدوث أخطاء.
- القيود: تحقق من وجود أي قيود على الجدول (مثل المفاتيح الأساسية، المفاتيح الخارجية، أو القيود الفريدة) وتأكد من أن البيانات التي تحاول إدراجها لا تنتهك هذه القيود.
- 'القيم الفارغة (NULL): إذا لم يتم توفير قيمة لعمود، فسيتم إدراج قيمة فارغة (NULL) افتراضيًا. تأكد من أن العمود يسمح بالقيم الفارغة.
- الأمان: عند التعامل مع البيانات التي يتم إدخالها من قبل المستخدمين، يجب اتخاذ الاحتياطات اللازمة لمنع حقن SQL (SQL Injection) وهي ثغرة أمنية خطيرة. استخدم الاستعلامات المُجهزة (Prepared Statements) أو إجراءات مُخزنة (Stored Procedures) لمعالجة البيانات بشكل آمن.
أمر INSERT INTO ... ON DUPLICATE KEY UPDATE
في بعض الحالات، قد ترغب في إدراج بيانات جديدة، ولكن إذا كان هناك سجل موجود بنفس المفتاح الأساسي أو المفتاح الفريد، فبدلاً من حدوث خطأ، قم بتحديث السجل الموجود. يمكن تحقيق ذلك باستخدام الأمر INSERT INTO ... ON DUPLICATE KEY UPDATE.
مثال:
INSERT INTO العملاء (id_العميل, اسم_العميل, المدينة) VALUES (1, 'أحمد محمد', 'الرياض') ON DUPLICATE KEY UPDATE اسم_العميل = 'أحمد محمد الجديد', المدينة = 'الرياض الجديدة';
إذا كان هناك عميل بالفعل بمعرف (id_العميل) يساوي 1، فسيتم تحديث اسم العميل والمدينة. وإلا، سيتم إدراج عميل جديد.
الفرق بين INSERT و UPDATE
- INSERT: يستخدم لإضافة بيانات جديدة إلى الجدول.
- UPDATE: يستخدم لتعديل البيانات الموجودة في الجدول.
كلاهما من الأوامر الأساسية في SQL، ولكن لهما أغراض مختلفة.
علاقة INSERT بالخيارات الثنائية والتحليل الفني
على الرغم من أن أمر INSERT هو جزء من لغة SQL وقواعد البيانات، إلا أنه يمكن أن يكون له صلة غير مباشرة بعالم الخيارات الثنائية (Binary Options) و التحليل الفني. على سبيل المثال، يمكن استخدام قواعد البيانات لتخزين بيانات تاريخية لأسعار الأصول، والتي بدورها تستخدم في:
- استراتيجيات التداول: مثل استراتيجية 60 ثانية، استراتيجية مارتينجال، استراتيجية بينيت، استراتيجية روسي، استراتيجية ويليامز، تعتمد على تحليل البيانات التاريخية.
- المؤشرات الفنية: مثل المتوسطات المتحركة، مؤشر القوة النسبية (RSI)، مؤشر الماكد (MACD)، بولينجر باندز، مؤشر ستوكاستيك، تتطلب تخزين ومعالجة البيانات.
- تحليل حجم التداول: مراقبة حجم التداول يمكن أن توفر رؤى قيمة حول اتجاهات السوق.
- التحليل الأساسي: تخزين البيانات الاقتصادية والمالية.
- إدارة المخاطر: تخزين بيانات الصفقات السابقة لتقييم المخاطر.
- التعرف على الأنماط: استخدام التعلم الآلي لتحديد أنماط التداول.
- التنبؤ بالأسعار: باستخدام الشبكات العصبية و التحليل الزمني لتحليل البيانات التاريخية.
- تحسين الخوارزميات: لتحسين أداء الروبوتات التداولية.
- التحقق من صحة الاستراتيجيات: باستخدام الاختبار الخلفي (Backtesting).
- تحليل الارتباط: لتحديد العلاقات بين الأصول المختلفة.
- تحديد الاتجاهات: مثل الاتجاه الصاعد، الاتجاه الهابط، الاتجاه الجانبي.
- استراتيجية الاختراق و استراتيجية الارتداد تعتمد على تحليل البيانات.
- استراتيجية الدعم والمقاومة و استراتيجية خطوط الاتجاه
- استراتيجية البولينجر باندز و استراتيجية المتوسطات المتحركة المتقاطعة
- تحليل الشموع اليابانية: مثل الشموع الدوجي، شموع المطرقة، شموع الابتلاع
- تحليل نمط الرأس والكتفين ونمط القمة المزدوجة والقاع المزدوج
لذلك، فإن أمر INSERT (وغيره من أوامر SQL) يلعب دورًا حيويًا في البنية التحتية التي تدعم هذه التحليلات والاستراتيجيات.
الخلاصة
أمر INSERT هو أداة قوية لإضافة بيانات جديدة إلى جداول قاعدة البيانات. فهم بناء الجملة الخاص به، وأنواع البيانات المدعومة، والاعتبارات المهمة سيساعدك على استخدامه بفعالية في مشاريعك. تذكر دائمًا التحقق من صحة البيانات والأمان لمنع الأخطاء والثغرات الأمنية. كما أن فهم علاقة قواعد البيانات بالتحليل الفني والخيارات الثنائية يمكن أن يفتح لك آفاقًا جديدة في هذا المجال.
موارد إضافية
- SQL
- قاعدة البيانات
- لغة الاستعلام الهيكلية
- UPDATE
- DELETE
- SELECT
- المفتاح الأساسي
- المفتاح الخارجي
- قيود قاعدة البيانات
- حقن SQL
```
ابدأ التداول الآن
سجّل في IQ Option (الحد الأدنى للإيداع 10 دولار) افتح حساباً في Pocket Option (الحد الأدنى للإيداع 5 دولار)
انضم إلى مجتمعنا
اشترك في قناة Telegram الخاصة بنا @strategybin لتصلك: ✓ إشارات تداول يومية ✓ تحليلات استراتيجية حصرية ✓ تنبيهات اتجاهات السوق ✓ مواد تعليمية للمبتدئين