Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    171

    [MSSQL] Configurare e lavora con Mssql

    Ho sempre lavorato con mysql
    Ora mi viene richiesto di interfacciare uno script a mssql

    quindi
    A) devo installare su win mssql per poter lavorare in locale
    B) devo capire le differenze che presumo (e spero) siano poche in quanto il linguaggio sql è praticamente identico, tranne alcune differenza nella connessione al dbase e giù di lì

    Come procedere ?
    Quali possono essere le problematiche ?
    Consigli pratici ?

    Thx

  2. #2
    Utente di HTML.it L'avatar di Il_Drugo
    Registrato dal
    May 2006
    Messaggi
    1,220
    Un cliente mi ha fatto la stessa richiesta in quanto la web house a cui lui si è rivolto lavorava solo con MsSQL.

    Posso dirti che i linguaggi sono molto simili, ma con delle differenze a volte fastidiose. Io ti indico quelle che ho riscontrato io...potrebbero essere irrilevanti per te e potrebbero essercene altre:

    - Scordati l'auto_increment. Da quanto ho potuto notare in MsSQL non esistono campi auto incrementanti. Questo poteva essere un enorme problema, ma con un ritocco al codice si è rivelato un pregio. (maari qualcuno che se ne intende di più sa dirci se c'è un corrispettivo dell'auto_increment, ma io non l'ho mai trovato).

    - MsSQL non ammette inserimenti nulli e soprattutto non accetta INSERT con il SET. Ad esempio:

    Corretto:
    Codice PHP:
    INSERT INTO tabella ('v1''v2) VALUES ('test1', 'test2'); 
    NON CORRETTO
    Codice PHP:
    INSERT INTO tabella SET 'v1' 'test1''v2' 'test2' 
    Anche questo cmq non è detto che si riveli insormontabile.

    Al momento non mi viene in mente altro..in caso aggiorno il post.


  3. #3
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    171
    preziose info thx

    tu in locale hai sia MySql che MsSql ?
    Che versione di quest'ultimo ?

    tx

  4. #4
    Utente di HTML.it L'avatar di Il_Drugo
    Registrato dal
    May 2006
    Messaggi
    1,220
    Per mia enorme sfortuna ho lavora su MsSQL in remoto, direttamente sull'host (visto che di MsSQL esiste solo una versione gratuita chiamata Express se non sbaglio che pero' ha moooolte funzionalità in meno) tutto per evitare conflitti con l'host su cui sarebbe stato uppato il sito. Oltretutto lavoro su Machintosh e quindi avrei dovuto portarm il mio portatilino PC da casa in ufficio ^^'


  5. #5
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    171
    uhm.. :/

    stavo appunto per postare che la versione che intendevo installare era questa:
    http://msdn.microsoft.com/vstudio/express/sql/

    che altre soluzioni ci sono per evitare di usare il dbase remoto ?

    tx

  6. #6
    Utente di HTML.it L'avatar di Il_Drugo
    Registrato dal
    May 2006
    Messaggi
    1,220
    Beh l'unica è l'express...provala...magari per quello che devi farci è più che sufficiente. Tutto dipende dalle funzionalità più o meno avanzate che ti occorrono.

  7. #7
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    171
    eccoci
    sql express installato

    'dovrebbe' essere tutto ok
    peccato che nn riesca a connettermi.

    Quando tento di connettermi:
    Warning: mssql_connect(): Unable to connect to server: sqlexpress in c:\web\test_mssql.php on line 2

    ho trovato questo
    "
    As described here: http://php.net/manual/en/function.ms...nect.php#58787 MSSQL Express Edition does not work with ntwdblib.dll bundled with PHP. But if you have not installed MSSQL Server2000, you can find correct ntwdblib.dll here: http://webzila.com/dll/1/ntwdblib.zip or try to find it from main page (http://www.webzila.com) if link is not work.
    "

    vero ?

  8. #8
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    171
    allora

    ho risolto sostituendo il file ntwdblib.dll presente nella cartella dlls di php con l'ultima versione dello stesso, scaricato da http://webzila.com/

    ora l'errore è cambiato:

    "
    Warning: mssql_connect(): message: Impossibile eseguire l'accesso per l'utente 'netnewbie'. L'utente non è associato a una connessione SQL Server trusted. (severity 14) in c:\web\test_mssql.php on line 3
    "

    immagino che praticamente non ci siano le autorizzazioni
    ho provato ad inserire l'utente tramite il "Sql server management studio express" ma nada..

    mi sfugge qualcosa.. ?

  9. #9
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    171
    be, una prima grandissima differenza:

    MsSql non ha la funzionalità LIMIT di MySql

    con Mysql si può facilmente limitare i risultati di una select stabilendo quanti risultati vedere e da che record partire
    non esiste purtroppo una pari funzionalità in MsSql

    io ho risolto così:

    30 risultati a partire dal record 10

    select TOP 30 * from nometabella
    WHERE id NOT IN ( select top 10 id from nometabella order by id asc )


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.