-
Добрый день, такой код:
q_w := TAdoQuery.Create(self); q_w.ConnectionString := 'xxx';
q_w.SQL.Add('SELECT idt FROM table'); q_w.Open;
q_w.First; ShowMessage(q_w.FieldByName('idt').AsString);
Возвращает idt в фигурных скобках: '{39E04604-E77A-4BA7-B537-008CE9E424E5}'
Как-нить избавиться от этих фигурных скобок на уровне запроса или компонента query можно?
Turbo Delphi, MSSQL 2008
-
> Как-нить избавиться от этих фигурных скобок на уровне запроса > или компонента query можно?
нет.
А зачем???
-
жаль. У меня этот ID лежит в другой базе (Oracle) без этих скобок, и были проблемы в сравнении его. Ну что ж, будем обрезать их прямо в коде.
Спасибо!
-
если это TGuidField, то можно AsGuid, а потом уже работать как с TGUID
-
> жаль. У меня этот ID лежит в другой базе (Oracle) без этих > скобок, и были проблемы в сравнении его.
А не надо его сравнивать как строку. Это слишком расточительно. Сравнивай как GUID, и будет тебе щщастье.
-
В оракле нет полей типа GUID, а мне нужно сравнить именно с тем полем, которое в таблице оракловой базы
-
> В оракле нет полей типа GUID не может такого быть... в шоке. но даже в этом случае можно заменить на что то типа - binary(16) или varbinary(16).
-
> В оракле нет полей типа GUID,
Не может такого быть. Не верю. А если и так, то это очередное подтверждение полной ацтойности Оракла. :)
-
> В оракле нет полей типа GUID
типа нет, но есть SYS_GUID generates and returns a globally unique identifier (RAW value) made up of 16 bytes. вообще d оракле гуиды употребляются очень активно внутренне взять хотя бы те же OID
|