להתחבר אל מסד נתונים SQL Server ו מלא DataGridView

בשלב זה נראה, sensilla מאוד עם מעט מאוד קוד, אנחנו יכולים להקים בסיסי. ויזואלי נטו חיבור לשרת SQL, במקרה שלי SQL Server Express 2005, ואז לשחזר נתונים שולחנות למלא DataGridView איתם.

הדבר הראשון שיש לעשות הוא לייבא שני מרחבי שמות כמו להראות להלן:

 יבוא System.Data
 יבוא System.Data.SqlClient

בדוגמה זו נשתמש טופס עם כפתור (Button1) ו DataGridView (DataGridView1). במקרה של לחץ button1 העתק את הקוד הבא ולשנות כמה פרמטרים (שם או IP של השרת, את שם מסד הנתונים ואת שם הטבלה בדוח בחר ) כך שהכל פועל כשורה.

 דים CNN כפי SqlConnection חדש ("Data Source = MyServidor; קטלוג ראשוני = MyDatabase: אבטחה משולבת = SSPI;")

 דה דים כפי SqlDataAdapter חדש ("SELECT * FROM Products", CNN)
 DS אפלולי כמו במערך חדש

 da.Fill (DS)

 DataGridView1.DataSource ds.Tables = (0)

טוב, בעצם אין הרבה מה להסביר ... אתה יוצר חיבור (CNN), ואז כמה DataAdapter (דה) שיש כפרמטר את ההצהרה כדי לאחזר נתונים ( בחר ) והקשר לשימוש (CNN). אם אתה רוצה לבחור רק רשומות מסוימות צריך להוסיף תנאי WHERE משפט SELECT.

בשורות הבאות נשאיר כמה הגדרות קצרות במקרה מישהו מכם נדרשו כדי ללמוד עוד על האפשרויות השונות ליצירת SQL Server 2005 חיבור אני משאיר גם את הקישור הבא: http://www.connectionstrings.com/sql שרת-2005 .

DataAdapter

מייצגת קבוצה של פקודות SQL ו חיבור מסד נתונים המשמשים למילוי במערך ולעדכן את מקור הנתונים.
DataAdapter מהווה גשר בין בסיס הנתונים לבין מקור הנתונים לאחזור ואחסון נתונים. לשמש גשר, DataAdapter מלא מקצה שיטה, לשנות את הנתונים של DataSet כדי להתאים את מקור הנתונים, ומקצה את שיטת העדכון, אשר משנה את הנתונים במקור הנתונים יעלה בקנה אחד עם אלה של במערך.

DataSet

מייצג זיכרון מטמון של נתונים. זהו מרכיב בסיסי של האדריכלות ADO.NET. במערך מורכב מאוסף של אובייקטים DataTable.

DataTable

מייצג טבלת נתונים בזיכרון.
DataTable הוא האובייקט המרכזי של הספרייה ADO.NET. בין אובייקטים שמשתמשים DataTable ו DataView במערך כולל.

בעת גישה אובייקטים DataTable, עליך לזכור כי מדובר במקרה רגיש תנאי. לדוגמה, אם אחד DataTable בשם "mydatatable" אחרים "Mydatatable", מחרוזת המשמש לחפש אחד השולחנות נחשבים רישיות. עם זאת, אם יש "mydatatable" אך לא "Mydatatable" נחשב את מחרוזת החיפוש אינו תלוי רישיות. במערך יכול להכיל שני עצמים DataTable בעלי tablename באותו נכס ערך ערכים שונים עבור הנכס מרחב שם. <

