powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Нужен интерфейс к Cache для C++
47 сообщений из 47, показаны все 2 страниц
Нужен интерфейс к Cache для C++
    #37943305
dlazarev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день,

Существует таблица Nameserv, у нее в поле Addr хранится структура в формате %Library.Binary

Сама структура состоит из
Код: plaintext
1.
unsigned char flag

и
Код: plaintext
1.
char address[14]



Мне нужно "вытащить" запись из таблицы по полю Addr, я знаю, что лучше это делать по каждому полю, т.е.
Код: sql
1.
SELECT * WHERE Addr.flag = '...' AND Addr.address = '...'



Подскажите пожалуйста интерфейс C++ к Cache, который поддерживает выборку структурированных объектов.
...
Рейтинг: 0 / 0
Нужен интерфейс к Cache для C++
    #37943817
Фотография П.С.М.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dlazarev,

Вы хоть версию Cache скажите. Для начала...
...
Рейтинг: 0 / 0
Нужен интерфейс к Cache для C++
    #37944450
dlazarev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
П.С.М.,

Версия 2009.1.0.446.0

Проблема следующая:

В коде на C++ есть структурка

Код: plaintext
1.
2.
3.
4.
struct Address{
unsigned char flag;
char address[14];
};



Эта структура записывается в поле Addr в формате %Library.Binary

