dimoss Δημοσ. 4 Ιουνίου 2006 Δημοσ. 4 Ιουνίου 2006 Γεια σας, Έχω ένα παράξενο πρόβλημα με μια εφαρμογή που έχω φτιάξει για αναζήτηση βάσει κριτηρίων (δημιουργία ενός @WhereString το οποίο περνάει με Session και "τραβάει" τα δεδομένα από μια βάση MS-SQL). Ενώ όλα λειτουργούν κανονικά σε τοπικό επίπεδο (εννοώ στον τοπικό SQL SERVER), αφού κάνω import το table και την store procedure στον SQL του provider η εφαρμογή δεν δουλεύει βγάζοντας "Incorrect syntax" error. - Το collation είναι το ίδιο και στις δύο βάσεις: Greek_CI_AS - Οι κολώνες με κείμενο είναι τύπου: nvarchar Παρακάτω σας δίνω τον κώδικα των: 1. Store Procedure: CREATE Procedure sp_search @WhereString nvarchar(500) AS Declare @SQL nvarchar(2500) SELECT @SQL = ' SELECT * ' + ' FROM te ' + ' WHERE nomarxia is not null ' + @WhereString + ' ORDER BY pinakas ASC, entopiotita, m_total DESC, m_vathmos_ptixio DESC, m_2o_ptixio DESC, m_programa_oaed DESC, m_sinafes_phd DESC, m_all_phd DESC, m_sinafes_master DESC, m_allo_master DESC, empeiria_total DESC, empeiria_50 DESC, m_glosses DESC, etos_ptixio ASC ' Exec (@SQL) GO 2. Φόρμα <%@LANGUAGE="VBSCRIPT" CODEPAGE="1253"%> <%Session.CodePage= 1253%> <!--#include file="asep.asp" --> <% Session("WhereString") = "" %> <% Dim WhereString If Request.Form("nomarxia") <> "0" THEN WhereString = WhereString & " AND te.nomarxia = '" & Request.Form("nomarxia") & "'" END IF If Request.Form("klados") <> "0" THEN WhereString = WhereString & " AND te.klados = '" & Request.Form("klados") & "'" END IF IF Request.Form("politeknos") = "1" THEN WhereString = WhereString & "AND te.politeknos = 'Ν'" END IF IF Request.Form("palino") = "1" THEN WhereString = WhereString & "AND te.palino = 'Ν'" END IF IF Request.Form("empeiria1") = "1" THEN WhereString = WhereString & "AND te.empeiria_total >= 1" END IF IF Request.Form("empeiria0") = "1" THEN WhereString = WhereString & "AND te.empeiria_total = 0" END IF WhereString = WhereString Session("WhereString") = WhereString If Request.Form("submit") <> "" THEN Response.redirect "list.asp" %> ....και ακολουθεί μια normal φόρμα ή οποία κάνει action στην ίδια σελίδα ----------------------------------------------------------------------------------------------- Τα παραπάνω δουλεύουν ρολόϊ τοπικά ενώ βγάζουν μήνυμα λάθους στο online Microsoft OLE DB Provider for SQL Server error '80040e14' Line 1: Incorrect syntax near 'Øì'. /asep/te/list.asp, line 21 Από το μήνυμα καταλαβαίνω ότι κάτι τρέχει με τα ελληνικά, αλλά δεν μπορώ να καταλάβω τι... Μήπως κάποιος μπορεί να βοηθήσει? Το url είναι...http://www.tabletennis.gr/asep/te/ Ευχαριστώ προκαταβολικά. Υ.Γ. Να σημειώσω επίσης ότι δοκίμασα να βάλω και το περιβόητο N για παράδειγμα If Request.Form("nomarxia") <> "0" THEN WhereString = WhereString & " AND te.nomarxia = Ν'" & Request.Form("nomarxia") & "'" END IF ...αλλά τίποτε..
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.