אשמח לבדוק, אבל תוכל לכוון אותי מה עובד ומה לא ואיזה פרמטרים להכניס בבדיקה?
פורסם במקור בפורום CODE613 ב12/02/2014 19:32 (+02:00)
אשמח לבדוק, אבל תוכל לכוון אותי מה עובד ומה לא ואיזה פרמטרים להכניס בבדיקה?
פורסם במקור בפורום CODE613 ב12/02/2014 19:32 (+02:00)
אני מעדיף שלא תביא את הפרס לפורום, כי זה יעודד אנשים לעבוד באקסס, בראותם שהמוחות החריפים שוכנים שם.
אל תשכח לסמן את האשכול כפתור.
פורסם במקור בפורום CODE613 ב12/02/2014 19:02 (+02:00)
ארכיטקט, ניסית את הLongPtr?
פורסם במקור בפורום CODE613 ב12/02/2014 18:43 (+02:00)
אני חושב שבעייתך מוזכרת במאמר זה.
אם הבנתי את האנגלית טוב, אתה אמור להחליף כל Long המופיע בDeclare לLongPtr.
פורסם במקור בפורום CODE613 ב12/02/2014 15:34 (+02:00)
אני הוספתי את עניין המתכנתים לספר למה SP משמש בעולם לצרכי אבטחה. כי לעניין משתמשים גם על הSP לא מסתמכים כפי שכתבתי.
ולגבי המתכנתים, א. לא מדובר רק על אבטחה מזדון, אלא גם מבאגים וטעיות מתכנת. רוצים לדעת מה מי ושלא יימחק כל המסד בגלל פאק.
ב. לאיש תוכנה כל שהוא בארגון בהכרח יש את הקונקשיין עם סיסמה לסביבת האמת. ואיש הDB לא רוצה שיאשימו אותו במידע שהלך לכן הוא ממדר את אותו איש תוכנה.
פורסם במקור בפורום CODE613 ב13/02/2014 13:36 (+02:00)
ובכל מקרה אתה קורה תיגר על הארכיקטורה של האקסס (ולא רק... כמדומני שגם בדוטנט הגישה שמלמדים היא ממש טבלאות בDS, וSP רק כשרוצים לעשות משהו מורכב.) אבל בוודאי שזה מותר לך, ואולי באמת נפתח ע"ז ועל אבטחת מידע בכלל דיון בנפרד בימים הקרובים.
אני מודה שאתה מעלה כאן נקודה מאד חשובה, ומעניין שלא כ"כ מתייחסים לכך בעולם התיכנות.
שים לב: אין קשר בין DataSet לבין שימוש או אי שימוש בSP.
אני אישית כמעט לא משתמש בSP ואני בכלל לא קורא תיגר על כלום.
ציינתי עובדות יבשות.
התשובה האמיתית לאבטחת מידע זה שרת. לא שרת נתונים (SQL SERVER) אלא שרת של התוכנה עצמה. וככה עושים כל הארגונים היום. אבל בתוך הארגון עצמו יש מתכנתים שהם בונים את צד השרת, ולהם יש גישה למסד. איזו גישה? SP... בגלל אבטחת מידע מפני המתכנתים. הם יכולים לעשות רק מה שמצפים שהקוד שלהם יידע, ובנוסף גם מה שהם מורשים מתועד בקלות רבה יותר בגלל שזה SP.
פורסם במקור בפורום CODE613 ב13/02/2014 11:04 (+02:00)
א. לא התכוונתי מידור בין עובד לעובד, זה בלתי אפשרי עם משתמש אחד, בתוכנה שניגשת לנתונים לא דרך תיווך של מידור משתמשים או בDB או בכל רכיב בתוכנה אחר [u:2ezjn93c]שאינו על המחשב המקומי[/u:2ezjn93c]. התכוונתי למידור שהעובד לא יוכל לעשות דברים גרועים יותר ממה שהתוכנה יכולה לעשות. הכלל: אם אין רמת משתמשים מרוחקת (בDB מרוחק, או כל שרת אחר כמו WebService או WCF או ASP כמו שאמרת), כל מהגבלה שרוצים להחיל על המשתמש מוכרחים להחיל גם על האפליקציה. וכל מה שהאפליקציה מסוגלת לעשות מבחינת הרשאות, המשתמש בה פוטנציאלית יכול גם.
ב. הנחת העבודה שלי היא שזה אפשרי להוציא מחרוזת טקסט מתוך תוכנה כל שהיא לא משנה איך היא קומפלה. יותר מזה, גם כשהמחרוזת איננה ליטרל אלא משתנה, אפשר לגשת לזיכרון של התוכנה או לעקוב אחרי התקשורת של התוכנה ולקבל את הקונקשיין המלא. איך? אני אפי' לא יודע, אבל זה בהכרח אפשרי. האבטחת המידע בקשר לטבלאות המקושרות לא משנה את ההנחה האמורה.
ג. אין שום סתירה בין שימוש בSP לDataSet, זה הולך יופי ביחד.
פורסם במקור בפורום CODE613 ב13/02/2014 10:01 (+02:00)
א. מעולם, אצלי לפחות :), לא הייתה גישה ליצור משתמש בDB פר משתמש בקליינט. כוונתי הייתה לעשות סה"כ שתי משתמשים, כשהתוכנה שלך היא המשתמש המוגבל ואתה המשתמש הלא מוגבל.
שים לב שלבחור שיושב מול המחשב, קל מאוד לעשות מה בא לו עם התוכנה שלך יכולה לעשות מב בא לה. הוא רק צריך לחץ ממנה את הקונקשיין, ותאמין לי שזה לא הכי מסובך. לך אולי זה לא אכפת, אבל יש לקוחות שהמידור במשרדם קריטי.
ב. מה שהתכוונתי עם דרך הפעולה של הSP יעויין בקישור, זה מה שהתכוונתי.
פורסם במקור בפורום CODE613 ב12/02/2014 19:21 (+02:00)
אני לא בסוגיא אז אל תטרח להסביר לי עוד.
הדברים ששאלת:
SP יותר בטוח במידה ואתה נותן לו הרשאה נמוכה יותר. אם יש לתוכנה שלך הרשאת גישה לטבלאות, המשתמש (לא הלקוח, הבחור מול המחשב, פקיד גיק כזה) יכול לXXX. משא"כ בSP הוא מוגבל למה שהוא מספק.
דרך העבודה עם SP זה לא לכתוב את שמו כמו שאילתה, הוא אומר להיות אלגנטי יותר, אני לא יודע עד כמה אקסס תומך בזה, יעויין: http://support.microsoft.com/kb/185125
בקשר להרגל לSQL הרגיל ובקשר לגמישות אתה חופשי להמשיך זאת בצד המסד, תוך עריכת הSP.
המשל של דוס זה לא לומר שזה קוד שחור אלא שזה נסיון התאמת ישן לחדש. באותו המאמץ שאתה שוקל להשקיע לשנות בתוכנת הענק שלך פה ושם לעבודה מול SQL SERVER דרך הקוד, תעשה את אותו היקף מזערי של עבודה עם כלים מהירים וחדשניים יותר.
פורסם במקור בפורום CODE613 ב12/02/2014 18:55 (+02:00)
ClickOne אם כבר כותבים את השאילתה וקוד, עדיף להפעיל SP מאשר שאילתה.
זה יותר בטוח, יותר מהר, ויותר ממודל (המסד האמיתי מהתצוגה).
אבל כל העסק הזה נראה לי כמו להתאים את האפקטים של Aero לתוכנת דוס...
פורסם במקור בפורום CODE613 ב12/02/2014 10:50 (+02:00)
בהתקנה רגילה של SQL SERVER מותקן אשף בשם Import and Export Data.
חפש אותו בתוכניות.
האו מייצא ומייבא הרבה דברים מ/אל הרבה דברים.
פורסם במקור בפורום CODE613 ב11/02/2014 10:52 (+02:00)
בעזרת השם והסיסמה אתה יכול לקרוא כמו Outlock.
יש שתי פרוטוקלים IMAP וPOP, ואתה צריך לראות דוגמאות באינטרנט איך עובדים איתם, לי אין נסיון בזה כלל.
ראה כאן:
http://stackoverflow.com/questions/670183
http://stackoverflow.com/questions/545724
בהצלחה.
פורסם במקור בפורום CODE613 ב10/02/2014 11:08 (+02:00)
ארכיטקט, אין מצב שיש פתרון קל בMYSQL ולא בMSSQL (האחרונים מעתיקים בעצם הכל :)).
אם התכנון שלך נכון, והדרך למה שאתה צריך היא איך שכתבת, חייבת להיות דרך.
אני לא בסוגיא שלך (אני חוסך ככה התנצלות...), ואני לא אתחיל לנסות את כל הבלגן כדי למצוא תשובה, אבל אני מאמין שהיא בהישג יד.
בשולי הדברים: המאפיין XACT_ABORT קובע האם כל הפעולות בטרנזקציה יחשבו ככישלון במקרה שגיאה במשפט אחד. אתה צודק שזה לא עוזר ל"דלג" על שורות במשפט אחד.
ואכן לא לגמרי הבנתי את כל התוכנית. לא הבנתי למה א"א להשתמש בתנאי עם קיים אפי' בגוף השאילתה. ולמה Group by מסובך, ומה לגבי UNION וMERGE.
ברור שזה קל להפריח עצות ולבקש ממך לנסות, אבל אל תצפה שאני אעבוד בגלל שמישהו הפריח שאלות.... בהצלחה רבה.
פורסם במקור בפורום CODE613 ב09/02/2014 16:45 (+02:00)
לא הבנתי, ארכיטקט אמרת הכל במכה והבאת קוד של שורה בודדת.
מידי דברי גיגלתי ומצאתי http://stackoverflow.com/questions/1139050/how-to-ignore-duplicate-key-error-in-t-sql-sql-server
יש שם כמה פתרונות:
א. קביעת ערך במשתנה מערכת בשם XACT_ABORT
ב. כנ"ל עם IGNORE_DUP_KEY
ג. תנאי בהכנסה של אם קיים.
ד. יעויין שם...
פורסם במקור בפורום CODE613 ב09/02/2014 12:19 (+02:00)
בדוק גם להשתמש עם UNION לפני ההכנסה, עם הטבלה הקיימת כבר.
פורסם במקור בפורום CODE613 ב09/02/2014 12:15 (+02:00)
בשעת המדידה האלמנט נמצא במיכל בו הוא יוצג?
כי הרוחב יכול להיות מושפע מהקונטיינר.
פורסם במקור בפורום CODE613 ב06/02/2014 17:55 (+02:00)
אפשר עם טופס לא מאוגד, ואז לשלוח את הערכים ל SP דרך שאילתה, כאשר המשתמש לוחץ על "שמור" נניח... יותר פשוט מפשוט, זה אמנם מצריך יותר קוד, אבל עם תכנון טוב, אפשר לעשות את הכל גנרי ולהטיס את זה לשמים!!!
עם קוד? אז למה לא WPF? 
פורסם במקור בפורום CODE613 ב06/02/2014 13:29 (+02:00)
אמיתיים - התכוונתי הרגלי עבודה בחברות גדולות.
אני מאמין עדיין שא"א באקסס לגרום לזה שהוספת שורה לא תוסיף כINSERT (זה מה שזה עושה) אלא כSP. לא הגיוני שאקסס תאפשר זאת כי זה ממש לא עולה בקנה אחד עם העקרונות שלה.
אם היה אפשר, היית גם יכול לשלוח לSP את המשתמש בכל דרך שאתה רק רוצה.
פורסם במקור בפורום CODE613 ב06/02/2014 13:04 (+02:00)
בוקר טוב, אני חשבתי שאתה משתמש עם אקסס כUI, וממילא א"א.
במסדים אמיתיים משתמשים כמעט רק בSP במיוחד בגלל בעיות הרשאה, וגם בשביל זיהוי משתמש ועוד.
פורסם במקור בפורום CODE613 ב06/02/2014 10:53 (+02:00)
קודם כל צריך סולק (חברה שמספקת שירות כזה), אח"כ לשאול איך עושים.
פורסם במקור בפורום CODE613 ב06/02/2014 10:57 (+02:00)