none
stored procedure 2 Tablo sorgulama RRS feed

  • Soru

  • merhaba arkadaşlar,SP ile hem Kullanıcı adı hemde Kara Listede olan kelimeleri sorgulayım ajax ile ekrana mesaj verdirmek istiyorum.SP tarafını nasl yapmalıyız acaba ?

    ALTER PROCEDURE [dbo].[CheckUserName](@UserName VARCHAR(100))
    AS 
    BEGIN 
    
      IF EXISTS (SELECT * FROM TBL_USERS WHERE [UserName] = @UserName) 
      SELECT '1'; --user name already exist in database
    
      ELSE 
    
      SELECT '0'; --user name does not exist in database
      
     END 

    bu sadece UserName sorguluyor,aynı zaman da badList tablosunun BadName alanında bulunan isimlerinde kayıt edilmemesini sağlamalıyım ?

    yardımcı olursanız sevinirim...


    • Düzenleyen BeyazCennet 21 Şubat 2013 Perşembe 00:47
    21 Şubat 2013 Perşembe 00:45

Yanıtlar

  • Merhaba BeyazCennet,

    Doğrusu tablo yapılarını ve ilişkileri daha detaylı verseydin farklı fikirler çıkabilirdi. Ben tablolar arasında hiçbir ilişki olmadığını düşünerek kabaca şöyle bir çözüm ürettim. Sende bir incele eğer işine yarıyorsa kullanırsın, ilişkili tablolor olsa daha farklı çözümlerde olabilirdi tabi.

    DECLARE 
    	@IsUserName bit,
    	@IsBadName bit
    
    SET @IsUserName = (SELECT COUNT(*) FROM TBL_USERS WHERE UserName = 'Arzu')
    SET @IsBadName = (SELECT COUNT(*) FROM TBL_BADLIST WHERE BadName = 'Arzu')
    
    IF (@IsUserName = 0 AND @IsBadName = 0)
    	SELECT '0'; --user name does not exist in database
    ELSE
    	SELECT '1'; --user name already exist in database 
    	



    http://www.zafercelenk.net


    • Düzenleyen Zafer Çelenk 21 Şubat 2013 Perşembe 07:09
    • Yanıt Olarak İşaretleyen BeyazCennet 21 Şubat 2013 Perşembe 10:20
    21 Şubat 2013 Perşembe 07:09

Tüm Yanıtlar

  • ALTER PROCEDURE [dbo].[CheckUserName](@UserName VARCHAR(100))
    AS 
    BEGIN 
    
      SELECT (
        (SELECT COUNT(*) FROM TBL_USERS WHERE [UserName] = @UserName) as UserCount,
        (SELECT COUNT(*) FROM TBL_BADLIST WHERE [Field1] = @UserName) as BADListCount
      )
     END
    sorunuzu yanlış anlamadıysam, yukarıdaki sorgu size iki kolon tek satır değer döndürür, 0,0 dönerse hem kullanıcılistesinde hemde badlistte yok demektir.

    e-mail: onay[nokta]yalciner[at]hotmail[nokta]com
    MCC

    21 Şubat 2013 Perşembe 06:55
    Moderatör
  • Merhaba BeyazCennet,

    Doğrusu tablo yapılarını ve ilişkileri daha detaylı verseydin farklı fikirler çıkabilirdi. Ben tablolar arasında hiçbir ilişki olmadığını düşünerek kabaca şöyle bir çözüm ürettim. Sende bir incele eğer işine yarıyorsa kullanırsın, ilişkili tablolor olsa daha farklı çözümlerde olabilirdi tabi.

    DECLARE 
    	@IsUserName bit,
    	@IsBadName bit
    
    SET @IsUserName = (SELECT COUNT(*) FROM TBL_USERS WHERE UserName = 'Arzu')
    SET @IsBadName = (SELECT COUNT(*) FROM TBL_BADLIST WHERE BadName = 'Arzu')
    
    IF (@IsUserName = 0 AND @IsBadName = 0)
    	SELECT '0'; --user name does not exist in database
    ELSE
    	SELECT '1'; --user name already exist in database 
    	



    http://www.zafercelenk.net


    • Düzenleyen Zafer Çelenk 21 Şubat 2013 Perşembe 07:09
    • Yanıt Olarak İşaretleyen BeyazCennet 21 Şubat 2013 Perşembe 10:20
    21 Şubat 2013 Perşembe 07:09
  • çok tşk ederim zafer hocam.
    21 Şubat 2013 Perşembe 10:20
  • Rica ederim BeyazCennet, kolay gelsin iyi çalışmalar.

    http://www.zafercelenk.net

    21 Şubat 2013 Perşembe 11:48