Мне нужно "вытащить" запись из таблицы по полю Addr (предполагаю, что можно это как-то сделать по каждому члену, т.е.

Код: sql
1.
[src]SELECT * WHERE Addr.flag = '...' AND Addr.address = '...'

[/SRC]

Подскажите, пожалуйста, как это сделать или в каком направлении копать
...
Рейтинг: 0 / 0
Нужен интерфейс к Cache для C++
    #37944761
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dlazarevпредполагаю, что можно это как-то сделать по каждому члену, т.е.
Код: sql
1.
[src]SELECT * WHERE Addr.flag = '...' AND Addr.address = '...'

[/SRC]
Такой синтаксис применяется к полям типа "другой класс"... Т.е. это не твой случай...

А как в глобал записалась твоя "сишная структура"? Можешь посмотреть?
...
Рейтинг: 0 / 0
Нужен интерфейс к Cache для C++
    #37944778
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dlazarevЭта структура записывается в поле Addr в формате %Library.Binary
У нас это называется "тип поля/свойства"...
...
Рейтинг: 0 / 0
Нужен интерфейс к Cache для C++
    #37944820
dlazarev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
krvsa,

Она записывалась через ODBC,

Код: plaintext
1.
2.
3.
rc = SQLBindParameter(*hstmt, i++, SQL_PARAM_INPUT, SQL_C_BINARY,
			SQL_C_BINARY, NBosa_cMsgDbAddrLen, 0, (void *)&(DbHandle->row.nsrow.NSAddr), 
			NBosa_cMsgDbAddrLen, &(DbHandle->row.nsrow.AmtNSAddrLen));



Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
// Install the values for the Addr & Flags
	DbHandle->row.nsrow.NSAddr				= *addr;
	DbHandle->row.nsrow.NSFlags			= flags;

// Create the SQL statement with the passed SiteName
_stprintf( sql_buffer, _T("UPDATE ccms.NBNSNameserv SET Addr=?, Flags=? WHERE Sitename ='%s'"), siteName ) ;

// Convert the UNICODE SQL string into MBCS string before sending to the SQL Server
NBsys_ODBCParmConvert( sqlstr, sql_buffer, sizeof( sqlstr ) ) ;

// Update Anything that matches the passed sitename.
rc = SQLExecDirect(DbHandle->hstmt, NBsys_ODBCText(sqlstr) ,  SQL_NTS);
...
Рейтинг: 0 / 0
Нужен интерфейс к Cache для C++
    #37944842
dlazarev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
krvsa,

т.е.
Код: plaintext
1.
DbHandle->row.nsrow.NSAddr

привязывается к соответствующему полю Addr, затем загружаем в
Код: plaintext
1.
DbHandle->row.nsrow.NSAddr

структуру, в запросе указываем
Код: sql
1.
SET Addr = ?

и SQLExecDirect как я понимаю подставляет вместо ? нужное представление.
...
Рейтинг: 0 / 0
Нужен интерфейс к Cache для C++
    #37944854
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dlazarevОна записывалась через ODBC
Дык пофиг как она там записывалась...
Ты можешь посмотреть как ноно таки записалось в глобал?

А сам SQL-запрос где делаешь? В Кашее? Или опять в сях?
...
Рейтинг: 0 / 0
Нужен интерфейс к Cache для C++
    #37944867
dlazarev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
krvsa,

авторТы можешь посмотреть как ноно таки записалось в глобал?

Как это посмотреть?

авторА сам SQL-запрос где делаешь? В Кашее? Или опять в сях?

Запрос из сей, я же кинул код
...
Рейтинг: 0 / 0
Нужен интерфейс к Cache для C++
    #37944936
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dlazarevавторТы можешь посмотреть как ноно таки записалось в глобал?
Как это посмотреть?
В редакторе глобалов... У меня он есть.
Если ты не знаешь - таки и не посмотришь...

В тарминале например можно посмотреть... Если знаешь ИД записи и кашейские команды...
Это тебе о чем-то говорит?

dlazarevавторА сам SQL-запрос где делаешь? В Кашее? Или опять в сях?
Запрос из сей, я же кинул код
Тогда вопрос скорее к техподдержке ИС... И звучит он так:
- Как мне посмотреть в С++ значение из вот такого вот класса, которые я записал из С++ вот таким вот макаром

Клас-то хоть тот кто делал?
...
Рейтинг: 0 / 0
Нужен интерфейс к Cache для C++
    #37945057
dlazarev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
krvsa,

авторЕсли ты не знаешь - таки и не посмотришь...

Можно посмотреть через System management portal?

авторКлас-то хоть тот кто делал?

В коде используются функции ODBC, как записать структуру в базу известно (но понятия не имею как это реализовано)
Насколько я знаю, ODBC не поддерживает выборку по структурированному объекту. Во всяком случае, мои попытки сделать по аналогии (читай:
Код: sql
1.
SELECT * WHERE Addr = ?

и т.д.) не увенчались успехом.

Поэтому мой вопрос звучит так: как мне из сей достать запись по полю с бинарным типом?
...
Рейтинг: 0 / 0
Нужен интерфейс к Cache для C++
    #37945072
dlazarev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
dlazarev,

Возможно есть какие-то другие интерфейсы к БД, через которые это можно сделать лекго и просто?
...
Рейтинг: 0 / 0
Нужен интерфейс к Cache для C++
    #37945075
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dlazarevМожно посмотреть через System management portal?
Можно и там... Если сможешь найти конечно...
...
Рейтинг: 0 / 0
Нужен интерфейс к Cache для C++
    #37945080
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dlazarevВозможно есть какие-то другие интерфейсы к БД, через которые это можно сделать лекго и просто?
Кащей это поезд!
Ту нужно все делать максимально просто - тогда он помчится по рельсам быстро. Если начать мудрить - получишь всякие проблемы во всяких "связках" и пр...
...
Рейтинг: 0 / 0
Нужен интерфейс к Cache для C++
    #37945096
dlazarev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
krvsa,

мне подойдет любой способ если он будет работать
...
Рейтинг: 0 / 0
Нужен интерфейс к Cache для C++
    #37945124
dlazarev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
krvsa,

Вообщем относительно этой таблицы там есть 2 глобали: ccms.NBNSNameservD ccms.NBNSNameservI
В ccms.NBNSNameservD:

Код: sql
1.
2.
3.
4.
5.
1:  ^ccms.NBNSNameservD = 1174 
2:  ^ccms.NBNSNameservD(1171) = $lb("",$c(2,0)_"'"_$c(16)_"ˬk"_$c(138,0,0,0,0,0,0,0,0),$c(0,0,0)_" ","","AACC-NCC") 
3:  ^ccms.NBNSNameservD(1172) = $lb("",$c(2,0)_"'"_$c(16)_"À¨k"_$c(134)_"®"_$c(1,15,0)_"hÐs"_$c(0),$c(0,0,0)_"@","","CC62-CORES2") 
4:  ^ccms.NBNSNameservD(1173) = $lb("",$c(2,0)_"'"_$c(16)_"À¨k"_$c(143)_","_$c(5,12,0)_"hÐ"_$c(22,2),$c(0,0,0)_"@","","CC63-CORES1") 
5:  ^ccms.NBNSNameservD(1174) = $lb("",$c(2,0)_"'"_$c(16)_"À¨k"_$c(145)_"Þ"_$c(5,20,0)_"hÐ0"_$c(2),$c(0,0,0)_"@","","CC63-CCMS1") 



Код: sql
1.
2.
3.
4.
5.
В ccms.NBNSNameservI:
1:  ^ccms.NBNSNameservI("NBNSNAMESERVPKEY2"," AACC-NCC",1171) = "" 
2:  ^ccms.NBNSNameservI("NBNSNAMESERVPKEY2"," CC62-CORES2",1172) = "" 
3:  ^ccms.NBNSNameservI("NBNSNAMESERVPKEY2"," CC63-CCMS1",1174) = "" 
4:  ^ccms.NBNSNameservI("NBNSNAMESERVPKEY2"," CC63-CORES1",1173) = "" 



Это то что нужно было найти?
...
Рейтинг: 0 / 0
Нужен интерфейс к Cache для C++
    #37945156
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dlazarevЭто то что нужно было найти?
Да. Молодец!

ccms.NBNSNameservD - данные (их я и хотел посмотреть)
ccms.NBNSNameservI - индексы

Вобщем моё предположение подтвердилось...
С точки зрения Кащея ты никак не сможешь работать с полем типа Binary... Т.е. именно брать из него "свои" поля.

А описание класса ты можешь менять? Т.е. уйти от этого типа (Binary)?
...
Рейтинг: 0 / 0
Нужен интерфейс к Cache для C++
    #37945167
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dlazarev , а что вообще должно было храниться в тех записях? Т.е. "человеческий вид" будет какой у данных? По тем ИД, что ты показал (1171-1174)...
...
Рейтинг: 0 / 0
Нужен интерфейс к Cache для C++
    #37945191
dlazarev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
krvsa,

Код: sql
1.
2.
3.
4.
5.
# ID      Sitename        Addr         Flags        Server 
1 1171  AACC-NCC       '&#192;&#168;k&#138;         <empty>   
2 1172  CC62-CORES2  '&#192;&#168;k&#134;®h&#208;s  @<empty>   
3 1173  CC63-CORES1  '&#192;&#168;k&#143;, h&#208;    @<empty>   
4 1174  CC63-CCMS1   '&#192;&#168;k&#145;&#222;h&#208;0   @<empty> 



В поле Addr по сути хранится представление структуры из unsigned char и char[14]

Менять нельзя, но думаю можно дополнительное поле добавить. Можно как-нибудь из Addr конвертировать данные в дополнительное поле, по которому уже читать?
...
Рейтинг: 0 / 0
Нужен интерфейс к Cache для C++
    #37945891
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dlazarev , т.е. та галиматья и храниться...

А как понять в твоём последнем сообщении где кончается Addr и начинается Flags? Они как-то слитно у тебя нарисованы...

Есть подозрение что в кащее они будут как некий текст храниться. Вот только вопрос как их там разделить.
...
Рейтинг: 0 / 0
Нужен интерфейс к Cache для C++
    #37945893
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dlazarevВ поле Addr по сути хранится представление структуры из unsigned char и char[14]
Мне это ничего не говорит...
...
Рейтинг: 0 / 0
Нужен интерфейс к Cache для C++
    #37945962
Фотография DAiMor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dlazarev,

Вы храните в СУБД сишную структуру и почему то полагаете что СУБД сама догадается что это есть структура и как вам ее можно развернуть, это не так, думаю что вам либо нужно вашу структуру развернуть самим и заполнить в нормальное с точки зрения СУБД хранение, либо обрабытывать ее теми средствами которыми вы туда его сохранили
...
Рейтинг: 0 / 0
Нужен интерфейс к Cache для C++
    #37946025
doublefint
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dlazarev Можно как-нибудь из Addr конвертировать данные в дополнительное поле, по которому уже читать?
можно, если научитесь разбирать формат данных. Например, записать в базу заранее известные данные (Флаг+Адрес), затем получить эти данные в Каше и вывести их через команду zzdump
Код: vbnet
1.
2.
3.
s id='5' //код записи с известным содержимым поля Addr
&sql(Select Addr Into :addr From ccms.NBNSNameservD Where ID=:id)
zzdump addr
...
Рейтинг: 0 / 0
Нужен интерфейс к Cache для C++
    #37946223
Блок А.Н.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А можете выложить кусочек глобала с данными и описание класса?
...
Рейтинг: 0 / 0
Нужен интерфейс к Cache для C++
    #37946257
dlazarev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Блок А.Н.,

Описание класса:

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
Class ccms.NBNSNameserv Extends %Persistent [ ClassType = persistent, DdlAllowed, Owner = UnknownUser, Not ProcedureBlock, SqlRowIdPrivate, SqlTableName = NBNSNameserv, StorageStrategy = "" ]
{

Property Addr As %Library.Binary [ SqlColumnNumber = 3 ];

Property Flags As %Library.Binary [ SqlColumnNumber = 4 ];

Property Sitename As %Library.String(MAXLEN = 30, TRUNCATE = 0) [ Required, SqlColumnNumber = 2 ];

/// DDL Primary Key Specification
Index NBNSNAMESERVPKEY2 On Sitename [ Type = index, Unique ];

Property Server As %Library.Integer;



Глобаль:

Код: sql
1.
2.
3.
4.
5.
1:  ^ccms.NBNSNameservD = 1181 
2:  ^ccms.NBNSNameservD(1178) = $lb("",$c(2,0)_"'"_$c(16)_"&#192;&#168;k"_$c(138,0,0,0,0,0,0,0,0),$c(0,0,0)_" ","","AACC-NCC") 
3:  ^ccms.NBNSNameservD(1179) = $lb("",$c(2,0)_"'"_$c(16)_"&#192;&#168;k"_$c(134)_"®"_$c(1,15,0)_"h&#208;s"_$c(0),$c(0,0,0)_"@","","CC62-CORES2") 
4:  ^ccms.NBNSNameservD(1180) = $lb("",$c(2,0)_"'"_$c(16)_"&#192;&#168;k"_$c(143)_","_$c(5,12,0)_"h&#208;"_$c(22,2),$c(0,0,0)_"@","","CC63-CORES1") 
5:  ^ccms.NBNSNameservD(1181) = $lb("",$c(2,0)_"'"_$c(16)_"&#192;&#168;k"_$c(145)_"&#222;"_$c(5,20,0)_"h&#208;0"_$c(2),$c(0,0,0)_"@","","CC63-CCMS1") 
...
Рейтинг: 0 / 0
Нужен интерфейс к Cache для C++
    #37946279
dlazarev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
krvsa,

авторА как понять в твоём последнем сообщении где кончается Addr и начинается Flags? Они как-то слитно у тебя нарисованы...

Код: sql
1.
2.
3.
4.
5.
# ID      Sitename        Addr                                                    Flags            Server 
1 1171  AACC-NCC       '&#192;&#168;k&#138;                          <empty>          
2 1172  CC62-CORES2  '&#192;&#168;k&#134;®h&#208;s           @<empty>   
3 1173  CC63-CORES1  '&#192;&#168;k&#143;, h&#208;             @<empty>   
4 1174  CC63-CCMS1   '&#192;&#168;k&#145;&#222;h&#208;0    @<empty> 
...
Рейтинг: 0 / 0
Нужен интерфейс к Cache для C++
    #37946616
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dlazarev , ты данным приделай какой-то разделитель чёле... А то так и не понятно что где...
...
Рейтинг: 0 / 0
Нужен интерфейс к Cache для C++
    #37946674
dlazarev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
krvsa,

Код: sql
1.
2.
3.
4.
5.
# ID      Sitename        Addr                                                   
1 1171  AACC-NCC       '&#192;&#168;k&#138;                         
2 1172  CC62-CORES2  '&#192;&#168;k&#134;®h&#208;s       
3 1173  CC63-CORES1  '&#192;&#168;k&#143;, h&#208;         
4 1174  CC63-CCMS1   '&#192;&#168;k&#145;&#222;h&#208;0



Вообщем у CC62-CORES2 Addr 'À¨k†®hÐs
...
Рейтинг: 0 / 0
Нужен интерфейс к Cache для C++
    #37947184
doublefint
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dlazarev, покажите результат команды
zzdump Addr
предварительно получив в переменную Addr значение 'À¨k†®hÐs
...
Рейтинг: 0 / 0
Нужен интерфейс к Cache для C++
    #37947370
dlazarev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
doublefint,

а это где писать, в запросе или в классе?
...
Рейтинг: 0 / 0
Нужен интерфейс к Cache для C++
    #37948541
Фотография П.С.М.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dlazarev, вот это:
Код: sql
1.
zzdump Addr


в терминале Cache.
и как сказал doublefint
doublefint предварительно получив в переменную Addr значение 'À¨k†®hÐs
...
Рейтинг: 0 / 0
Нужен интерфейс к Cache для C++
    #37948568
Фотография П.С.М.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Последовательно выполните эти команды в терминале (в той области, где у вас храняться ваши данные)
Код: sql
1.
Set result=##class(%ResultSet).%New("%DynamicQuery:SQL")


Код: sql
1.
Set sc=result.Prepare("SELECT Addr FROM ccms.NBNSNameserv")


Код: sql
1.
Set sc=result.Execute()


Код: sql
1.
If result.Next(.sc)


Код: sql
1.
Set Addr=result.Data("Addr")


Таким образом в переменную adr получите то значение, которое просил вывести doublefint, а уже затем даете команду:
Код: sql
1.
zzdump Addr
...
Рейтинг: 0 / 0
Нужен интерфейс к Cache для C++
    #37948621
dlazarev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
П.С.М.,

ругается что переменная Addr не определена, как ее определить в терминале?
...
Рейтинг: 0 / 0
Нужен интерфейс к Cache для C++
    #37948671
dlazarev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
П.С.М.,

ошибка в этой строке -
Код: sql
1.
Set Addr=result.Data("Addr")



Может это из-за того, что курсор в терминале
Код: sql
1.
%SYS>

а должен быть другой?
...
Рейтинг: 0 / 0
Нужен интерфейс к Cache для C++
    #37950056
Фотография П.С.М.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dlazarev,

данные то у вас наверняка не в %SYS хранятся.
переход в другую область выполняется командой
Код: sql
1.
zn "имя_нужной_области"
...
Рейтинг: 0 / 0
Нужен интерфейс к Cache для C++
    #37950648
dlazarev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
П.С.М.,

вот такая выдача:

CCMS_CONF>zzdump Addr

0000: 02 00 27 10 C0 A8 6B 8A 00 00 00 00 00 00 00 00 ..'.ˬk.........
...
Рейтинг: 0 / 0
Нужен интерфейс к Cache для C++
    #37950864
doublefint
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dlazarev, смысл того, что пытаемся сделать - получить данные на входе, и посмотреть как они хранятся внутри базы.
zzdump выводит данные побайтно.
Т.е нужно взять данные, содержание которых заранее известно (известно до сохранения), и потом вывести их уже после сохранения.

&sql(Select Addr Into :Addr From Your.Table Where ID=:id) ,где id - идентификатор записи, у которой известно содержимое поля Addr до сохранения.

Другими словами от вас ожидают две строки - данные до, данные после
...
Рейтинг: 0 / 0
Нужен интерфейс к Cache для C++
    #37950874
Фотография П.С.М.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dlazarev,
zzdump addr вы уже делать умееть, а теперь попробуйте сделать по совету doublefint:
doublefintdlazarev Можно как-нибудь из Addr конвертировать данные в дополнительное поле, по которому уже читать?
можно, если научитесь разбирать формат данных. Например, записать в базу заранее известные данные (Флаг+Адрес), затем получить эти данные в Каше и вывести их через команду zzdump
Код: vbnet
1.
2.
3.
s id='5' //код записи с известным содержимым поля Addr
&sql(Select Addr Into :addr From ccms.NBNSNameservD Where ID=:id)
zzdump addr
...
Рейтинг: 0 / 0
Нужен интерфейс к Cache для C++
    #37951039
Alexey Maslov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dlazarev,

похоже на правду?

Код: javascript
1.
2.
USER>s y=$re($re($e(Addr,1,4))_$re($e(Addr,5,8))) w $zu(54,2,y)
192.168.107.138
...
Рейтинг: 0 / 0
Нужен интерфейс к Cache для C++
    #37951076
dlazarev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Alexey Maslov,

адрес верный,

только в структуре он хранится вот так:
...
Рейтинг: 0 / 0
Нужен интерфейс к Cache для C++
    #37951135
Alexey Maslov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dlazarev,

Вам ведь уже почти всё подсказали: опишите два дополнительных (Calculated) поля: txtAddr и txtFlag. Формулу для калькуляции txtAddr см. мой предыдущий пост. Осталось разобраться с флагом. По-видимому, он хранится в 15-том байте, коль скоро первые 8 оказались адресом, а всего на него отведено 14 байт.
...
Рейтинг: 0 / 0
Нужен интерфейс к Cache для C++
    #37951172
dlazarev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Alexey Maslov,

спасибо,

а можно узнать, как эти 8 байт 02 00 27 10 C0 A8 6B 8A превратились в 192.168.107.138, судя по всему они зашифрованы. как вы догадались (плиз словами, я не понимаю каше)?
...
Рейтинг: 0 / 0
Нужен интерфейс к Cache для C++
    #37951216
Фотография ну я
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
USER>w $zhex("C0")
192
USER>w $zhex("A8")
168
USER>w $zhex("6B")
107
USER>w $zhex("8A")
138
...
Рейтинг: 0 / 0
Нужен интерфейс к Cache для C++
    #37951227
dlazarev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ну я,

02 00 27 10

а первые 4 байта нафига?
...
Рейтинг: 0 / 0
Нужен интерфейс к Cache для C++
    #37951542
doublefint
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dlazarev02 00 27 10
а первые 4 байта нафига?
Хм, упорный... А примеры входа-выхода где? :)
...
Рейтинг: 0 / 0
Нужен интерфейс к Cache для C++
    #37954942
Alexey Maslov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну я,

Женя, напиши мне, пожалуйста, на мыло в профиле (рабочая почта сейчас недоступна).
...
Рейтинг: 0 / 0
Нужен интерфейс к Cache для C++
    #37955680
Гость123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
dlazarev,

Когда в одном поле (aka BLOB) хранится куча данных, потом при поиске будет трудно всё это парсить. Я уже молчу про производительность - всегда будет FULL SCAN.

Почему бы вместо %Binary не использовать встраиваемый класс %SerialObject?
Тогда можно будет сделать на каждое поле свой индекс - увеличится скорость поиска - и сами запросы как на запись, так и на чтение примут читабельный вид.
...
Рейтинг: 0 / 0
47 сообщений из 47, показаны все 2 страниц
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Нужен интерфейс к Cache для C++
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]