Podłączenie przez ADOConnection

0

Witam

Mam następujący problem gdy skonfiguruje ConnectionString przez kreator do bazy łączy mi sie bez problemów.
Problem polega na tym gdy chce ConnectionString wpisać ręcznie w kodzie programu( robie to po to abym użytkownik mógł wprowadzać inne serwery a nie było to ustalone z góry) np.
ADOConnecion->ConnectionString = i tu wpisuje te wszsytkie potrzebne dane.
Jeśli to tak zrobię to program nie może podpiąć się pod baze i daje komunikat że serwer nie istnieje lub odmówiono dostępu, choć to co podaje do connectionString jest tym samym co sam kreator tworzy jak sie go używa.

Mam nadzieje że zrozumiecie o co mi chodzi w tym zawiłym tekście
Z góry dzięki za wszelkie rady i pomysły

0

Podaj jezyk, nazwe bazy oraz jakis przyklad, bo my nie wrozki...

0

Stwórz prawidłowy łańcuch przez kreator, skopiuj go i porównaj ze swoim - błędnym.

0

Sorki chodziło mi o Buildera 6 serwer ms sql 2005 Expres.
Próbowałem już skopiować z kreatora, i dalej nie chodzi, a w kreatorze chodzi

0

ale kodu nie poda

0

Witam,

Przepraszam za odgrzewanie tematu, ale mam podobny problem jak kolega z góry.
Próbuję się połączyć z Turbo C++ (Borland DevStudio 2006) do bazy MSSQL 2005 poprzez ADO.
Kiedy wrzucam komponent na formę i buduję sobie ConnectionString'a za pomocą kreatora, wszystko jest ok. Z kreatora otrzymuję taki ConnectionString:

Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Initial Catalog=master;Data Source=(local)\SQLEXPRESS

Po przestawieniu Connected na true, zmienia się na:

Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Initial Catalog=master;Data Source=(local)\SQLEXPRESS;Use Procedure for Prepare=1;Auto Translate=True;Packet Size=4096;Workstation ID=LAPEK;Use Encryption for Data=False;Tag with column collation when possible=False;

Kiedy jednak próbuję wywołać połączenie z kodu:

TADOConnection *con0 = new TADOConnection(Form1);
con0->ConnectionString = "Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Initial Catalog=master;Data Source=(local)\SQLEXPRESS;Use Procedure for Prepare=1;Auto Translate=True;Packet Size=4096;Workstation ID=LAPEK;Use Encryption for Data=False;Tag with column collation when possible=False;";
con0->Connected = true;

dostaję komunikat: [DBNETLIB] [ConnectionOpen(Connect()).] Serwer SQL nie istnieje lub odmówiono do niego dostępu.

Proszę o wsparcie;)

0

Slabo sie znam na C, ale... podsune pytanie pomocnicze: co Twoim zdaniem oznacza sekwencja \n ? albo \r? :D
Pytanie dobijajace: Co Twoim zdaniem wydrukuje komputer, gdy wpiszesz w stringu "\nemo" albo "\rower"?
:P

0
TheBigStaticObject napisał(a)

Slabo sie znam na C, ale... podsune pytanie pomocnicze: co Twoim zdaniem oznacza sekwencja \n ? albo \r? :D
Pytanie dobijajace: Co Twoim zdaniem wydrukuje komputer, gdy wpiszesz w stringu "\nemo" albo "\rower"?
:P

ooooo żesz [glowa]. Dzięki.

0

Nie wiem jak jest z MSSQL. Ja stosuję Turbo C++ i Firebird-a. Przy technologi ADO prawdopodobnie wymagane są sterowniki ODBC. Ja przynajmniej je stosuję i nie mam problemu z bazami pod Firebird.

0

Może komus sie przyda

emti85 dodaj do stringu haslo.

Provider=SQLOLEDB.1;Password=jakies_haslo;Persist Security Info=False;User ID=sa;Initial Catalog=master;Data Source=(local)\SQLEXPRESS;Use Procedure for Prepare=1;Auto Translate=True;Packet Size=4096;Workstation ID=LAPEK;Use Encryption for Data=False;Tag with column collation when possible=False;

0

@skalcik: nie dosc, ze nekrofil, to jeszcze nie zauwazyles, ze problem byl w innym miejscu i do tego rozwiazany...

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