منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : مساعدة في تحويل نوع الحقل
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
لدي قاعدة بيانات فيها حقل من نوع TEXT

عند تحويله الى رقم تنحذف اكثر السجلات منه

انا اعمل له تحويل يدوي ادخل على تصميم الجدول ومن Data Type

من TEXT
الى Number



هل يوجد حل لتحويل الحقل الى رقم من غير ان يحذف السجلات
اخي العزيز يمكنك ضافة حقل الى الجدول من نوع رقم ثم انسخ قيم الحقل الي نوعه text الى الحقل الي نوعه number بعده تقدر تحذف الحقل الي نوعه نص
بشرط ان تكون القيم في الحقل text جميعها ارقام
السجلات التي تحذف هل هي رقم ام نص ؟

اذا كانت نص ستحذف لان الحقل من نوع رقم فقط ولا يقبل نصوص
السجلات الي تحذف هي نص

طيب ايش الحل
السلام عليكم

اخي الكريم ضع عملية النسخ داخل loop واستخدم val للحقل المراد تحويله

او بامكانك وضع مثال لكي يتم التعديل عليه من قبل الاعضاء

يعطيك العافية
السلام عليكم ورحمة الله

أخي الكريم

عند تحويل نوع بيانات عمود لا تنحذف سجلات وإنما تنمحى البيانات من حقول العمود التي لا يمكن تحويلها إلى رقم مع بقاء السجلات.
في هذه الحالة *وقبل التحويل* عليك بالمرور يدويا عليها وتغييرها إلى أرقام، ولكن هذه الحل مرهق حسب كمية البيانات المطلوب تعديلها.

ولكن بما أن إسمك VB.NET الذي على أنك مبرمج Visual Basic .Net فيمكن عمل برنامج صغير لهذا الغرض وخصوصا إذا كانت قاعدة البيانات تحتوي بيانات كثيرة.

أحد الحلول: إذا كانت تلك الحقول هي عبارة عن رقم ومعها أحرف عليك يتنفيذ عملية تحديث باستخلاص الرقم وحذف الأحرف النصية.

تشبيه إحدى الحالات:
لو كان لديك جدول table1 فيه عمود باسم (age) نوع (نص) وكانت بياناته:
21
22 سنة
23 عام
24

مع ملاحظة أن بداية كل قيمة هي رقم فيمكنك تنفيذ عملية التحديث التالية:
PHP كود :
UPDATE [table1SET [age] = VAL([age]) 
لعلي ما وضحت الموضوع

الحقل الذي لدي عباره عن TEXT

ويحتوي على ارقام لأصناف صيدلية فبعض الأدوية الكود الخاص فيها عبارة عن رقم ونص مثلا

1002AAB


هذا كود لدواء معين انا اريد تحويل نوع العمود الى رقم
ما استطيع ان احذف الاحرف لاني احتاج اليها
لا يمكن تحويل نوع العمود إلى رقم لأنه يحتوي على قيم نصية، أما إذا كان العامود يحتوي على قيم رقمية فلا إشكال في عملية التحويل.
السلام عليكم ورحمة الله

أخي الكريم

إذا لا تحول نوعه لرقم واتركه كما هو نص!


لماذا تريد تحويل نوعه لرقم؟
يبدو انك تريد ان تحول نوع الحقل الى رقم لكي تستخدمة ك primery key
اخي العزيز اذا كان هذا هو المطلوب فيجب ترك هذا العمود كما هو مننوع text واضف عمود من نوع autonumber واجعله primerykey حيث ان رمز الواء يتم ادخاله من قبل المستخدم ولايمكنك اعتماد primery key مدخل يدويا