+ Yanıtla
Toplam 6 sonuçtan 1 ile 6 arası olanlar

Konu Başlığı: Mdb'den Mssql'e geçişte çıldırtan sorun

  1. #1

    Mdb'den Mssql'e geçişte çıldırtan sorun

    Merhabalar, internette bedava dağıtılan ASP STAR RATING v0.2 scriptini sitemde kullanmaya karar verdim ve sqle geçirip kullanmak istedim. SQL'de mdbdeki gibi tabloları yarattım herşeyi ayarladım. Hatta deneme yapmak üzere insert into komutlarıyla basit bir query yazdım ve düzgün çalıştığını gördüm.

    Ancak gelin görün ki ASP rating scriptte akıl almaz bir hata veriyor. Burada da bir update satırına gelince çıldırıyor ve hata veriyor.

    [Microsoft][ODBC SQL server Driver][Shared Memory]SQL server does not exist or access denied.
    /test/rating/common.ASP, line 131

    Daha önce basit bir queryle databasenin update yapılmadığını bilmesem diyeceğim ki tamam bir hata var databaseyle ilgili. Ancak bu kodlar ne yaptıysam ne ettiysem bir türlü çalışmadı. Database bağlantısının yanlış yapılma gibi bir durumu es geçtiğim düşünülemez tabi. Basit olasılıkları geçtim.

    Kodlar şöyle (ilgili alanı veriyorum):
    ------------------------------------------------


    Sub UpdateRating(iRating, m_sURL)
    '--- Open URL table
    RatingConnOpen
    Set rsRating = server.CreateObject("ADODB.Recordset")
    rsRating.LockType = 2 'adLockPessimistic
    rsRating.ActiveConnection = oRatingConn
    rsRating.Source = "select ID, URL from rating_urls where URL='" & m_sURL & "'"
    rsRating.Open
    '--- Add URL if required
    if rsRating.EOF then
    rsRating.AddNew
    rsRating("URL") = m_sURL
    rsRating.update

    end if
    '--- Get URL ID
    iURLID = rsRating("ID")
    rsRating.Close
    Set rsRating = Nothing
    '--- Add rating
    Set rsRating = oRatingConn.Execute("select URLID from rating_votes where URLID=" & iURLID & " and UserIP='" & GetUserIP & "'")
    if rsRating.EOF then
    if not WithinBlockedRange(sBannedIPRanges, GetUserIP) and not BlockedUserAgent(sBlockedUserAgents) and not BlockedUserAgentString(sBlockedUAStrings) then oRatingConn.Execute("insert into rating_votes (URLID, Rating, UserIP) values (" & iURLID & ", " & iRating & ", '" & GetUserIP & "')")
    bSuccess = true
    else
    bSuccess = false
    end if
    Set rsRating = Nothing
    RatingConnClose
    '--- Display if vote is unsuccessful (JavaScript only)
    if WithinBlockedRange(sBannedIPRanges, GetUserIP) then response.write "<p class=""starlight"">Blocked IP Address</p>"
    if BlockedUserAgent(sBlockedUserAgents) then response.write "<p class=""starlight"">Blocked User Agent</p>"
    if BlockedUserAgentString(sBlockedUAStrings) then response.write "<p class=""starlight"">Blocked User Agent String</p>"
    End Sub



    -------------------------------
    LINE 131 : rsRating.update ' dir.


    Yardımlarınız için şimdiden binlerce teşekkür. Bir gündür çözemedim şu illet şeyi.

  2. #2
    SQL server connecting string i kontrol etmeniz gerekiyor. eğer orada sorun yoksa, kullanıcı adı ve şifrelerinizi kontrol edin. o kullanıcının o veritabanına erişiminin olup olmadığını, update yapma hakkının olup olmadığını kontrol edin.
    "oturduğum mahallenin yolları çamurluydu, boyalı ayakkabı giysem bile, o yollardan geçtikten sonra çamurlanmamaları mümkün değildi. hayatım da böyle." yılmaz güney
    http://www.sipidik.com

  3. #3
    Selamlar,

    O satıra gelene kadar birçok bağlantı olduğunu söyleyebilirim, select gibi SQL komutları da var hatta. Bunlar düzgün çalışıyor, ancak bu update komutuna gelince çalışmıyor.

    Basit bir queryle insert denemesi yaptım boş bir sayfada ve düzgün çalıştığını gördüm.

    Acaba mdb - SQL farklılığından ötürü bir kod çakışması mı oluyor acaba ? Anlam veremedim bir türlü.

    Database yolunda sorun bulunmamaktadır.

  4. #4
    çok anlamamakla beraber;

    ...[Shared Memory]....
    kısmı her hata ile çıkan bir şey mi?

  5. #5
    include edilen dosyaları kontrol edin, RatingConnOpen yordamını inceleyin, oRatingConn nesnesine atanmış connection string ile ilgili sorun olabilir.

    bunun yanında yazarken aklıma geldi. select edip update edememesi yetki ile çok alakalı olmayabilir (default değerler değiştirilmediyse). daha çok, rating_urls tablosunu oluştururken, access't olup ta SQL server'da primary key (muhtemelen ID alanı) oluşturmamış olabilirsiniz. bu şekilde diğer tablolarınızı da kontrol etmenizi tavsiye ederim.
    "oturduğum mahallenin yolları çamurluydu, boyalı ayakkabı giysem bile, o yollardan geçtikten sonra çamurlanmamaları mümkün değildi. hayatım da böyle." yılmaz güney
    http://www.sipidik.com

  6. #6
    Öncelikle mesajlarınız için teşekkürler.

    Connectionstringlerde access kullanırken sorun olmamasına karşın SQL'de sorun olduğunu gördüm. Bir şekilde o satıra ulaşmayan connection stringi tespit ettim.

    SQL'de primary key'leri de vermiştim zamanında, hatta çıldırma noktasına gelip, GRANT komutları falan denedim izinlerle alakalı problem var, çalışsın diye

    Teşekkürler arkadaşlar..

+ Yanıtla

Bu konu başlığı için etiketler

Mesaj Seçenekleri

  • Yeni başlık açamazsınız
  • Cevap yazabilirsiniz
  • Dosya ekleyemezsiniz
  • Mesajlarınızı değiştiremezsiniz