535 |
|
{ISQLParams} |
536 |
|
function getCount: integer; |
537 |
|
function getSQLParam(index: integer): ISQLParam; |
538 |
< |
function ByName(Idx: AnsiString): ISQLParam ; |
538 |
> |
function ByName(Idx: AnsiString): ISQLParam ; virtual; |
539 |
|
function GetModified: Boolean; |
540 |
|
function GetHasCaseSensitiveParams: Boolean; |
541 |
|
function GetStatement: IStatement; |
560 |
|
constructor Create(aResults: TSQLDataArea); |
561 |
|
{IResults} |
562 |
|
function getCount: integer; |
563 |
< |
function ByName(Idx: AnsiString): ISQLData; |
563 |
> |
function ByName(Idx: AnsiString): ISQLData; virtual; |
564 |
|
function getSQLData(index: integer): ISQLData; |
565 |
|
procedure GetData(index: integer; var IsNull:boolean; var len: short; var data: PByte); |
566 |
|
function GetStatement: IStatement; |
870 |
|
if SQLType = SQL_BLOB then |
871 |
|
SetMetaSize(GetAttachment.GetInlineBlobLimit); |
872 |
|
if CanChangeMetaData then |
873 |
< |
SQLType := GetDefaultTextSQLType |
874 |
< |
else |
875 |
< |
if Length(aValue) > DataLength then |
876 |
< |
IBError(ibxeStringOverflow,[Length(aValue),DataLength]); |
873 |
> |
SQLType := GetDefaultTextSQLType; |
874 |
|
Scale := 0; |
875 |
|
if (SQLType <> SQL_VARYING) and (SQLType <> SQL_TEXT) then |
876 |
|
IBError(ibxeUnableTosetaTextType,[Index,Name,TSQLDataItem.GetSQLTypeName(SQLType)]); |
877 |
+ |
if not CanChangeMetaData and (Length(aValue) > GetSize) then |
878 |
+ |
IBError(ibxeStringOverflow,[Length(aValue),DataLength]); |
879 |
|
SetSQLData(PByte(PAnsiChar(FVarString)),Length(aValue)); |
880 |
|
end; |
881 |
|
|