1. C# Verbind met SQL-databases
Gegevensbron=mijnServerAdres; Initiële catalogus=mijnDatabasis; Gebruikers-ID=mijngebruikersnaam; Wachtwoord=mijnWachtwoord; Gegevensbron=190.190.200.100,1433; Netwerkbibliotheek=DBMSSOCN; Initiële catalogus=mijnDatabasis; Gebruiker ID=mijngebruikersnaam; Wachtwoord=mijnWachtwoord; Server=mijnServerAdres; Database=mijnDataBase; Gebruiker ID=mijngebruikersnaam; Wachtwoord=mijnWachtwoord; Trusted_Connection=Onwaar; Server=mijnServerAdres; Database=mijnDataBase; Trusted_Connection=Waar; Server=mijnServernaam\deInstantienaam; Database=mijnDataBase; Trusted_Connection=Waar; Gegevensbron=mijnServerAdres; Initiële catalogus=mijnDatabasis; Geïntegreerde beveiliging=SSPI;
1: Geïntegreerde beveiligingsparameter Wanneer Integrated Security op True is gezet, werken de UserID en wachtwoord voor de verbindingsinstructie niet, dat wil zeggen, de Windows-authenticatiemodus wordt gebruikt. Alleen wanneer deze op False staat of weggelaten wordt, is de verbinding gebaseerd op UserID, wachtwoord. Geïntegreerde beveiliging kan ook worden ingesteld op: sspi, wat gelijkwaardig is aan True, en het wordt aanbevolen dit te gebruiken in plaats van True. Gegevensbron=mijnServerAdres; Initiële catalogus=mijnDatabasis; Geïntegreerde beveiliging=SSPI; Gegevensbron=mijnServerAdres; Initiële catalogus=mijnDatabasis; Geïntegreerde beveiliging=waar; Gegevensbron=mijnServerAdres; Initiële catalogus=mijnDatabasis;; Gebruiker ID=mijngebruikersnaam; Wachtwoord=mijnWachtwoordGeïntegreerde Beveiliging=vals;
2: Parameter Trusted_Connection Trusted_Connection=waar, wordt authenticatie uitgevoerd met de huidige Windows-accountgegevens Trusted_Connection=onwaar; De vertrouwde verbindingsmethode (d.w.z. de Windows-authenticatiemethode wordt niet gebruikt) zal worden gebruikt in plaats van de SQL Server 2000-authenticatiemethode Server=mijnServerAdres; Database=mijnDataBase; Gebruiker ID=mijngebruikersnaam; Wachtwoord=mijnWachtwoord; Trusted_Connection=onwaar; Server=mijnServerAdres; Database=mijnDataBase; Trusted_Connection=Waar;
3: Initial Catalog is de naam van de database waar je verbinding mee wilt maken
4: WINCE-verbinding Gegevensbron=mijnServerAdres; Initiële catalogus=mijnDatabasis; Geïntegreerde beveiliging=SSPI; Gebruikers-ID=mijnDomein\mijnGebruikersnaam; Wachtwoord=mijnWachtwoord;
2: Je kunt SqlConnectionStringBuilder gebruiken zodat je de naam niet hoeft te onthouden. SqlConnectionStringBuilder scsb = nieuwe SqlConnectionStringBuilder(); SCSB. DataSource = @"(local)\SQLExpress"; SCSB. IntegratedSecurity = waar; SCSB. InitialCatalog = "Northwind"; SqlConnection myConnection = nieuwe SqlConnection(scsb. ConnectionString);
Drie: Je kunt de Instelling in de eigenschappen gebruiken om automatisch de verbindingsstring in te stellen 1: Selecteer (verbindingsstring) in type, 2: Selecteer de databron in DataSouce en voer vervolgens de servernaam in Server in, met local\SQLExpress 3: Selecteer de inlogverificatiemethode, deze keer selecteer je Windows-verificatie (d.w.z. vertrouw de verbinding Integrated Security=True) 4: Selecteer de databasenaam en bevestig Data Source=(local)\SQLExpress; Initiële catalogus = Noordenwind; Geïntegreerde Beveiliging=Waar server = .\sqlexpress; geïntegreerde beveiliging = waar; database = noordenwind
Vier: SQL2005 externe serververbindingsmethode
Hoe open je poort 1433 in SQL Server 2005: Configuration Tool->SQL Server Configuration Manager->MSSQLSERVER-protocol om te zien of het TCP/IP-protocol is gestart, als het start, klik met de rechtermuisknop op het menu "Properties", selecteer "IP Address" in het pagineringsmenu en verander "TCP Port" naar 1433 in "IP1" en "IP2", en "Enabled" naar "Yes" Configuration Tool->SQL Server Configuration Manager->SQL Native Client Configuration->Client Protocol->TCP/IP Selecteer eigenschappen in het TCP/IP rechtsklikmenu en bevestig dat de standaardpoort 1433 is en de ingeschakelde Ja is.
SQL Server 2005 Remote Connection Configuratie TCP/IP Eigenschappen: Oppervlakteconfiguratie --> database-engine --> Externe verbindingen --->Gebruik van TCP/IT SQL Server Peripheral App Configurator? Service- en connectiviteitsconfiguratie van randapparatuur? Verbinding op afstand? Ingeschakeld (TCP/IP en benoemde pijplijnen voor externe verbindingen) SQL Server Configuration Manager? SQL2005 netwerkconfiguratie? Schakel TCP/IP en benoemde pipes in
Voor andere instructies, zie sqlserver2005 (Express-versie), voor het gemak van beheer moet je ook naar de volgende beheerbeheerder gaan: Na het installeren van de beheerbeheerder, verbind sqlserver2005 in het programma, moeten de volgende punten worden genoteerd. 1. Activeer de sql2005 remote connection-functie, de openingsmethode is als volgt: configuratietool - >sql server peripheral application configurator - > service en connected peripheral application configurator - > Open de Database Engine-node onder de MSSQLSERVER-node, selecteer eerst "Remote Connection" en selecteer vervolgens "Gebruik TCP/IP en benoemde pipes tegelijkertijd", na bevestiging herstart je de databaseservice. 2. De inloginstellingen worden veranderd naar SQL Server en Windows. Authenticatie wordt tegelijkertijd geselecteerd, de specifieke instellingen zijn als volgt: beheer manager - >Windows-authenticatie (de eerste keer dat je met Windows binnenkomt), - selecteer je dataserver in > objectverkenner - klik met de rechtermuisknop > eigenschappen>beveiliging>SQL Server en Windows Authenticatiemethode wordt ook gekozen. 3: Stel een gebruikersnaam en wachtwoord in voor een SQL-server, de specifieke instellingen zijn als volgt: managemanager->windows Authenticatie>nieuwe query>sp_password null, 'sa123456', 'sa'. Stel dus een gebruiker in met de naam sa en het wachtwoord is: sa123456, de volgende keer dat je inlogt kun je de SQL-servermethode gebruiken, de gebruikersnaam is sa, De gebruiker met het wachtwoord is: sa123456 heeft de database ingevoerd. 4: Na het voltooien van bovenstaande drie stappen schrijf je de verbindingsstring zodat deze soepel in de database kan komen. (server=.\sqlexpress; uid=sa; pwd=sa123456; database=master";
Vijf: SQL2000 methode voor verbinding met externe servers
1: Controleer of het IP-adres van de pingserver gepingd kan worden. 2: Voer de IP-poort van de telnetserver in onder Dos of de commandoregel om te kijken of deze verbonden kan worden. Telnet 202.114.100.100 1433 heeft bijvoorbeeld meestal een poortwaarde van 1433, omdat 1433 de standaard luisterpoort is voor TCP/IP in SQL Server 2000. Als er een probleem is, gaat deze stap meestal mis. De gebruikelijke prompt is "...... Verbinding niet open, verbinding mislukt". Als deze stap problematisch is, kun je de volgende opties overwegen. 1) Controleer of de externe server de SQL Server 2000-service heeft gestart. Zo niet, dan begint het. 2) Controleer of het Tcp/IP-protocol aan de serverzijde is ingeschakeld, omdat externe verbindingen (via het internet) op dit protocol moeten vertrouwen. De controlemethode is om het Start Menu-> Programs-> Microsoft SQL Server-> Server Network Utility op de server te openen om te zien of er een TCP/IP-protocol in het ingeschakelde protocol zit, en zo niet, het in te schakelen. 3) Controleer of de TCP/IP-poort van de server is geconfigureerd als poort 1433. Controleer nog steeds het TCP/IP-attribuut in het Enable-protocol in de Server Network Utility, zorg ervoor dat de standaardpoort 1433 is, en het selectievakje Server Verbergen is niet aangevinkt. In feite is het mogelijk als de standaardpoort wordt gewijzigd, maar wanneer de client telnet-tests uitvoert, moet het serverpoortnummer hetzelfde worden geschreven als het poortnummer dat door de server is geconfigureerd. Als het selectievakje Server Verbergen is aangevinkt, betekent dit dat de client de server niet kan zien door de server te enumereren, wat de verbinding beschermt maar niet beïnvloedt, maar de standaardpoort van het Tcp/ip-protocol wordt impliciet gewijzigd naar 2433, die dienovereenkomstig moet worden aangepast wanneer de client verbinding maakt. 4) Als het server-side besturingssysteem is gepatcht met SP2, is het noodzakelijk om de Windows-firewall tot op zekere hoogte te configureren en poort 1433 ervoor te openen; meestal kun je de Windows-firewall direct tijdens de test uitschakelen (het is het beste om ook andere firewalls uit te schakelen). 5) Controleer of de server luistert op poort 1433. Als de server niet luistert op poort 1433 van de TCP-verbinding, kan hij geen verbinding maken. De controlemethode is om netstat -a -n of netstat -an in te voeren onder de DOS- of commandoregel van de server, en de resultaatlijst te controleren om te zien of er een item vergelijkbaar is met tcp 127.0.0.1 1433 dat luistert. Zo niet, dan moet je meestal SQL Server 2000 patchen met minstens SP3. Je kunt de query-analyzer aan de serverzijde starten en selecteren @@version invoeren om deze uit te voeren, en je ziet het versienummer, en alle versies onder 8.0.2039 moeten worden gepatcht. Als alles hierboven in orde is, kun je de telnet-server IP 1433-test doen, en je zult de cursor linksboven zien knipperen nadat het scherm knippert. Gefeliciteerd, je kunt meteen beginnen met verbinden via Enterprise Manager of Query Analyzer.
3: Controleer de clientinstellingen program-> Microsoft SQL Server -> clientnetwerkgebruikstools. Zoals bij Server Networking Utilities, zorg ervoor dat het client TCP/IP-protocol is ingeschakeld en dat de standaardpoort 1433 is (of andere poorten, consistent met de server). 4: Test de verbinding in Enterprise Manager of vraag de analyzer Enterprise Manager - > Rechtsklik SQlserver Group - > Maak een nieuwe sqlserver-registratie aan - > Volgende-> Schrijf naar remote IP-> Next-> Selecteer Sqlserver login-> Next-> Schrijf inlognaam en wachtwoord (sa, password)-> Next-> Next-> Complete query analyzer-> File-> Connection-> Schrijf naar remote IP-> Schrijf login en wachtwoord (sa, wachtwoord)-> OK wordt meestal aanbevolen in de Query Analyzer, omdat standaard de timeout-instelling voor het registreren van een andere SQL Server via Enterprise Manager 4 seconden is, en de Query Analyzer 15 seconden. Hoe de standaard verbindingstimeout aan te passen: Enterprise Manager - > Tools - > Opties - > In het venster "SQL Server Enterprise Manager Properties" dat verschijnt, klik op het tabblad "Geavanceerd" - > Verbindingsinstellingen - > Voer een groter getal in het vak na Login Timeout (seconden) Query Analyzer - > Tools - > Opties - > Verbindingen - > Voer een groter nummer in het vak na Login Timeout (seconden) Normaal gesproken kun je verbinden, als er een foutmelding wordt gegeven, ga dan naar de volgende stap. 5: De fout wordt meestal veroorzaakt doordat SQL Server een "Windows alleen" authenticatiemethode gebruikt, waardoor de gebruiker geen verbinding kan maken met een SQL Server-loginaccount (zoals SA). De oplossing ziet er als volgt uit: 1) Gebruik Enterprise Manager aan de serverzijde en selecteer "Gebruik Windows Authenticatie" om verbinding te maken met SQL Server. 2) Vouw de SQL Server-groep uit, klik met de rechtermuisknop op de naam van de SQL Server-server, selecteer Eigenschappen en selecteer vervolgens het tabblad Beveiliging. 3) Selecteer onder Authenticatie SQL Server en Windows. 4) Herstart de SQL Server-service. (Net Stop MSSQLSusStop Service onder DOS of de opdrachtregel, Net Start MSSQLSuttServerStop Service, is ook een snelle oplossing).
|