Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it L'avatar di wegawhite
    Registrato dal
    Aug 2004
    Messaggi
    1,400

    Query di access e Stored procedures di SQLServer

    Ciao: sono passato da un db access ad un db sqlserver... funziona tutto bene tranne un campo (chiamato disk) di una tabella che in access era previsto come Sì/No e che in sqlserver è diventato campo bit.

    Quando eseguo la Stored Procedures della vecchia query di access:
    codice:
    SELECT FORUM_MESSAGES.codice, FORUM_MESSAGES.disk, FORUM_MESSAGES.LastEmail
    FROM FORUM_MESSAGES
    WHERE (((FORUM_MESSAGES.ParentMessage)=0))
    ORDER BY FORUM_MESSAGES.LastThreadPost DESC;
    sqlserver restituisce:
    codice:
    Errore -2147217900 
      Incorrect syntax near the keyword 'disk'.
    
    ALTER PROCEDURE [MESSAGETHREADS] AS
    SELECT FORUM_MESSAGES.codice, FORUM_MESSAGES.disk, FORUM_MESSAGES.LastEmail FROM FORUM_MESSAGES
    WHERE (((FORUM_MESSAGES.ParentMessage)=0))
    ORDER BY FORUM_MESSAGES.LastThreadPost DESC;
    Non appena elimino la riga
    codice:
    FORUM_MESSAGES.disk,
    la Stored procedures viene eseguita regolarmente...

    Dove sbaglio?
    Grazie

  2. #2
    Disk è una parola riservata di SqlServer . . .

  3. #3
    Utente di HTML.it L'avatar di comas17
    Registrato dal
    Apr 2002
    Messaggi
    6,522
    ...mettila tra parentesi quadrate

    FORUM_MESSAGES.[disk]

  4. #4
    Utente di HTML.it L'avatar di wegawhite
    Registrato dal
    Aug 2004
    Messaggi
    1,400
    Grazie per il problma segnalato ho risolto... ma una sql insert into non funziona più bene da quando sono passato a sql server... la query è questa:
    codice:
    sTopic = prepStringForSQL(Request("Topic")) & ","
      sName = prepStringForSQL(sName) & ","
      sEmail= prepStringForSQL(sEmail) & ","
      sComments = ReplaceComments(Request("Message"))
      sComments = prepStringForSQL(sComments)& ","
      xEmail= prepStringForSQL(xEmail) & ","
      sPass= prepStringForSQL(password) & ""
      
      sSQL = "INSERT INTO FORUM_MESSAGES (AUTHORNAME,AUTHOREMAIL,TOPIC,COMMENTS,TEMP,LASTEMAIL,CODICE) VALUES (" & sName & sEmail & sTopic & sComments & sTemp & xEmail & sPass &")"
      conn.execute sSQL
      
      sSQL = "UPDATE FORUM_MESSAGES SET THREADPARENT = ID WHERE THREADPARENT = 0"
      conn.execute sSQL
    nel db sql server il record viene registrato così con NULL al posto dei valori:

    disk = NULL
    parentmessage = NULL
    threadparent = NULL

    come mai???

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.