38 תגובות ל "להתחבר אל מסד נתונים SQL Server ו מלא DataGridView"

  1. [...] ב sensilla הקודם הודעה, הרבה עם מעט מאוד קוד, נראה איך להתחבר [...]

    • Vaneagas Harvy אומר:

      שלום, עבור הפרסום אני באמת מאוד עזר להשיג חיבור ללא שגיאות נוספות תודה רבה לך באמת ואני מקווה יום אחד לחזור לטובת בקרוב

  2. [...] כדי לכתוב את הדוגמה של חיבור ל-SQL Server ו-Microsoft Access Connection הבנתי שלמרות אלה הם שני סוגים של [...]

  3. [...] הראה כיצד ניתן לסנן הרשומות datagridview. דוגמה זו מבוססת על זה קודם, אבל ההבדל הוא שבמקום עובר כמו datagridview בנתוני המקור לטבלה, אתה [...]

  4. Polledo ארמנדו אומר:

    שלום, יש לי preguta אני רואה את השיטה כדי לטעון מחדש את הנתונים datagridview הם efecivos, אז איזו תועלת משמש רענון או עדכון לשים esu לא לעדכן את הנתונים או פשוט מרענן ולא עושה דבר כדי לנסות מספר דרכים ליישם אבל לא לשרת. השאלה הספציפית שלי היא לשרת את העדכון

    • אלישע אומר:

      מה אני עושה ejemple הנכון קורא נתונים מתוך שאילתת SQL והם ממלאים datagridview. אבל אם אני משנה את כל המידע הזה, אני פשוט עושה בזיכרון. שינויים אלה לא הולכים למסד הנתונים. מבחינתם Updatey צריך להשתמש להשתמש בו היה צריך ליצור את שיטת העדכון של SqlDataAdapter באמצעות CommandBuilder. אני אכתוב כמה למשל.

  5. רקחו מרקו אומר:

    אני עובד על מערכת התחבורה, ולסנן מידע נהגים nesecito ברשת נתונים על ידי כתיבת בתיבת טקסט שם באותו זמן זה מסנן ומוצג על רשת הנתונים. למשל. כאשר אתה מתחיל להקליד בתיבת הטקסט מילה רוג'ר מוצג DataGrid כל השמות עם r.

  6. קרלוס קרדוזו אומר:

    הבוס.

    השאלה כאמור אומרים לעבור משתמש? porq ובכך מתחבר ל-SQL כאורח.

    ברכות. -

  7. ובכן, זה אומר:

    איך אני מציג לי שאם תוכנית היא למעשה מאגר אנאנ, אם דוגמא PERSONASTA עם רק מקום מספר לוח הזמנים שלך

    • AlbertoJ אומר:

      שלום,
      אתה יכול לשים את הטקסט שבו אתה צריך למלא את מספר תעודת הזהות
      וגם את השאילתה:

      ("SELECT * FROM עובדים איפה cedula = '" + Me.txtcedula.Text + "" ", CNN)
      אין לי תקווה פה VB.net לא טעות בתחביר.
      txtcedula יהיה שם הטקסט שלכם
      ברכה.

  8. ובכן, זה אומר:

    אני חדש זה

  9. דוד אמר מארין:

    היי מתנצלים מפריע, אבל אין לי ספק, ואני מקווה שמישהו מגיב כי זה דחוף למדי, Habra כדרך למלא טבלה חדשה עם הנתונים שיש לי datagridview זה datagridview שלי התמלא השולחן "x" ואז ממלא אותו השולחן "x" נתונים כאלה על השולחן datagridview שלי "x" אני עובר את זה לטבלה חדשה "ו". אתה יכול????????? לעזור.

  10. ארווין אומר:

    טוב טעם

  11. פול אומר:

    יש לי את הבעיה הבאה, אם אני משתמש בנתוני המקור רכושם של הרשת, שאני לטעון את בסיס הנתונים עם נתוני בא ממסד הנתונים כמו בדוגמה לעיל, מה שאני רוצה כרגע היא לשנות עמודות DataGrid כגון רוחב וכאלה, אז אני לא היה להוסיף עמודות כדי DataGrid, אבל עכשיו כשאני לקמפל להריץ את התוכנה ולהשתמש העמודות DataGrid שהוספתי הם שם, אבל ריק!
    ומלבד אלה עמודות, אשר הוספתי הן בשל בסיס הנתונים, עכשיו אני רוצה לעשות הוא ש ש הוספתי עמודים ריקים עם הנתונים של העמודות שהוספתי דרך עמודות אלה בנתוני המקור וללכת ... אבל איך?

    • אלישע אומר:

      זוהי בעיה נפוצה למדי, אבל לא מסביר איך לתקן את זה. האמת היא שמגיע לו הודעה מלאה על מנת להמחיש איך זה עובד, אבל אתה מסביר בקצרה מה שאתה עושה:
      א '- ליצור אובייקט עם כל השדות של הטבלה
      2 -. הוספת מקור נתונים חדש באמצעות אובייקט הקודם
      3 -. ב datagridview בחר את מקור הנתונים כפי בנתוני המקור. זה Queara databinding אובייקט
      4 -. עריכת עמודי datagridview להסתיר, להציג ולעצב את העמודות שאתה רוצה
      5 -. מקוד ממלא את האובייקט בנתוני המקור databinding

      טוב, אני מקווה שלא לסבך יותר מדי עם זה. מזל.

  12. ג'ינה אומרת:

    פתח דרך לקבל מידע ממסד הנתונים תוך הצגתו כמו כרטיס.???

    אני מתחיל על זה אבל אני מוצא

  13. חוזה קרוז, אומר:

    תודה רבה על auyda שלך שימש אותי היטב.
    אני מקווה compartinedo בעקבות הידע שלך toarlos אחרים puedamos.

  14. legna אומר:

    שלום אני יכול ליצור טופס ילד Visual Basic, למשל אני לוחץ על כפתור להראות לי דרך אחרת

  15. מאסי אומר:

    Disculpaa ..

    להוסיף, לשנות ולמחוק רשומות datagridview אותה

    עם בסיס הנתונים, כך שכאשר אתה מוסיף לשנות או למחוק, גם להסיר db.

    Gracas של antemanoo י

  16. ריקרדו אומר:

    סליחה אני משתמש חזותית 2008, מחרוזת החיבור שאני עושה את זה עם ADOdb, אשר מיובאים ספריית 'יבוא ADOdb "החיבור בסדר גמור, אבל כאשר אני ממלא datagridview לא עובד אם לא יכלול היתר, AYUDAAAA בבקשה!!

  17. כריסטיאן אומר:

    אני עובד עם VB 2010, וכאשר אני רוצה להראות datagridview עם למשל את השאילתה. "בחר Column1 כ 'NAME1, COLUMN2 כ' name2" מהשולחן "
    datagridview.datasource = dataset.table (0)
    datagridview אינה מציגה את הבחירה מראה לי את העצם שולחן גלם, הוא שולחן שלם בלי כינויים, כמו שאני יקרה להציג.
    איך לפתור את הבעיה הזו

  18. VJUNIOR אומר:

    תודה חברים על מנת שלב אלה יכולים למד ... איש לא היה יכול באמת לא אפס ... תודה ........

  19. אימלדה אומר:

    היי תודה!

  20. לואיס אומר:

    פירסום נהדר, טוב אתה עושה. תמשיכי עם זה! .... טוב, עכשיו השאלה.
    יש לי DataGridView בשם dgv_Aclaraciones, ויש לי 3 עמודות כברירת מחדל (1 הוא של התיבה סוג, הטקסט 2 וסוג 3 הוא כפתור סוג), גם כן, לעומת זאת באתר שלי יש לי שולחן " הבהרות "עם 2 שדות, מתוכם רק אחד שעניינו אותי, כי זה מה שאני מראה על datagridview.

    ניסיתי לעשות עם בנתוני המקור, אבל מה שהיא עושה הוא להוסיף עמודות נוספות כדי datagridview. זה יהיה נהדר אם יש לך את התשובה, אך אני אמשיך לחקור, תודה.

    בהודעה מצוין! (שוב!! ... XD)

  21. אלכסנדר הרננדז אומר:

    טוב
    מישהו מוכן בטובו להגיד לי איך להתגבר על כמה db של SQL שני שדות כגון שמות ושמות אחרים, texboxt כשאילתה.
    VB10 השימוש דחוף תודה על שיתוף הפעולה

  22. דבר מפחיד אמר:

    היי, תודה על האתר שלך, יש לי שאלה אם יש שני שולחנות שאני רוצה לשלב octener אחת DataGrid יש לי שאילתה אבל לא מראים לי את הנתונים שאני יכול לעשות. תודה

  23. cherry32 אמר:

    שלום
    עקבתי למשל. הוא ממלא את dataridview, אומר "System.IndexOutOfRangeException לא נשלט
    הודעה = 0 לא ניתן למצוא שולחן. "
    מה כבר יכול לקרות? בסיס הנתונים שלי ריקה?

    • אלישע אומר:

      הבעיה יכול להיות, daaset שלך לא מכיל טבלה ...
      בדוק את הקוד וודא שאתה לא מבלבל את DataAdapter משתנה (דה) של בסיס הנתונים (DS) או אחר טעות דפוס.
      על ידי הפעלת שיטת המילוי של DataAdapter ממלא את DS DataSet עם שולחן תוצאה של שאילתת SQL.
      זה באמת קוד מעט מאוד וקל מאוד להבין. תראו את זה ולעשות את זה לעבוד אם אתה לא יכול לחסום את כל ולהתחיל מחדש. בטוח שזה עובד. ;)

  24. omar_judai אומר:

    שלום מה שלומך!
    סיבת הביקור שלי היא לראות אם אני יכול לעזור
    ש הסיבה עשיתי תוכנית ב-VB 2010 ו-SQL Server 2008
    הכל היה בסדר עד שאני רוצה לבדוק את הבקשה שלי במחשב אחר, יש לי שגיאות כאשר אנו רוצים לשמור את הנתונים, אני בא

    אין אפשרות לפתוח את הקובץ פיזית "C: \ Users \ עומר \ Documents \ Visual Studio 2010 \ פרוייקטים \ עלות הפרויקט \ עלות הפרויקט \ bin \ Debug \ Database1.mdf". שגיאת מערכת הפעלה 32: "32 (לא אחזור טקסט לשגיאה זו סיבה:. 15105)".
    אין אפשרות לפתוח את הקובץ פיזית "C: \ Users \ עומר \ Documents \ Visual Studio 2010 \ פרוייקטים \ עלות הפרויקט \ עלות הפרויקט \ bin \ Debug \ Database1_log.ldf". שגיאת מערכת הפעלה 32: "32 (לא אחזור טקסט לשגיאה זו סיבה:. 15105)".
    אין אפשרות לפתוח את "database1" מסד הנתונים, כי אתה לא יכול לגשת לקבצים או זיכרון או שטח דיסק אינה מספיקה. לראות את יומן השגיאות של SQL Server. (Microsoft SQL Server, Error: 5120)

    האמת יצאה לאור טעות זו היא כי
    יהיה שם מחשב המשתמש או
    אם mepudieran עזרה יהיה מאוד אסיר תודה

  25. Lugrarz אומר:

    Q רק משהו להוסיף, אם תשנה חזותית System.Data.OleDb System.Data.SqlClient טי לאפשר לעשות את אותו הדבר עם חיבור OLE (כגון גישה)

  26. פיטר אומר:

    שלום תרומה טובה מאוד! יש לי שאלה כזאת פשוט לא שמתי את שם המשתמש שלי ואת הסיסמה טופס כניסה הנתונים aparescan לי ש datagri שלי בצורה אחרת???
    תודה רבה מראש!

  27. לואיס Glez אומר:

    הסביר טוב מאוד אבל אני יכול להשתמש בחיבור ואת מקור הנתונים, ורוצים ליצור המתקין עבור הבקשה שלי במחשבים אחרים בתוך אותה רשת?

  28. קרלוס אסטרדה אומר:

    שלום אני תוהה אם מישהו יכול לעזור לי, יש לי תוכנית עשה בשנת 2010 של Visual Basic, אשר מתחבר לשרת ואני לעומת העברת סחורות שני סניפים ואומר לי שיש לי הבדלים ביניהם ב datagridview ל המנהל יכול לבדוק את ההפקדה מהר יותר ממנו שגיאות, עובד מצוין על הסניף הראשי כי המידע הוא מרכזי, הבעיה היא כאשר אני עושה את זה בחנות אחרת, כי התוכנית שלי אני רוצה לחבר שני שרתים מקומיים שרת מאיפה המידע, איך אני מתחבר לשני שרתים המפעילים את השאילתה תראה לי את ההבדלים datagridview. בשאילתה הוא בחר cod_articulo, תיאור, transferencia1, transferencia2 מ (בחר cod_articulo, SUM (n_cantidad) כפיקדון transferencia1 איפה = 'uni03dpgp' ו c_concepto איחוד = 'עבודה' על ידי קבוצה נבחרת cod_articulo cod_articulo, SUM (n_cantidad) כמו transferencia2 איפה הפיקדון = "uni01 'ו c_concepto = קבוצת' עבודה 'על ידי cod_articulo) מ tr_inventario קבוצה ידי cod_articulo, תיאור. משהו לא כאן אבל יש לי פחות או יותר זה מה שאני עושה זה חיפוש על אותו שרת גם את המקור והיעד העברת הברקודים מקובצים ולאחר מכן באמצעות כמויות גדולות של האיחוד ונותן לי את התוצאה אבל זה צריך להיעשות לשם השוואה של שני שרתים. אני מעריך את זה אני יכול לעזור.

  29. מרי אומרת:

    אני צריך לייצא שדה בטבלה את הטקסט, ראיתי כמה תשובות אבל כולם despleigan ב DataGridView ואני צריך להציג בתיבת הטקסט. תודה על העזרה.

  30. מרי אומרת:

    שלום אני צריך לדעת איך לבצע שאילתה מערכו החזותי של שדה בטבלה SQL ולהביא אותו ל-Visual להקצות תוספת משתנה, מחדש לשמור את מסד הנתונים ב-SQL. מישהו יכול לעזור לי? מאיצה בי להמשיך עם הפרויקט. תודה!

הערה