• 14-07-2014, 16:20:01
    #1
    Access olan veri tabanımızı access içinden gelen araçla MSSQL e aktardım. Bağlantı stringimizi de değiştirdim. Fakat accesste iken çalışan kod mssql geçince çalışmıyor. Access ile mssql kodlarında ne gibi farklar var. Mesela aşağıdaki kod bloğunda http 500 hatası alıyorum. Klasik asp hatası göstermediği için çözüm de bilmiyorum.

    İlk defa mssql çalışıyorum. Bu kod bloğu mssql de ne gibi değişmesi lazım. Accessten geçişte çok fazla kod değişikliği lur mu?

    Set rs=Server.CreateObject("Adodb.Recordset")
    Sorgu="select ID, KADIPASS from [YONETIM] where KADI ='" & KADI & "'"
    rs.Open Sorgu, bag, 1, 3
  • 14-07-2014, 16:32:24
    #2
    Üyeliği durduruldu
    Kadı ='& kadı & '
  • 14-07-2014, 17:33:14
    #3
    KADI dediğin yere tek tırnaklar içine al dene birde 500 hatası server offline tarzı bişeydir.
    browserin için örnek veriyorum WAMP SV kullanıyorsun diyelim display errors = on yap ki hataları görebilesin...
  • 14-07-2014, 17:50:53
    #4
    set sorgu = rs.execute("select id,KADIPASS from YONETIM where KADI='"& KADI &"'")

    Sorgunuzdaki 3 satırıda silip bu şekilde kullanmalısınız artık bir driver olmayacak sorgunuzda
  • 15-07-2014, 11:07:49
    #5
    gallisene adlı üyeden alıntı: mesajı görüntüle
    Kadı ='& kadı & '
    Tek tırnak içine alınca değişken olarak gelmiyor KADI,

    nekrofil adlı üyeden alıntı: mesajı görüntüle
    KADI dediğin yere tek tırnaklar içine al dene birde 500 hatası server offline tarzı bişeydir.
    browserin için örnek veriyorum WAMP SV kullanıyorsun diyelim display errors = on yap ki hataları görebilesin...
    Tek tırnak olarak aldığımda KADI değişken olmuyor cümlenin bir parçası gibi oluyor. Normalde z<ten hata kodlarını kendi borwserimde gösteriyorum. Fakat Bağlantı cümlesini mssql ile değiştirince 500 hatası veriyor. Düz access bağlantı cümlesi varken hata satırını görebiliyordum.


    Internetabi adlı üyeden alıntı: mesajı görüntüle
    set sorgu = rs.execute("select id,KADIPASS from YONETIM where KADI='"& KADI &"'")

    Sorgunuzdaki 3 satırıda silip bu şekilde kullanmalısınız artık bir driver olmayacak sorgunuzda
    Ben tam kodu yazayım. Bir döngü var 3. satırı da silersem recodsetleri çalıştıramıyorum.
    <% 
    		Set rs=Server.CreateObject("Adodb.Recordset")
    		Sorgu="select * from [YONETIM] where KADI ='" & KADI & "'"
    		rs.Open Sorgu, bag, 1, 3
     
    		If rs.BOF And rs.EOF Then
    			Response.Write("Hata oldu")
    		Else
    			Response.Write("Giriş başarılı")
    		End If
    		set rs=nothing
     %>
  • 15-07-2014, 11:21:36
    #6
    Sen bana tam kodları gönder buradan ( sql server bilgilerini silersin içinden )
    birde hata kodunu gönder.
    Ben birde display_errors=on yapmanızı söylemiştim bunuda yaptıysan hocam o şekilde görmek isterim hata kodunu...
    ERROR 500 çok yüzeysel bir hata display errors on demen gerekir ki detaylıca görelim hatayı
  • 15-07-2014, 19:27:39
    #7
    Üyeliği durduruldu
    değişken kullanıyorsan mssql'de parametre kullanman lazım. ama bunun ötesinde mssql kodları bu şekilde kullanılmaz. bir framework altyapısı ile ve mutlaka stored procedureler tanımlayarak kullanmak lazım.
    sana o mesajda anlatmak istediğim çok fazla tırnak karmaşası oluyor, mysql ve access kullanımlarında. mssql store procedure ve framework kullanmayı çözmelisin. başka türlü yazacağın kodlar amatörce kalacaktır.
  • 15-07-2014, 19:48:27
    #8
    Hocam skypeye ekleyin yardımcı olayım size satis@internetabi.com
  • 16-07-2014, 01:42:08
    #9
    nekrofil adlı üyeden alıntı: mesajı görüntüle
    Sen bana tam kodları gönder buradan ( sql server bilgilerini silersin içinden )
    birde hata kodunu gönder.
    Ben birde display_errors=on yapmanızı söylemiştim bunuda yaptıysan hocam o şekilde görmek isterim hata kodunu...
    ERROR 500 çok yüzeysel bir hata display errors on demen gerekir ki detaylıca görelim hatayı
    Kod php değil Classic asp..

    Dediğin orda geçersiz... Wamp yerine iis kullanılır!

    Burda sorguda sorun goremedim connection string sorunu gibi geldi bana...

    --R10.NET; Flood Engellendi -->-> Yeni yazılan mesaj 01:42:08 -->-> Daha önceki mesaj 01:39:56 --

    gallisene adlı üyeden alıntı: mesajı görüntüle
    değişken kullanıyorsan mssql'de parametre kullanman lazım. ama bunun ötesinde mssql kodları bu şekilde kullanılmaz. bir framework altyapısı ile ve mutlaka stored procedureler tanımlayarak kullanmak lazım.
    sana o mesajda anlatmak istediğim çok fazla tırnak karmaşası oluyor, mysql ve access kullanımlarında. mssql store procedure ve framework kullanmayı çözmelisin. başka türlü yazacağın kodlar amatörce kalacaktır.
    Sql kodları böyle kullanılabilir ama sql injectiona çok müsait ve hata oluştuğu anda kodlar dışarı görünebilir.

    Parametre konusunda sonuna kadar katılıyorum ama sp duruma göre... Basit bir select için gereksiz sp.