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

نسخة كاملة : مساواة فيلد نوعه integer بفيلد نوع varchar في شرط في جملة select
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
السلام عليكم اريد عمل view  اقوم فيه بربط جدولين عن طريق حقل ال id نوع حقل  ال id في الجدول الاول int ونوع  حقل ال id في الجدول الثاني varchar 

كيف اساوي قيمة  int  بقيمة varchar  


SELECT      *
FROM            dbo.tbl1 INNER JOIN
                        dbo.tbl2 ON dbo.tbl1.id= dbo.tbl2.id
هنا يعطي error  converting from varchar to type int
(15-03-23, 01:06 PM)bassant كتب : [ -> ]السلام عليكم اريد عمل view  اقوم فيه بربط جدولين عن طريق حقل ال id نوع حقل  ال id في الجدول الاول int ونوع  حقل ال id في الجدول الثاني varchar 

كيف اساوي قيمة  int  بقيمة varchar  


SELECT      *
FROM            dbo.tbl1 INNER JOIN
                        dbo.tbl2 ON dbo.tbl1.id= dbo.tbl2.id
هنا يعطي error  converting from varchar to type int

ارجو المساعدة
(15-03-23, 01:06 PM)bassant كتب : [ -> ]السلام عليكم اريد عمل view  اقوم فيه بربط جدولين عن طريق حقل ال id نوع حقل  ال id في الجدول الاول int ونوع  حقل ال id في الجدول الثاني varchar 

كيف اساوي قيمة  int  بقيمة varchar  


SELECT      *
FROM            dbo.tbl1 INNER JOIN
                        dbo.tbl2 ON dbo.tbl1.id= dbo.tbl2.id
هنا يعطي error  converting from varchar to type int

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

جربي تستخدمي الخاصية (Str)  لتحويل الحقول لـ قيم نصية
فيصبح كود الاستعلام :
كود :
SELECT *
FROM dbo.tbl1
INNER JOIN dbo.tbl2 ON
str(dbo.tbl1.id) = str(dbo.tbl2.id)
(15-03-23, 06:50 PM)Taha Okla كتب : [ -> ]
(15-03-23, 01:06 PM)bassant كتب : [ -> ]السلام عليكم اريد عمل view  اقوم فيه بربط جدولين عن طريق حقل ال id نوع حقل  ال id في الجدول الاول int ونوع  حقل ال id في الجدول الثاني varchar 

كيف اساوي قيمة  int  بقيمة varchar  


SELECT      *
FROM            dbo.tbl1 INNER JOIN
                        dbo.tbl2 ON dbo.tbl1.id= dbo.tbl2.id
هنا يعطي error  converting from varchar to type int

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

جربي تستخدمي الخاصية (Str)  لتحويل الحقول لـ قيم نصية
فيصبح كود الاستعلام :
كود :
SELECT *
FROM dbo.tbl1
INNER JOIN dbo.tbl2 ON
str(dbo.tbl1.id) = str(dbo.tbl2.id)

شكرا جزيلا الكود يعمل بالفعل  ولكن توجد مشكلة تؤدي انه لا يوجد نتائج لعملية الربط يعني الاستعلام يظهر فارغ والمشكلة هي ان الحقل id النصي varchar   في الجدول الثاني الداتا بداخله عبار ة عن رقم بين قوسين []  والحقل id في الجدول الاول  ونوعه الاساسي int عبارة عن رقم فقط  وعندما اقوم بتحويله في الاستعلام الى كود نصي ايضا لا يساوي القيم ف الجدول الثاني لان النصوص تصبح مختلفة لان كما ذكرت هو رقم مابين قوسين .. هل يوجد حل لذلك وما معنى القوسين عند وجودهما في الداتا