Długość nazwy zwracanej kolumny jest ucięta

0

Witam,

Używam Delphi XE i łącze się z bazą MySQL przez uniDac. Mam zapytanie:

select POM.MIEJ_POM as TABELA_POM_MIEJSCE_POMIARU ...

i bezpośrednim odpytaniu bazy dane są zwracane w kolumnie TABELA_POM_MIEJSCE_POMIARU natomiast w Delphi

MySQLQuery.FieldByName('TABELA_POM_MIEJSCE_POMIARU ').AsString

pojawia się error a po podglądzie

MySQLQuery.Fields.Fields[0].FieldName

pokazuje TABELA_POM czyli obcina do 10 znaków.

Co można z tym zrobić, jakieś propozycje (odpada MySQLQuery.Fields.Fields[0]...)

0

A szerszy kod pokażesz?
Co to za "error'?

0
MySQLQuery.FieldByName('TABELA_POM_MIEJSCE_POMIARU ').AsString 

Czy tam przypadkiem nie pojawiła Ci się spacja na końcu przed ').AsString?

0

Niestety nie, skrócenie nazwy do 10 znaków rozwiązuje problem ale chciałbym nie skracać bo mam wiele tabel i wiele pól połączonych.

0

To tak jak Ci pisał @axel234 podaj jaki błąd Ci Delphi generuje.

0
try
  s := MySQLQuery.FieldByName('TABELA_POM_MIEJSCE_POMIARU').AsString;
except
  on E: Exception do
    Showmessage(e.Message);
end;

zwraca
'Field 'TABELA_POM_MIEJSCE_POMIARU' not found'
a jak zmienię nazwę na ''TABELA_POM' to i owszem

0

Nie umiem odpowiedzieć na zagadnienie z pytania, bo bazy danych ogarniam słabo, z SQL to tylko chwilę bawiłem się SQLite, ale napiszę poza komentarzem. Ponieważ poprzednie komentarze @furious programming olałeś niestety. Ostatni raz poprawiamy. Kod wstawiaj w znaczniki. Chcesz pisać wątek raz jeszcze, bo ten wyląduje w Koszu? I jak nie odnieść w tym przypadku wrażenia, że usuwanie źle napisanych wątków jest jedyną słuszną reakcją na - brzydko, ale dosłownie pisząc - olewanie prośb/wskazówek od Moderarorów/Adminów. Później ktoś mi będzie znowu składał gratulacje w dziale Społeczności zamiast się ogarnąć.

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