Sql forbindelse crash

Tags:    .net

Når jeg opretter forbindelse til min sql-server virker det fint. Men programmet er lavet sådan man selv kan indtaste servernavn, database, brugernavn og password.

Problemet er så at når servernavnet eller databasen ikke eksisterer crasher programmet:(
Hvordan kan jeg undgå det crash og istedet bare få en fejlbesked eller lign?

Her er forbindelsesdelen i koden:
Fold kodeboks ind/udKode 


Nogen hjælp??

EDIT: Programmet crasher ikke, men det fryser i cirka 20 sekunder(det er meget træls).





Indlæg senest redigeret d. 02.10.2008 08:54 af Bruger #10584
47 svar postet i denne tråd vises herunder
4 indlæg har modtaget i alt 4 karma
Sorter efter stemmer Sorter efter dato
Hvis du nu læste hvad det var jeg skrev til dig (for at bruge din måde at skrive tingene på) ville du se hvad jeg skriver om OLEDB...

Du skriver, at Provider=SQLOLEDB er nødvendig i din connectionstring for at få det til at virke... Har du testet om det passer? Jeg bruger det ikke og hos mig virker det helt fint uden hvis du connecter til en MS SQL Server.

Jeg bliver nødt til at vide hvilken type database du har med at gøre samt hvilken type applikation du laver det her til for at jeg kan hjælpe dig.

Læs i øvrigt her om OLEDB og du vil få et indblik i hvad jeg har skrevet ovenfor:
http://en.wikipedia.org/wiki/OLE_DB



Jeg har lige testet og den prøver ikke engang på at oprette forbindelse til serveren, hvis jeg ikke skriver Provider=SQLOLEDB; i min connectionstring:(

Det er til et program til et firma som skal gøre det muligt at se og opdatere en database med kundeinformationer, varer, solgte varer, mm (det er en lidt stor database)

Er der andre alternativer til OLE DB som du kan anbefale (alt undtaget at oprette en ny Data Source)



Indlæg senest redigeret d. 17.10.2008 09:21 af Bruger #10584
Det virker underligt at man ikke kan gå uden om at sætte provideren til OLEDB...

Er du sikker på at det er en MS SQL Server alle databaserne ligger i? Det lyder nemlig ikke sådan hvis du ikke kan sætte provideren til andet end OLEDB.

Hvis man i applikationen skal kunne tilgå databaser på andre typer database-servere skal du jo også tage højde for det og benytte en anden connectionstring.

Prøv at se på denne side:
http://www.connectionstrings.com/



Kan desværre først teste i morgen da sql serveren jeg bruger er offline i dag.

Efter hvad jeg kan se, er den connectionstring jeg bruger, præsis magen til en til en sql server 2000, hvilket jeg ikke kan få til at hænge sammen:S
Men det kan jo være det der er problemet..



Jeg tror vi er ved at have fat i problemet netop med hvilken connectionstring du bruger...

Du kan bare vende tilbage når du har flere oplysninger og har fundet ud af mere :)



Nu er serveren oppe at køre igen..
Alle connection strings jeg skriver hvor der ikke står "Provider=SQLOLEDB" resulterer i en fejlbesked fra Visual Studio (når jeg fjerner min try/catch):

ArgumentException was unhandled

An OLE DB Provider was not specified in the ConnectionString. An example would be, 'Provider=SQLOLEDB;'.

Synes efterhånden det begynder at blive lidt mærkeligt det her:S

UPDATE:
Programmet frysser ikke i 40 sek, men crasher efter 40 sek (jeg havde try/catch på, derfor crashede det ikke)



Indlæg senest redigeret d. 18.10.2008 18:04 af Bruger #10584
Lyder mystisk.

Jeg mangler dog stadig at få at vide hvilken type database du har med at gøre...



Du må lige forklare mig hvad du mener med type, er ikke helt med..



Hvilken type SQL Server er databasen i?

Er det en:
- Microsoft SQL Server
- MySQL Server
- Oracle Server
- IBM DB2 Server
- osv....

Eller er det en:
- Microsoft Office Access 200x database

??????



Indlæg senest redigeret d. 19.10.2008 17:27 af Bruger #2243
Det er en Microsoft SQL Server 2005



t