Page 1 of 1

what is defference odbc_a and odbc-w

Posted: 23.03.2024, 20:20
by kikep
Hello what is difference of this libs odbc_a and odbc_w where i can find information of that pleases help me... ado connection has those option.... on what case use one or other one...

Thanks

Re: what is defference odbc_a and odbc-w

Posted: 25.03.2024, 08:02
by aehimself
Hello,

I personally never used ODBC until now but I think "A" stands for ANSI while "W" stands for "Wide" (UTF-8 / Unicode).
Windows is using the same differentation in WinApi function names (GetWindowTextA vs GetWindowTextW).

Re: what is defference odbc_a and odbc-w

Posted: 25.03.2024, 11:25
by marsupilami
aehimself wrote: 25.03.2024, 08:02 "A" stands for ANSI while "W" stands for "Wide" (UTF-8 / Unicode)
Correct - but wide is UTF16 only ;)

Re: what is defference odbc_a and odbc-w

Posted: 25.03.2024, 13:46
by kikep
Ok Thanks...now i know that....thanks so much..

Re: what is defference odbc_a and odbc-w

Posted: 25.03.2024, 15:16
by kikep
well i don't know why if i connect with ado i can get all schema tables but if i connect with odbc_a or odbc_w don't get tables schema...
can connect but when i try to open query to table send error...

Code: Select all

procedure TFormMain.FormShow(Sender: TObject);
var i:Integer;
begin
//  ZCMas.Properties.Add ('Codepage=ISO8859\_1');
  ZCMas.Properties.Add ('Timeout=10');
  ZCMAS.Database:='DSN=mas9032; UID=ra; PWD=5802; Company=001; Directory=C:\Best\MAS 90\Version4\mas90;  LogFile=\PVXODBC.LOG; ViewDll=C:\Best\MAS 90\Version4\MAS90\HOME\;CacheSize=4;DirtyReads=1; BurstMode=1;SERVER=NotTheServer;Persist Security Info=False';
  if( ZCMAS.Connected = false) then begin
    ZCMas.Connect;
  end;

   Tables:= TStringList.Create;
   ZCMas.GetTableNames('', Tables);  // Tables always is empty or jus one register...
   for I := 0 to tables.Count-1 do begin
      cbTab.Items.Add(Tables[I])
   end;
   cbTab.ItemIndex:=0;
   cbTab.SetFocus;
   ZqCust.SQL.Text:='select * from '+cbTab.Text;
   ZqCust.open; // here don't let me open send me error..     
end;