help+delphi

8 отговора 239 прегледа
#1

help+delphi

Znae li nqkoj kak programno da smenq patq na ailas-a na ODBC-to?

Отговор
в отговор на dani #2

Re: help+delphi

незнам дали правилно съм те разбрал, но ако идеята е да настройваш/създаваш ODBC entry от твоя си програмка, то нещото което ще свърши работа е odbcconf.exe (през шела) или odbcconf.dll - с API-то.
но трябва да си изровиш инфо /от Visual Studio, например/ като как се ползват.

--------------------------------------
Започва Път от моят праг...
Отговор
в отговор на Hateras #3

Re: help+delphi

naistina se nadqvahme s Dani da ima i drug na4in :))

Nqkakvo po konkretno predlojenie! nqkoi da go e pravil???

Отговор
в отговор на Vermax #4

Re: help+delphi

За каква база данни иде реч?

Самите DSN файлове и тяхното местоположение са описани в [линк]

Редактирано от Pechenia на

Отговор
в отговор на dani #5

Re: help+delphi

Примерен код за mdb

function CreateMDBDSN(FileName, DSNName, Description:String):boolean;
var
pFn: TSQLConfigDataSource;
hLib: LongWord;
strDriver: string;
strHome: string;
strAttr: string;
strFile: string;
fResult: BOOL;
srInfo : TSearchRec;
begin
if Not FileExists(FileName) then
begin
Result := False;
Exit;
end;
Result := True;
strFile := FileName;
strHome := ExtractFilePath (FileName);
hLib := LoadLibrary( 'ODBCCP32' ); // load from default path
if( hLib <> NULL ) then
begin
@pFn := GetProcAddress( hLib, 'SQLConfigDataSource' );
if( @pFn <> nil ) then
begin
// force (re-)create DSN
strDriver := 'Microsoft Access Driver (*.mdb)';
strAttr := Format( 'DSN='+DSNName+#0+
'DBQ=%s'+#0+
'Exclusive=0'+#0+
'Description='+Description+#0+#0,
[strFile] );
fResult := pFn( 0, ODBC_ADD_DSN, @strDriver[1], @strAttr[1] );
if( fResult = false ) then Result := False;
// test/create MDB file associated with DSN
if( FindFirst( strFile, 0, srInfo ) <> 0 ) then
//strFile := '.\\TestData.MDB';
begin
strDriver := 'Microsoft Access Driver (*.mdb)';
strAttr := Format( 'DSN='+DSNName+#0+
'DBQ=%s'+#0+
'Exclusive=0'+#0+
'Description='+Description+#0+
'CREATE_DB="%s"'#0+#0,
[strFile,strFile] );
fResult := pFn( 0, ODBC_ADD_SYS_DSN, @strDriver[1], @strAttr[1] );
if( fResult = false ) then Result := False;
end;
//FindClose( srInfo );
end;
(* MASSIVE SNIP *)
FreeLibrary( hLib );
end
else
begin
Result := False;
end;
end;



AquilaX

Редактирано от AquilaX на

Отговор
в отговор на AquilaX #6

Re: help+delphi

за аксес - хубу. ама да кажеш къде да чета за MS SQL?
проблема изниква с UID + PWD: 'Invalid Keyword-Value pairs'...

--------------------------------------
Започва Път от моят праг...
Отговор
в отговор на Hateras #7

Re: help+delphi

Стандартен достъп до MS SQL е "SA",""

чети и дишай по-леко
Отговор
в отговор на dani #8

Re: help+delphi

razglejdal li si tuka?
ako e za konkreten driver predpolagam che towa moje da ti swarshi rabota ....

HKEY_CURRENT_USER\Software\ODBC\ODBC.INI

kakto i na HKLM\....

------------------------------
I got a COMPILER, and I'm not afraid to use it!
Отговор
в отговор на Pechenia #9

OFF

не бе началство, не е проблема в sa-то, проблема е в UID=sa, в документациите за ODBC драйвера за MS SQL Server има списък с ключовете който могат да се подават на SQLConfigDSN и в тоя списък няма UID и PWD, а без тях достъпа до базите е малко труден...

както и да е, питането беше попринцип, засега не ми е необходимо да правя тая гимнастика.

--------------------------------------
Започва Път от моят праг...
Отговор