Polaczenie z baza danych C#.Net

Odpowiedz Nowy wątek
2006-04-16 18:09

Rejestracja: 13 lat temu

Ostatnio: 13 lat temu

0

Witam
Mam problem z polaczeniem sie z serverem jakimkolwiek (nie lokalnie). Programuje w VS .Net c#
i nie wiem czemu ale cos mi nie wychodzi. Oto klika linijek kodu:

using System;
using System.Data;
using System.Data.SqlClient;

//User ID=nazwa uzytkownika
//Initial Catalog= ????
//Data Source=nazwa severu

string sConnectionString = "User ID=xxx;Initial Catalog=xxx;Data Source=xxx";
SqlConnection objConn = new SqlConnection(sConnectionString);
objConn.Open();

string sSQL = "SELECT idproduktu " +
              "FROM Produkty WHERE idpodkategori = 2";  

SqlCommand objCmd = new SqlCommand(sSQL,objConn);

            try
            {
                objCmd.ExecuteNonQuery();
            }
            catch (System.Exception e)
            {
                Console.WriteLine(e.Message);
            }
            Console.WriteLine("Rekord został dodany");
        }

Nie wiem nawet co to Initial Catalog i do czego to sluzy i czy musi byc?. Zastanawiam sie tez czy zeby sie polaczyc musi byc zainstalowany sql2000.msi?
oraz czy w programie musza byc jakies pliki *.dll potrzebne do polaczenia, noi czy program moze byc w dowolnym miejscu czy na serverze zeby to polaczenie uzyskac. .Wiem ze to glupie pytanie ale inaczej to wygladalo w php. Noi jeszcze czy USER ID itd.. tu maja byc dane bezposredniego dostepu do bazy danych czy dane ftp?
Bede wdzieczny za pomoc

Pozostało 580 znaków

2006-04-16 18:59

Rejestracja: 13 lat temu

Ostatnio: 8 lat temu

0

Data Source to nazwa serwera (np. localhost albo IP), initial catalog to nazwa bazy. Jak podajesz userID (nazwe uzytkownika w bazie) to pewnie potrzebne bedzie tez password. Jezeli laczysz sie z baza za pomoca autentykacji windows to dajesz 'integrated security=sspi' - wtedy nie trzeba oczywiscie podawac uzytkownika i hasla. Sprawdz, czy metoda Open() SqlConnection rzuca jakims wyjatkiem.

pozdrawiam
johny


You need to learn how to walk
before you can run

Pozostało 580 znaków

2006-04-16 20:18

Rejestracja: 13 lat temu

Ostatnio: 13 lat temu

0

Dodalem Password oraz Initial Catalog ale nadal to samo. Program sie kompiluje jednak po pewnej probie polaczenia wyzuca blad tego typu:

An unhandled exception of type 'System.Data.SqlClient.SqlException' occurred in system.data.dll

Additional information: System error.

Moze aby sie polaczyc musze zainstalowac dodatkowe biblioteki msdn lub ten pliczek sql2000.msi?. Tak na marginesie uzywam visual studio .net wer.2003.

Pozostało 580 znaków

2006-04-16 22:44

Rejestracja: 13 lat temu

Ostatnio: 8 lat temu

0

Jak na moj gust wystarczy, ze serwer dziala na danym kompie i tyle. Chyba, ze na innym niz standardowo porcie, ale to sie chyba rzadko zdarza. Zakladam, ze normalnie mozesz sie z serwerem polaczyc za pomoca innej aplikacji? Moze telnetem wytestuj, czy sie mozesz polaczyc na porcie mssql'a, tak dla pewnosci.

pozdrawiam
johny


You need to learn how to walk
before you can run

Pozostało 580 znaków

2006-04-18 15:29

Rejestracja: 13 lat temu

Ostatnio: 13 lat temu

0

Dalej nie moge sobie poradzic z polaczeniem, probowalem przez telnet tak jak mowiles ale tez nie wychozi, nie wiem c ozle robie:
wpisuje telnet -l uzytkownik localhost 23 . Probowalem sie polaczyc z lokana baza ale to samo, nie moge sie polaczyc.

Pozostało 580 znaków

2006-04-19 04:43

Rejestracja: 13 lat temu

Ostatnio: 8 lat temu

0
krisOne napisał(a)

Dalej nie moge sobie poradzic z polaczeniem, probowalem przez telnet tak jak mowiles ale tez nie wychozi, nie wiem c ozle robie:
wpisuje telnet -l uzytkownik localhost 23 . Probowalem sie polaczyc z lokana baza ale to samo, nie moge sie polaczyc.

Nie, nie o to mi chodzilo. Chcialem, zebys telnetem sprawdzil czy sie mozesz polaczyc z usluga mssql'a. Standardowo chodzi na porcie 1433, wiec 'telnet nazwa_kompa 1433'. Nie wiem czy masz na localhoscie, czy gdzies w sieci. Jesli w sieci to moze firewall wlaczony?

edit
Oczywiscie jesli telnet nie wyswietli zadnego komunikatu, tylko wyczysci sie ekran w cmd to usluga dziala.

pozdrawiam
johny


You need to learn how to walk
before you can run

Pozostało 580 znaków

2006-04-20 22:53

Rejestracja: 13 lat temu

Ostatnio: 13 lat temu

0

Oki, juz sobie poradzilem, problemem bylo to ze laczylem sie za pomoca sql a localhost udostepnia mysql tak samo server na ktorym mam swoje konto. Udalo sie polaczyc lokalnie a ze swoim serverem dalej nie moge jednak poki co dzialam na localhoscie, a pozniej to zmienie jak mi sie uda polaczyc z serverem zewnetrznym. Nie uzywam zadnych fireboli. Dzieki za cenne podpowiedzi.

Pozostało 580 znaków

Odpowiedz

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0