為什麼選擇萊瑪?
Trusted by Fortune 500 companies
Raima RDM已證明可以滿足對高數據完整性的嚴格要求。即使在某些最殘酷的測試情況下,我們也已經實現了滿足100%數據完整性的要求。
Rodney Spruell
Adva Optical Networking

RDM是一個容易選擇的選擇,因為它提供了目標平台上所需的所有功能。 Raima一直表現出出色的合作來滿足我們的所有業務需求,包括為數據庫提供源代碼。
Spokesperson
Boeing

我們選擇Raima的RDM是因為它成熟,可靠並且專為嵌入式應用而設計。此外,我們的數據關係非常複雜,RDM獨特地能夠對這些關係進行建模而不會影響性能。
R&D Manager
Nokia

Raima RDM已證明可以滿足對高數據完整性的嚴格要求。即使在某些最殘酷的測試情況下,我們也已經實現了滿足100%數據完整性的要求。
Rodney Spruell
Adva Optical Networking

RDM是一個容易選擇的選擇,因為它提供了目標平台上所需的所有功能。 Raima一直表現出出色的合作來滿足我們的所有業務需求,包括為數據庫提供源代碼。
Spokesperson
Boeing

我們選擇Raima的RDM是因為它成熟,可靠並且專為嵌入式應用而設計。此外,我們的數據關係非常複雜,RDM獨特地能夠對這些關係進行建模而不會影響性能。
R&D Manager
Nokia






What we do
Raima數據庫管理器
Develop more powerful applications for less with the most flexible embedded database on C and C++.
Professional services
Access on-demand data management expertise from a team with over 30 years of experience.
Maintenance & support plans
Make your database unstoppable with dedicated 24/7 customer support.
產業領域
Data for your industry

Energy

Aerospace & Defense

汽車行業

衛生保健

工業自動化
Use Cases
Fast, reliable data management
Our APIs are simple, easy to use, and quick to implement. See for yourself.
RDM_CURSOR cursor;
INFO infoRead; /* Row buffer */
rdm_dbAllocCursor (db, &cursor);
rdm_dbGetRows (db, TABLE_INFO, &cursor);
rdm_cursorMoveToFirst (cursor);
rdm_cursorReadRow ( cursor, &infoRead, sizeof (infoRead), NULL);
printf ("%s\n", infoRead.mychar);
rdm_cursorFree (cursor);
INFO infoInserted; /* Row buffer */
rdm_dbStartUpdate (db, tables, RDM_LEN (tables), NULL, 0, NULL);
strcpy (infoInserted.mychar, "Hello World! - using the embedded TFS");
rdm_dbInsertRow ( db, TABLE_INFO, &infoInserted, sizeof (infoInserted), NULL);
rdm_dbEnd (db);
rdm_dbEndRollback (db);
db.StartRead (tablesToLock, RDM_LEN (tablesToLock));
cursor = db.Get_rtree_table_RowsBy_rect (boundingBox, type);
cursor.MoveToFirst ();
while (cursor.GetStatus () == CURSOR_AT_ROW)
{
printCurrentRtreeTableRow (cursor);
cursor.MoveToNext ();
}
db.End ();
Insert
transaction ,
stats <60, STATS_MINUTES,
split ,
stats <60, STATS_HOURS,
split ,
stats <24, STATS_DAYS,
insert_row >>>>>>> ts;
RDM_RETCODE rc = ts.init (db);
for (int hour = 0; hour < 72 && rc == sOKAY; hour++)
{
rc = ts.begin ();
for (uint64_t time_stamp = hour * 60 * 60; rc == sOKAY && time_stamp < (hour + 1) * 60 * 60; time_stamp++)
{
const double tau = 6.283185307179586;
const double signal = sin (tau * time_stamp / 23.45);
MEASUREMENT_SECONDS measurement = {time_stamp, signal};
rc = ts.put_value (&measurement);
}
}
rc = ts.end ();
準備開始了嗎?
Try Raima Database Manager for free today and see how screaming fast data management can get you to market faster and under budget.