1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- program testst;
- {$mode objfpc}
- uses fpodbc,Classes;
- var
- Conn : TODBCConnection;
- St : TODBCSQLStatement;
- FieldNames : TStringList;
- I : Integer;
- PT : TODBCParamType;
- procedure DumpFielddef(F : TODBCField);
- begin
- Writeln('Field ',F.Position,' : ',F.Name);
- Writeln('Type : ',F.DataType);
- Writeln('Size : ',F.Size);
- Writeln('Decimal digits : ',F.DecimalDigits);
- Writeln('Nullable : ',F.Nullable);
- end;
- begin
- Conn:=TODBCConnection.Create(Nil);
- Try
- Conn.DSN:='FPC';
- Conn.Active:=True;
- ST:=TODBCSQLStatement.Create(Conn);
- Try
- ST.SQL.Text:='Select * from fpdev';
- ST.Prepare;
- Try
- FieldNames:=TStringList.Create;
- Try
- st.GetFieldList(FieldNames);
- Writeln('Found ',FieldNames.Count,' Fields in result set :');
- For I:=0 to FieldNames.Count-1 do
- Writeln(i+1,': ',FieldNames[i]);
- Writeln('End of list');
- st.bindfields(nil);
- with st.fields do
- for I:=0 to COunt-1 do
- DumpFielddef(st.fields.items[i] as TODBCField);
- finally
- FieldNames.Free;
- Writeln('Freed list');
- end;
- Finally
- St.Unprepare;
- Writeln('Unprepared');
- end;
- Finally
- ST.Free;
- Writeln('Freed statement');
- end;
- Conn.Active:=False;
- Writeln('Disactivated connection');
- Finally
- Conn.free;
- Writeln('Freed Connection');
- end;
- end.
|