Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14
  1. #1

    [C#] Connessione Database SQL 2005

    Salve,


    1) Ho creato un database con visualstudio e lo ho importato tramite la managmen di SQL e rinominato in DataBaseMio


    2) Ho creato un account personale leggendo la guida microsoft :

    In SQL Server Management Studio aprire Esplora oggetti ed espandere la cartella dell'istanza del server in cui si desidera creare il nuovo account di accesso.
    Fare clic con il pulsante destro del mouse sulla cartella Protezione, scegliere Nuovo e quindi selezionare Account di accesso.
    ecc....

    3) Ho seguito una guida trovata su google:

    Lancia il SQL Server Configuration Manager, seleziona il nodo SQL Server 2005 Network Configuration > Protocols for MSSQLSERVER e verifica nella list view di destra che Shared Memory e TCP/IP siano abilitati e che Named Pipes e VIA non lo siano.
    Ora seleziona il nodo SQL Native Client Configuration > Client Protocols e verifica nella list view di destra che Shared Memory e TCP/IP siano abilitati e abbiano rispettivamente Order 1 e 2.
    OK, a questo punto riavvia il servizio MSSQLSERVER (SQL Server 2005 Services > SQL Server (MSSQLSERVER)).

    Ora apri SQL Server Management Studio e verifica se la tua istanza è abilitata ad accettare la SQL Server Authentication.
    Connettiti all'istanza, selezionala nella tree view di SX > tasto DX > Properties e ti apparirà la dialog box Server Properties.
    Seleziona la voce Security e verifica che sia selezionato l'option button SQL Server and Windows Authentication mode.
    Se hai apportato modifiche riavvia nuovamente il servizio.


    4) Creo la stringa di connessione al database e lancio il debug di visual studio:

    return "Data Source=localhost;Initial Catalog=DataBaseMio;User Id=federico;Password=proviamolaa;";


    5) Ottengo ancora questo errore:

    Si è verificato un errore mentre si cercava di stabilire una connessione con il server. Quando ci si connette a SQL Server 2005, questo errore potrebbe essere provocato dal fatto che l'SQL Server non ammette connessioni remote sotto le impostazioni predefinite. (provider: Provider Named Pipes, error: 40 - Impossibile aprire una connessione a SQL Server)




    Grazie VVoVe:

  2. #2
    dovresti usare il tool: slqserver 2005 surface area configuration
    Nella schermata iniziale selezioni "Surface area conf for services and connections"
    dopo di che selezioni il nodo "Remote connections" e ti assicuri che sia selezionato l'option button "Local and remote connections" using tcp...
    Saluti a tutti
    Riccardo

  3. #3
    Anche li è già configurato in quel modo...

    PS: Utilizzo soltanto connessioni locali....

  4. #4
    allora potresti verificare che non sia il firewall che ci mette lo zampino. Prova a disattivarlo
    Saluti a tutti
    Riccardo

  5. #5
    provato ma inutile....

    Provo a connettermi anche con l'utente SA ma non cambia niente...

  6. #6
    Data Source=EMPEROR\\SQLEXPRESS

    Adesso funziona...

    Però devo trovare il modo di modificare, perchè non tutti i database avranno lo stesso nome, quindi devo farlo andare con il mome di localhost...

  7. #7
    da un prompt di comando (finestra dos) scrivendo
    sqlcmd -L
    vedi l'istanza del server sql, e come si chiama?
    Hai fatto partire anche il servizio SqlServerBrowser (sempre con il tool surface configuration)?
    Saluti a tutti
    Riccardo

  8. #8
    bene... hai preceduto la mia precedente risposta

    Originariamente inviato da SkOrPiOn`87
    ...devo trovare il modo di modificare, perchè non tutti i database avranno lo stesso nome, quindi devo farlo andare con il mome di localhost...
    questa pero' non l'ho capita bene. Una istanza di un server di database (nel tuo caso sqlserverexpress) puo' avere tutti i database diversi che ti servono.
    Saluti a tutti
    Riccardo

  9. #9
    Mi sono espresso malissimo direi

    Il fatto è che in questo modo mi connetto con NomeMAcchina\NomeServer....

    Se installo il mio programma su un'altro server, avrà sicuramente un'altro nome, e non potendoci accedere come LocalHost, non potrei accedere... questa è una grossa limitazione...

    2) forse per motivi di sicurezza sarebbe preferibile autenticarsi con il servizio di windows, anzichè inserire una password dentro il mio programma C#, in quanrto sarebbe facilmente identificabile... no?


    Grazie

  10. #10
    Originariamente inviato da SkOrPiOn`87
    Il fatto è che in questo modo mi connetto con NomeMAcchina\NomeServer....
    Se installo il mio programma su un'altro server, avrà sicuramente un'altro nome, e non potendoci accedere come LocalHost, non potrei accedere... questa è una grossa limitazione...
    umh... avra' sicuramente un altro nome.... proprio per questo, se programmi con grazia, metterai la connection string in un file di configurazione per poterti collegare a qualsiasi database commestibile dal tuo codice. Non esiste che si creano istanze di default (quindi senza nome) per permettere a n applicazioni di potervici collegare.

    2) forse per motivi di sicurezza sarebbe preferibile autenticarsi con il servizio di windows, anzichè inserire una password dentro il mio programma C#, in quanrto sarebbe facilmente identificabile... no?
    su questo non c'e' dubbio, l'autenticazione integrata e' la soluzione piu' sicura. Quando pero' non e' facilmente utilizzabile anche il login con un utente di sqlserver puo' andar bene. L'importante e' nascondere i dati di accesso es. criptando la connection string con user e pass.
    Saluti a tutti
    Riccardo

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.