PDA

View Full Version : چطور بجای کلید خارجی، یک ستون دیگر را در datagridview نمایش دهیم؟



dontspeak
چهارشنبه 28 اسفند 1398, 20:36 عصر
سلام دوستان من دوتا جدول دارم یکی جدول کالا و دومی جدول خرید(که با هم در ارتباطن). هنگام که یک رکورد در جدول خرید ثبت میشه آی دی کالا بعنوان کلید ذخیره میشه.
حالا می خوام جدول خرید رو توی datagridview نشون بدم، مشکلی که دارم اینه که توی گریدویو آی دی کالا نشون داده میشه درحالی که من میخوام نام کالا نشون داده بشه. چکار باید بکنم؟

ShayanFiroozi
پنج شنبه 29 اسفند 1398, 01:20 صبح
سلام ، شما در SQL Server به جای خوندن اطلاعات از جدول یه View بسازین و اطلاعات جدول دوم رو از View بخونین ، البته راه دیگش اینه که از INNER و OUTER Join ها استفاده کنین که Command String هاتون خیلی پیچیده میشه ،
بهتره پروسس رو بندازین به دوش SQL Server !

یه نمونه View سفارشی شده (که البته View شما فقط با Design گرافیکی قابل حله چون پیچیدگی نداره) :


SELECT TOP 100 PERCENT dbo._tbl_Trips.id, ROW_NUMBER() OVER (ORDER BY dbo._tbl_Trips.id ASC) AS Row, dbo._tbl_Trips._Date, dbo._tbl_Trips._Time, dbo._tbl_Trips._Trip_Number,
dbo._tbl_Trips._PassengerName, dbo._tbl_Destinations._Destination_Name + N' مسافت تقریبی ' + CAST(dbo._tbl_Destinations._Destination_KM AS nvarchar) + N' کیلومتر ' AS _Dst_Info,
dbo._tbl_Drivers._Name + N' ' + dbo._tbl_Drivers._Family + N' به ش.همراه : ' + dbo._tbl_Drivers._Mobile AS _Driver_Info,
dbo._tbl_Cars._Car_Model + N' ' + dbo._tbl_Cars._Car_Color + N' رنگ به ش.پلاک : ' + dbo._tbl_Cars._Pelak + N' و کد شناسایی : ' + dbo._tbl_Cars._Car_Taxi_Code AS _Car_Info, dbo._tbl_Trips._Price,
dbo._tbl_Trips._ExtraStuff_Price, dbo._tbl_Trips._ExtraStuffDescription, dbo._tbl_Trips._Description
FROM dbo._tbl_Trips INNER JOIN
dbo._tbl_Drivers ON dbo._tbl_Trips._Driver = dbo._tbl_Drivers.id INNER JOIN
dbo._tbl_Destinations ON dbo._tbl_Trips._Destination = dbo._tbl_Destinations.id INNER JOIN
dbo._tbl_Cars ON dbo._tbl_Drivers.id = dbo._tbl_Cars._Car_Owner
ORDER BY ROW ASC

dontspeak
یک شنبه 03 فروردین 1399, 10:13 صبح
از پاسختون ممنون
من مشکلمو به این شکل حل کردم و اینجا فقط گذاشتم که کمک دوستان باشه
اومدم توی دیتاست getdata رو انتخاب کردم و commendtext اونو تصحیح کردم. مثل عکس
151490151490