ďťż

Ładny brzuch

mam problem dotyczący zapytań mysql w delphi. korzystam z dbexpress + turbo delphi 2k6. gdy tworzę zapytanie (dość długie), w którym liczba znaków przekracza 255 otrzymuję error. czy da się to jakoś obejść?



A nie możesz dać WideString ?

właśnie w tym problem, że właściwość CommandText jest ustawiona na zwykły string. dostępu do źródeł nie mam niestety.
wyrabiając się w 255 znakach też bym sobie jakoś poradził, ale wydajność byłaby już nie ta sama.

to chyba kwestia turbo delphi, w normalnym sie tak nie dzieje ... sprobuj przypisywac tekst zapytania w ten sposob:
costam.CommandText := 'czesc 1, ponizej 255 znakow' + 'reszta tekstu';


A nie możesz dać WideString ?
WideString to string do przechowywania tekstu unicode. Wiec to nie ma nic do rzeczy ...




mam problem dotyczący zapytań mysql w delphi. korzystam z dbexpress + turbo delphi 2k6. gdy tworzę zapytanie (dość długie), w którym liczba znaków przekracza 255 otrzymuję error. czy da się to jakoś obejść?
tak oczywiscie ze mozesz obejsc.
1. stringlist
2. w Mysql ustwaw pole na text


tak oczywiscie ze mozesz obejsc.
1. stringlist
2. w Mysql ustwaw pole na text

a można jaśniej?:D

@migajek: jak tak łączę stringa to też mi wywala błąd a kursor przeskakuje do końca pierwszego z łączonych.
Użytkownik czychacz edytował ten post 19 maj 2009, 07:13

@migajek: jak tak łączę stringa to też mi wywala błąd a kursor przeskakuje do końca pierwszego z łączonych.

to sprobuj tak:
var q: string; begin q:= 'tekst1 ... bla bla, dajmy na to 200 znakow' + ' reszta zapytania, nie wiecej jak 200' + 'itp itd... '; costam.commandText:= q;

jak to sie nie uda - sprobuj tak:
costam.commandText:= 'czesc 1'; costam.commandText:= costam.commandText + 'czesc 2';

Przecież to normalne, że w delphi string może mieć tylko 255 bajtów. Do długich napisów używa się ansistring lub pchar.

migajek - ty chyba pisałeś w delphi i nie wiesz o tym?
Użytkownik Radek edytował ten post 20 maj 2009, 01:19

a można jaśniej?:D
Czego nie rozumiesz? Zamiast string daj StringList.


Przecież to normalne, że w delphi string może mieć tylko 255 bajtów. Do długich napisów używa się ansistring lub pchar.
string - w Delphi dla win32 string jest równoważny z AnsiString (chyba że ustalisz inaczej, dyrektywą {$H-}). (dla odmiany, pod .net string = WideString)

a pchar ma się do stringa jak ... ;) pchar to wskaźnik na adres pierwszego znaku tzw null-terminated string. Czyli ciągu zakończonego znakiem #0

więc zanim się wypowiesz na temat którego nie jesteś pewien to sprawdź co piszesz.


a pchar ma się do stringa jak ... ;) pchar to wskaźnik na adres pierwszego znaku tzw null-terminated string. Czyli ciągu zakończonego znakiem #0
Gdybyś pisał w c to nie mówiłbyś "a pchar ma się do stringa jak..." :)


string - w Delphi dla win32 string jest równoważny z AnsiString (chyba że ustalisz inaczej, dyrektywą {$H-}).
Co nie zmienia faktu, że jest to tylko ustawienie kompilatora i musi być ustawione w pliku konfiguracyjnym na H+ by działało.


Gdybyś pisał w c to nie mówiłbyś "a pchar ma się do stringa jak..." :)
w tym temacie rozmawiamy o delphi. oczywiście, nie napisałem tego w powyższym zdaniu, uznałem to za zbyt oczywiste...


Co nie zmienia faktu, że jest to tylko ustawienie kompilatora i musi być ustawione w pliku konfiguracyjnym na H+ by działało.
H+ jest domyślnie włączone - i tak jest do czasu ustawienia H- ...

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • zsf.htw.pl
  •