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

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

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. תכנות
  3. ארכיון code613m
  4. שימוש בפרמטרים לצורך create login

שימוש בפרמטרים לצורך create login

מתוזמן נעוץ נעול הועבר ארכיון code613m
9 פוסטים 2 כותבים 503 צפיות
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • chagoldC מנותק
    chagoldC מנותק
    chagold
    כתב ב נערך לאחרונה על ידי
    #1

    שלום לכולם.
    הכנסתי בפרוצודורה פרמטרים. אולם כשאני מנסה להשתמש בפרמטרים לצורך משפטים של create login, הוא לא מזהה את הפרמטרים. מצ"ב דוגמא.

    create PROCEDURE loginuser (@usernametemp VARCHAR(100) output) 
    
    AS
    
    	begin 
    
    	set @usernametemp  = '234'
    
    	create login @usernametemp with password = @passtemp;
    
    	end		
    
    GO
    

    תודה מראש

    פורסם במקור בפורום CODE613 ב24/07/2016 00:00 (+03:00)

    תגובה 1 תגובה אחרונה
    0
    • S מנותק
      S מנותק
      softs
      כתב ב נערך לאחרונה על ידי
      #2

      שרשר את הפקודה לסטרינג nvarchar ותריץ עם exec

      פורסם במקור בפורום CODE613 ב24/07/2016 09:04 (+03:00)

      תגובה 1 תגובה אחרונה
      2
      • chagoldC מנותק
        chagoldC מנותק
        chagold
        כתב ב נערך לאחרונה על ידי
        #3

        תוכל להדגים לי?
        תודה רבה.

        פורסם במקור בפורום CODE613 ב24/07/2016 15:10 (+03:00)

        תגובה 1 תגובה אחרונה
        0
        • S מנותק
          S מנותק
          softs
          כתב ב נערך לאחרונה על ידי
          #4
          CREATE PROC LoginUser (@UserNameTemp VARCHAR(100) output) 
          AS BEGIN
           
              SET @UserNameTemp  = 'a234'
          	
          	DECLARE @passtemp AS NVARCHAR(MAX) = '1234'
          	
          	DECLARE @SqlCommand AS NVARCHAR(MAX) = N'CREATE LOGIN ' + @UserNameTemp + N' WITH PASSWORD = N''' + @passtemp + N''''
          	
              EXEC(@SqlCommand)
           
          END    
          GO
          
          
          DECLARE @retVal AS NVARCHAR(MAX) = '' 
          
          EXEC LoginUser @UserNameTemp = @retVal OUTPUT
          

          פורסם במקור בפורום CODE613 ב24/07/2016 16:23 (+03:00)

          תגובה 1 תגובה אחרונה
          1
          • chagoldC מנותק
            chagoldC מנותק
            chagold
            כתב ב נערך לאחרונה על ידי
            #5

            דבר ראשון, תודה רבה.

            למעשה, אותה פרוצודורה אני יכול להריץ אותה לפעמים והיא מצליחה ולפעמים היא מציינת שגיאה 102.
            מצ"ב הקוד והודעת השגיאה.

            alter PROCEDURE loginuser (@usernametemp VARCHAR(255) output,@passtemp VARCHAR(255) output) 
            
            
             
            AS
            
            
            		begin 
            
            		set @usernametemp  = (SELECT SUBSTRING(CONVERT(varchar(100), NEWID()), 0, 9)) 
            		set @passtemp	   = (SELECT SUBSTRING(CONVERT(varchar(100), NEWID()), 0, 9)) 
            		
            	
            
            				-- create login @usernametemp with password = @passtemp;
            				DECLARE @SqlCommandlogin AS NVARCHAR(255) = N'CREATE LOGIN ' + @UserNameTemp + N' WITH PASSWORD = N''' + @passtemp + N''''
                 			EXEC(@SqlCommandlogin)
            		
            			
            				end		
            
            	
            
            
            GO
            
            Msg 102, Level 15, State 1, Line 1
            Incorrect syntax near '40879'.
            

            פורסם במקור בפורום CODE613 ב24/07/2016 23:19 (+03:00)

            תגובה 1 תגובה אחרונה
            0
            • S מנותק
              S מנותק
              softs
              כתב ב נערך לאחרונה על ידי
              #6

              יצא לך שם LOGIN לא חוקי 40879
              השם צריך להיות מורכב לפחות מאות אחת תשרשר אות אנגלית אחת בהתחלה

              פורסם במקור בפורום CODE613 ב24/07/2016 23:24 (+03:00)

              תגובה 1 תגובה אחרונה
              1
              • chagoldC מנותק
                chagoldC מנותק
                chagold
                כתב ב נערך לאחרונה על ידי
                #7

                אלפי תודות!!

                אני פונה בנוגע לשגיאה הבאה...

                Msg 4621, Level 16, State 10, Line 1
                Permissions at the server scope can only be granted when the current database is master
                

                איני מצליח לשרשר את
                use MASTER; (או שאני מצליח, והבעיה שונה..).

                ושוב תודה רבה.

                פורסם במקור בפורום CODE613 ב24/07/2016 23:56 (+03:00)

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

                  הוא בכלל לא מקבל את הפקודה
                  use MASTER; בפרוצודורה.

                  פורסם במקור בפורום CODE613 ב25/07/2016 15:14 (+03:00)

                  תגובה 1 תגובה אחרונה
                  0
                  • chagoldC מנותק
                    chagoldC מנותק
                    chagold
                    כתב ב נערך לאחרונה על ידי
                    #9

                    התשובה היא שצריך לשרשר צמוד למשפט עצמו.
                    לינק -

                    פורסם במקור בפורום CODE613 ב26/07/2016 01:19 (+03:00)

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

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

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

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