-
מהי הדרך הקלה ו/או הנכונה
לשלוף מידע (SELECT בלבד) משתי טבלאות הנמצאות בשתי שרתים פיזיים שוניםראית את האפשרות של sp_addlinkedsrvlogin
מעבר לפן הטכני שלא הצלחתי לתפעל אותה
יש שם אזהרה מפחידה לגבי אבטחת הסיסמאות
This example does not use Windows Authentication. Passwords will be transmitted unencrypted. Passwords may be visible in data source definitions and scripts that are saved to disk, in backups, and in log files. Never use an administrator password in this kind of connection. Consult your network administrator for security guidance specific to your environment.
נ.ב.
- התוצאה הסופית שאני צריך זה טבלה שתשלוף נתונים משלוש טבלאות משלושה דאטה-בייס
כאשר משתי דאטה-בייס נמצאים באותו שרת, אני שולף את זה באמצעות
SELECT * FROM [Name_Data_Base].[dbo].[Table_name] tb1
[@OdedDvir תרגמתי את השמות לאנגלית..... ]
- אסביר מה אני מעוניין לעשות
היות וסביר שאני 'בורח' לבצע פעולות בצורה עקומה במעט הידע שיש לי
ולמרות שהתוצאה עלולה להיות נכונה, הדרך להגיע אליה מאוד מאוד חשובה
מדובר על 'חברת אם' שמאגדת תת-חברות שהצטרפו במהלך השנים
ולכן עד היום הנתונים מפוזרים ומנוהלים במספר שרתים/תוכנותבניתי תוכנה (C# WINFORM) ש'במודול CRM' אני מאגד את כל פעילות הלקוח/ספק
בכל החברות ובכל הווריאציות למקום אחד מסודראני מעוניין להציג פר 'ספק' את רשימת המוצרים שסיפק בטווח תאריכים לכל חברה, וכמה יש במלאי כרגע
כל הנתונים הללו (רשימת מוצרי הספק / דוח מכירות / מלאי) נגישים אצלי בתוכנה
אומנם נשלפים כרגע בתצוגה פרטנית פר מוצר
(הצד לקוח - רואה את כל המידע בבת אחת, מאחורי הקלעים עצבתי textBox שמוזן בהם המידע באמצעות שאילתות נפרדות)וכעת אני מעוניין לקבל את הנתונים כטבלה (dataGridView) של כל מוצרי הספק בצורה מסודרת (לשימוש לדוחות / הזמנות וכד' )
ומדוע הארכתי בכל זה
כי חוששני שבמרחבי הC# ישנם אפשריות לקבל כל נתון בנפרד לטבלה זמנית,
ולאחד ולהציג אותה
(שאלה משנית בהנחה שזה אפשרי: מבחינת מהירות / אפשריות / משאבים
האם עדיף לבצע 'עמודות מחושבות' בתוכנה או בSQL) - התוצאה הסופית שאני צריך זה טבלה שתשלוף נתונים משלוש טבלאות משלושה דאטה-בייס
-
@mekev נראה לי שהייתי שולף מכל אחד את הנתונים הרלוונטיים בלבד, ואח"כ משתמש ב-Linq כדי לבצע שאילתה לאחד את הנתונים.
לתצורה שתיארת, זה פתרון יחסית קל. הפתרון היותר מסובך הוא ליצור שרת נתונים אחד שאחראי על איסוף הנתונים משאר השרתים, ולבצע קריאות רק אליו.לגבי עמודות מחושבות, הקו המנחה שלי בד"כ הוא לא להשתמש ב-db לביצוע חישובים בכלל. מאותה הסיבה שבגללה אני מפריד את פיסות הנתונים של החישובים מעיקרא ב-db. את כל החישובים אני מבצע בתוכנה. אני משאיר ל-db את האחריות לטפל באחסון, ארגון, ושליפה של הנתונים. בזה הוא הכי טוב.
-