דילוג לתוכן
  • דף הבית
  • קטגוריות
  • פוסטים אחרונים
  • משתמשים
  • חיפוש
  • חוקי הפורום
כיווץ
תחומים

תחומים - פורום חרדי מקצועי

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. תוכנה
  3. sql server

sql server

מתוזמן נעוץ נעול הועבר תוכנה
29 פוסטים 2 כותבים 1.1k צפיות 2 עוקבים
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
תגובה
  • תגובה כנושא
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • ש שרה רחל

    אני מנסה לכתוב פרוצדורה שמכניסה נתונים ל2 טבלאות
    כאשר בכל טבלה יש ID .
    הטבלה השניה מקבלת מהראשונה את הID- מפתח של הראשון ומכניסה אותו כאחד מהנתונים
    ואת הID -מפתח של הטבלה השניה אני רוצה להחזיר בכל קריאה לפרוצדורה
    זה מה שכתבתי וזה מחזיר לי -1
    מה הבעיה .?

    ALTER PROCEDURE [dbo].[INSERT_DOC]
    	-- Add the parameters for the stored procedure here
    	@docName nvarchar(50) = 0, 
    	@autherName nvarchar(50) = 0, 
    	@docPath nvarchar(50) = 0,
    	@docDate date
    	
    AS
    BEGIN
    	-- SET NOCOUNT ON added to prevent extra result sets from
    	-- interfering with SELECT statements.
    	SET NOCOUNT ON;
    
        -- Insert statements for procedure here
    	INSERT INTO AUTHER (AUTHER_NAME)
    	VALUES (@autherName)
    	
    
    	INSERT INTO DOC (DOC_NAME,AUTHER_ID, DOC_PATH,DOC_DATE)
    	VALUES (@docName,@@IDENTITY, @docPath, @docDate)
    
    	SELECT SCOPE_IDENTITY() as D_ID
    
    	 
    
    END
    
    OdedDvirO
    OdedDvirO
    OdedDvir
    כתב ב נערך לאחרונה על ידי
    #2

    @שרה-רחל אמר בsql server:

    SELECT SCOPE_IDENTITY() as D_ID

    האם כבר קיים שדה D_ID בטבלה DOC?

    תגובה 1 תגובה אחרונה
    0
    • ש
      ש
      שרה רחל
      כתב ב נערך לאחרונה על ידי
      #3

      האם כשאני קוראת
      AS D_ID
      זה לא נקרא שאני מכנה את כל השורה SELECT SCOPE_IDENTITY()
      בשם
      D_ID
      הטבלה עצמה מכילה את העמודה
      DOC_ID

      OdedDvirO תגובה 1 תגובה אחרונה
      0
      • ש שרה רחל

        האם כשאני קוראת
        AS D_ID
        זה לא נקרא שאני מכנה את כל השורה SELECT SCOPE_IDENTITY()
        בשם
        D_ID
        הטבלה עצמה מכילה את העמודה
        DOC_ID

        OdedDvirO
        OdedDvirO
        OdedDvir
        כתב ב נערך לאחרונה על ידי OdedDvir
        #4

        @שרה-רחל אמר בsql server:

        האם כשאני קוראת
        AS D_ID
        זה לא נקרא שאני מכנה את כל השורה SELECT SCOPE_IDENTITY()
        בשם
        D_ID
        הטבלה עצמה מכילה את העמודה
        DOC_ID

        זה כן, רק חשבתי שאולי זו בעיה של שמות.

        1. האם ההכנסה הראשונה מתבצעת כראוי?
        2. האם בהכנסה השנייה הערך AUTHER_ID שמוכנס ל-DOC הוא כן תקין?
        תגובה 1 תגובה אחרונה
        0
        • ש
          ש
          שרה רחל
          כתב ב נערך לאחרונה על ידי
          #5

          זה השדות של DOC:

          -[DOC_NAME]INT
                     ,[AUTHER_ID]-nvarchar(50)
                -     ,[DOC_PATH]-INT
                     ,[DOC_DATE]-DATE
          וזה השדות של AUTHER
          AUTHER_ID-INT
          AUTHER_NAME-nvarchar(50)
          
          תגובה 1 תגובה אחרונה
          0
          • ש
            ש
            שרה רחל
            כתב ב נערך לאחרונה על ידי
            #6

            אולי ההמרה של הDATE משפת C# בויזואל סטודיו שהוא מסוג DateTime
            לSQL SERVER מסוג DATE
            שגויה ?

            OdedDvirO תגובה 1 תגובה אחרונה
            0
            • ש שרה רחל

              אולי ההמרה של הDATE משפת C# בויזואל סטודיו שהוא מסוג DateTime
              לSQL SERVER מסוג DATE
              שגויה ?

              OdedDvirO
              OdedDvirO
              OdedDvir
              כתב ב נערך לאחרונה על ידי
              #7

              @שרה-רחל

              1. האם ההכנסה הראשונה מתבצעת כראוי?
              2. האם בהכנסה השנייה הערך AUTHER_ID שמוכנס ל-DOC הוא כן תקין?

              לא עניתם על השאלות...

              תגובה 1 תגובה אחרונה
              0
              • ש
                ש
                שרה רחל
                כתב ב נערך לאחרונה על ידי
                #8

                כן
                ההכנסות מתבצעות כראוי

                OdedDvirO תגובה 1 תגובה אחרונה
                0
                • ש שרה רחל

                  כן
                  ההכנסות מתבצעות כראוי

                  OdedDvirO
                  OdedDvirO
                  OdedDvir
                  כתב ב נערך לאחרונה על ידי OdedDvir
                  #9

                  @שרה-רחל אמר בsql server:

                  ההכנסות מתבצעות כראוי

                  אם ההכנסות מתבצעות כראוי, אז כנראה אין בעיה בקריאה מ-C#.
                  מדוע השדה DOC_PATH מוגדר כ INT אבל הפרמטר @docPath כ NVARCHAR?

                  תגובה 1 תגובה אחרונה
                  0
                  • ש
                    ש
                    שרה רחל
                    כתב ב נערך לאחרונה על ידי
                    #10

                    טעות

                    [DOC_NAME]nvarchar(50
                               ,[AUTHER_ID]-)int
                          -     ,[DOC_PATH]-nvarchar(50
                               ,[DOC_DATE]-DATE
                    
                    תגובה 1 תגובה אחרונה
                    0
                    • ש
                      ש
                      שרה רחל
                      כתב ב נערך לאחרונה על ידי
                      #11

                      איך אני גורמת לפרוצדורה להחזיר את הערך של הID האחרון שהוכנס לDOC

                      OdedDvirO תגובה 1 תגובה אחרונה
                      0
                      • ש שרה רחל

                        איך אני גורמת לפרוצדורה להחזיר את הערך של הID האחרון שהוכנס לDOC

                        OdedDvirO
                        OdedDvirO
                        OdedDvir
                        כתב ב נערך לאחרונה על ידי
                        #12

                        @שרה-רחל בעיקרון SCOPE_IDENTITY() אמור לעבוד.
                        תנסו אולי כך:

                        SELECT IDENT_CURRENT('DOC') AS D_ID
                        
                        תגובה 1 תגובה אחרונה
                        1
                        • ש
                          ש
                          שרה רחל
                          כתב ב נערך לאחרונה על ידי
                          #13

                          @OdedDvir אמר בsql server:

                          SELECT IDENT_CURRENT('DOC') AS D_ID

                          מה הכוונה של DOC
                          למה לא DOC_ID

                          OdedDvirO 2 תגובות תגובה אחרונה
                          0
                          • ש שרה רחל

                            @OdedDvir אמר בsql server:

                            SELECT IDENT_CURRENT('DOC') AS D_ID

                            מה הכוונה של DOC
                            למה לא DOC_ID

                            OdedDvirO
                            OdedDvirO
                            OdedDvir
                            כתב ב נערך לאחרונה על ידי OdedDvir
                            #14

                            @שרה-רחל אמר בsql server:

                            מה הכוונה של DOC

                            כך הוא התחביר של IDENT_CURRENT, צריך לציין את שם הטבלה שממנה שולפים את שדה הזהות.

                            תגובה 1 תגובה אחרונה
                            1
                            • ש שרה רחל

                              @OdedDvir אמר בsql server:

                              SELECT IDENT_CURRENT('DOC') AS D_ID

                              מה הכוונה של DOC
                              למה לא DOC_ID

                              OdedDvirO
                              OdedDvirO
                              OdedDvir
                              כתב ב נערך לאחרונה על ידי
                              #15

                              @שרה-רחל נשמח להתעדכן אם הבעיה נפתרה וכיצד.

                              תגובה 1 תגובה אחרונה
                              0
                              • ש
                                ש
                                שרה רחל
                                כתב ב נערך לאחרונה על ידי
                                #16

                                @שרה-רחל אמר בsql server:

                                SELECT IDENT_CURRENT('DOC') AS D_ID

                                עדיין מחזיר -1

                                OdedDvirO תגובה 1 תגובה אחרונה
                                0
                                • ש שרה רחל

                                  @שרה-רחל אמר בsql server:

                                  SELECT IDENT_CURRENT('DOC') AS D_ID

                                  עדיין מחזיר -1

                                  OdedDvirO
                                  OdedDvirO
                                  OdedDvir
                                  כתב ב נערך לאחרונה על ידי
                                  #17

                                  @שרה-רחל מעניין...
                                  האם תוכלו לפרט את הגדרות הטבלאות ב-SQL?

                                  תגובה 1 תגובה אחרונה
                                  0
                                  • ש
                                    ש
                                    שרה רחל
                                    כתב ב נערך לאחרונה על ידי
                                    #18

                                    יש פקודה שמיצאת את כל הבסיסי נתונים ?

                                    OdedDvirO תגובה 1 תגובה אחרונה
                                    0
                                    • ש
                                      ש
                                      שרה רחל
                                      כתב ב נערך לאחרונה על ידי
                                      #19

                                      Annotation 2020-07-17 011406.png

                                      תגובה 1 תגובה אחרונה
                                      0
                                      • ש שרה רחל

                                        יש פקודה שמיצאת את כל הבסיסי נתונים ?

                                        OdedDvirO
                                        OdedDvirO
                                        OdedDvir
                                        כתב ב נערך לאחרונה על ידי OdedDvir
                                        #20

                                        @שרה-רחל אמר בsql server:

                                        יש פקודה שמיצאת את כל הבסיסי נתונים ?

                                        לא צריך את הכל. רק את שתי הטבלאות הנ"ל.
                                        בSSMS קליק ימני על הטבלה >
                                        Script Table as > CREATE to > New Query Editor window

                                        30f70b99-8f00-433b-8399-d81e56da3ba1-תמונה.png

                                        ולהעתיק את תוכן החלון שנפתח

                                        תגובה 1 תגובה אחרונה
                                        0
                                        • ש
                                          ש
                                          שרה רחל
                                          כתב ב נערך לאחרונה על ידי
                                          #21
                                          USE [lib]
                                          GO
                                          
                                          /****** Object:  Table [dbo].[AUTHER]    Script Date: 7/17/2020 7:55:40 AM ******/
                                          SET ANSI_NULLS ON
                                          GO
                                          
                                          SET QUOTED_IDENTIFIER ON
                                          GO
                                          
                                          CREATE TABLE [dbo].[AUTHER](
                                          	[AUTHER_ID] [int] IDENTITY(1,1) NOT NULL,
                                          	[AUTHER_NAME] [nvarchar](50) NULL,
                                           CONSTRAINT [PK_AUTHER] PRIMARY KEY CLUSTERED 
                                          (
                                          	[AUTHER_ID] ASC
                                          )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
                                          ) ON [PRIMARY]
                                          GO
                                          
                                          
                                          USE [lib]
                                          GO
                                          
                                          /****** Object:  Table [dbo].[DOC]    Script Date: 7/17/2020 7:56:12 AM ******/
                                          SET ANSI_NULLS ON
                                          GO
                                          
                                          SET QUOTED_IDENTIFIER ON
                                          GO
                                          
                                          CREATE TABLE [dbo].[DOC](
                                          	[DOC_ID] [int] IDENTITY(1,1) NOT NULL,
                                          	[DOC_NAME] [nvarchar](50) NULL,
                                          	[AUTHER_ID] [int] NULL,
                                          	[DOC_PATH] [nvarchar](50) NOT NULL,
                                          	[DOC_DATE] [date] NULL,
                                           CONSTRAINT [PK_DOC] PRIMARY KEY CLUSTERED 
                                          (
                                          	[DOC_ID] ASC
                                          )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
                                          ) ON [PRIMARY]
                                          GO
                                          
                                          ALTER TABLE [dbo].[DOC]  WITH CHECK ADD  CONSTRAINT [FK_DOC_AUTHER] FOREIGN KEY([AUTHER_ID])
                                          REFERENCES [dbo].[AUTHER] ([AUTHER_ID])
                                          GO
                                          
                                          ALTER TABLE [dbo].[DOC] CHECK CONSTRAINT [FK_DOC_AUTHER]
                                          GO
                                          
                                          

                                          אולי צריך להגדיר בפרוצדורה RETURN?

                                          OdedDvirO תגובה 1 תגובה אחרונה
                                          0

                                          שלום! נראה שהשיחה הזו מעניינת אותך, אבל עדיין אין לך חשבון.

                                          נמאס לכם לגלול בין אותם הפוסטים בכל ביקור? כשנרשמים לחשבון, תמיד תחזרו בדיוק למקום שבו הייתם קודם, ותוכלו לבחור לקבל התראות על תגובות חדשות (בין אם במייל, ובין אם בהתראת פוש). תוכלו גם לשמור סימניות ולפרגן ב-upvote לפוסטים כדי להביע הערכה לחברי קהילה אחרים.

                                          בעזרת התרומה שלך, הפוסט הזה יכול להיות אפילו טוב יותר 💗

                                          הרשמה התחברות
                                          תגובה
                                          • תגובה כנושא
                                          התחברו כדי לפרסם תגובה
                                          • מהישן לחדש
                                          • מהחדש לישן
                                          • הכי הרבה הצבעות


                                          • 1
                                          • 2
                                          בא תתחבר לדף היומי!
                                          • התחברות

                                          • אין לך חשבון עדיין? הרשמה

                                          • התחברו או הירשמו כדי לחפש.
                                          • פוסט ראשון
                                            פוסט אחרון
                                          0
                                          • דף הבית
                                          • קטגוריות
                                          • פוסטים אחרונים
                                          • משתמשים
                                          • חיפוש
                                          • חוקי הפורום