Chcę poznać różnicę między następującymi dwie instrukcje dotyczące zbiorów danych w delphi.Jaka jest różnica między AsInteger i Value w Delphi?
dsMyDataSet.ParamByName('ID').AsInteger := 1122; //If ID is integer
dsMyDataSet.ParamByName('ID').AsString := '1122'; //If ID is string
i
dsMyDataSet.ParamByName('ID').Value := 1122; //ID is string or integer
te oświadczenia nosić takie samo znaczenie? Czy "wartość" niejawnie konwertuje liczbę całkowitą na ciąg? Właściwość
@nkp Proszę nie brać pod uwagę tego, co napisałem. To było nieprawidłowe. –
ok david, a co z moimi wątpliwościami: W moim kodzie, w wielu miejscach dsMyDataSet.ParamByName ("ID"). Wartość: = 1122; jest napisane. Jeśli Ctrl + kliknięcie wartości, przeniesie mnie do właściwości "Właściwość Wartość: AnsiString odczytać GetAsAnsiString napisać SetAsAnsiString;" który jest zapisany w pliku Data.DB.pas. Ta właściwość zwraca AnsiString. Teraz, jeśli napiszę instrukcję taką jak "dsMyDataSet.ParamByName (" ID "). Wartość: = myString". Dostanę ostrzeżenie kompilatora, że niejawnie zakrył ciąg do ansistrowania, co może spowodować utratę danych. Jak mam obchodzić się z tym ostrzeżeniem? –
@nkp, po prostu typecast do AnsiString, aby usunąć ostrzeżenie. AnsiString ("myString"). –