Sample Header Ad - 728x90

What kind of database is this schema for, and how can I open it?

3 votes
1 answer
67 views
For sentimental reasons, I'm trying to export my text messages from an old feature phone (LG Cosmos 2, circa 2011) to a flat file (CSV or the like). I was able to successfully transfer the entire contents of the phone's file system to my computer, but the messages are locked in a database format that I do not recognize. I believe the relevant directories and files are as follows:
/DB
  /SchemaFiles
    /Handset
      inboxSchema.dat
  /SysDB
    SMSInboxDB.vol
    SMSInboxDB.vol.log
    SMSInboxDB.vol.sys
I believe the files in SysDB are the actual database volume files, and cannot be interpreted as plain text. However, the inboxSchema.dat file *can* be read as plain text, and contains the following:
# SMS Inbox Schema 
schema SMSInboxSchema
VERSION 0.8//SMSIN_MSG_CHARLEN

table Inbox maxrecord = 300
{
	U, SYNC_OFF, SMSIN_INBOXINDEX,			1100,	USHORT,		INDEX_KEY_ON,	ON;		# smsInboxIndex => Primary Key
	U, SYNC_OFF, SMSIN_INBOXID,				1101,	ULONG,		INDEX_KEY_OFF,	ON;		# smsInboxId 
	U, SYNC_OFF, SMSIN_MSGID,				1102,	USHORT,		INDEX_KEY_OFF,	ON;		# smsMsgID
	U, SYNC_OFF, SMSIN_CATEGORY,			1103,	BYTE,		INDEX_KEY_OFF,	ON;		# smsCategory
	U, SYNC_OFF, SMSIN_SYSTEMTIME,			1104,	ULONG,		INDEX_KEY_ON,	ON;		# smsSystemTime => Soring Key
	U, SYNC_OFF, SMSIN_MCTIME,				1105,	DATE,		INDEX_KEY_OFF,	ON;		# smsMCTimt
	U, SYNC_OFF, SMSIN_BINMCTIME,			1106,	ULONG,		INDEX_KEY_OFF,	ON;		# smsBinMCTime
	U, SYNC_OFF, SMSIN_READFLAG,			1107,	BYTE,		INDEX_KEY_OFF,	ON;		# smsReadflag
	U, SYNC_OFF, SMSIN_LOCKFLAG,			1108,	BYTE,		INDEX_KEY_OFF,	ON;		# smsLockflag
	U, SYNC_OFF, SMSIN_DUPLICATEFLAG,		1109,	BYTE,		INDEX_KEY_OFF,	ON;		# smsDuplicateflag
	U, SYNC_OFF, SMSIN_PRIORITYFLAG,		1110,	BYTE,		INDEX_KEY_OFF,	ON;		# smsPriorityflag
	U, SYNC_OFF, SMSIN_PRIVACYFLAG,			1111,	BYTE,		INDEX_KEY_OFF,	ON;		# smsPrivacyflag
	U, SYNC_OFF, SMSIN_EMSUDHPRESENT,		1112,	BYTE,		INDEX_KEY_OFF,	ON;		# smssmsEMSUdhPresent
	U, SYNC_OFF, SMSIN_MSGENCODINGTYPE,		1113,	BYTE,		INDEX_KEY_OFF,	ON;		# smsMsgEncodingType
	U, SYNC_OFF, SMSIN_NUMOFSEGMENTS,		1114,	BYTE,		INDEX_KEY_OFF,	ON;		# smsNumOfSegments
	U, SYNC_OFF, SMSIN_TITLEMESSAGE,		1115,	STRING(301),	INDEX_KEY_OFF,	ON;		# smsTitleMessage
	U, SYNC_OFF, SMSIN_NUMOFVOICEMAILS,		1116,	BYTE,		INDEX_KEY_OFF,	ON;		# smsNumOfVoicemails
	U, SYNC_OFF, SMSIN_EMSCTRLDATA,			1117,	BYTE,		INDEX_KEY_OFF,	ON;		# smsEMSCtrlData
	U, SYNC_OFF, SMSIN_EMSCONCATREFRENCE,	1118,	INT,		INDEX_KEY_OFF,	ON;		# smsEMSConcatRefrence
	U, SYNC_OFF, SMSIN_EMSCONCATSTATUS,		1119,	BYTE,		INDEX_KEY_OFF,	ON;		# smsEMSConcatStatus
	U, SYNC_OFF, SMSIN_CBADDRESS,			1120,	STRING(49),	INDEX_KEY_OFF,	ON;		# smsAddress
	U, SYNC_OFF, SMSIN_CBADDRESSLEN,		1121,	BYTE,		INDEX_KEY_OFF,	ON;		# smsAddress_len
	U, SYNC_OFF, SMSIN_FRADDRESS,			1122,	STRING(49),	INDEX_KEY_ON,	ON;		# smsAddress
	U, SYNC_OFF, SMSIN_FRADDRESSLEN,		1123,	BYTE,		INDEX_KEY_OFF,	ON;		# smsAddress_len
	U, SYNC_OFF, SMSIN_FRINTRIMEMAIL,		1124,	BYTE,		INDEX_KEY_OFF,	ON;		# smsIntrimEmail
	U, SYNC_OFF, SMSIN_FRNAME,				1125,	STRING(33),	INDEX_KEY_OFF,	ON;		# smsName
	U, SYNC_OFF, SMSIN_FRPBMATCHICON,		1126,	BYTE,		INDEX_KEY_OFF,	ON;		# smsPBMatchIcon
	U, SYNC_OFF, SMSIN_FRPBID,				1127,	USHORT,		INDEX_KEY_ON,	ON;		# smsPBMatchFilePos
	U, SYNC_OFF, SMSIN_SORTKEY,				1129,	STRING(49),		INDEX_KEY_OFF,	ON;		# for name/number sorting
	U, SYNC_OFF, SMSIN_SORTTIME,			1130,	ULONG,		INDEX_KEY_OFF,	ON;		# for time sorting in desc
}
multikey Inbox
{
	NORMALVALUE: SMSIN_SORTKEY, SMSIN_SYSTEMTIME;
	NORMALVALUE: SMSIN_SORTKEY, SMSIN_SORTTIME;
}

table InboxUserData maxrecord = 6000, maxviewsize = 20
{
	U, SYNC_OFF, SMSIN_INBOXINDEX,			1100,	USHORT,		INDEX_KEY_OFF,	ON;		# smsInboxIndex
	U, SYNC_OFF, SMSIN_SEGINDEX,			1140,	BYTE,		INDEX_KEY_OFF,	ON;		# smsSegIndex
	U, SYNC_OFF, SMSIN_MSG,				1141,	BINARY(220),	INDEX_KEY_OFF,	ON;		# smsMsgLen, smsMsg
	U, SYNC_OFF, SMSIN_MSG_CHARLEN,			1142,	BYTE,		INDEX_KEY_OFF,	ON;		# userdataCharLen(before encoding)
}
multikey InboxUserData
{
	NORMALVALUE:SMSIN_INBOXINDEX, SMSIN_SEGINDEX;
}

table CMAS maxrecord = 100
{
	U, SYNC_OFF, SMSCMAS_INBOXINDEX,		1170,	USHORT,		INDEX_KEY_ON,	ON;		# SMSCMASboxIndex => Primary Key
	U, SYNC_OFF, SMSCMAS_INBOXID,			1171,	ULONG,		INDEX_KEY_OFF,	ON;		# smsInboxId 
	U, SYNC_OFF, SMSCMAS_MSGID,			1172,	USHORT,		INDEX_KEY_OFF,	ON;		# smsMsgID
	U, SYNC_OFF, SMSCMAS_CATEGORY,			1173,	BYTE,		INDEX_KEY_OFF,	ON;		# smsCategory
	U, SYNC_OFF, SMSCMAS_SYSTEMTIME,		1174,	ULONG,		INDEX_KEY_ON,	ON;		# smsSystemTime => Soring Key
	U, SYNC_OFF, SMSCMAS_MCTIME,			1175,	DATE,		INDEX_KEY_OFF,	ON;		# smsMCTimt
	U, SYNC_OFF, SMSCMAS_BINMCTIME,			1176,	ULONG,		INDEX_KEY_OFF,	ON;		# smsBinMCTime
	U, SYNC_OFF, SMSCMAS_READFLAG,			1177,	BYTE,		INDEX_KEY_OFF,	ON;		# smsReadflag
	U, SYNC_OFF, SMSCMAS_LOCKFLAG,			1178,	BYTE,		INDEX_KEY_OFF,	ON;		# smsLockflag
	U, SYNC_OFF, SMSCMAS_DUPLICATEFLAG,		1179,	BYTE,		INDEX_KEY_OFF,	ON;		# smsDuplicateflag
	U, SYNC_OFF, SMSCMAS_PRIORITYFLAG,		1180,	BYTE,		INDEX_KEY_OFF,	ON;		# smsPriorityflag
	U, SYNC_OFF, SMSCMAS_PRIVACYFLAG,		1181,	BYTE,		INDEX_KEY_OFF,	ON;		# smsPrivacyflag
	U, SYNC_OFF, SMSCMAS_MSGENCODINGTYPE,		1182,	BYTE,		INDEX_KEY_OFF,	ON;		# smsMsgEncodingType
	U, SYNC_OFF, SMSCMAS_MSG_CHAR,			1183,	BINARY(220),	INDEX_KEY_OFF,	ON;		# smsCMASMessage
	U, SYNC_OFF, SMSCMAS_MSG_CHAR_LEN,		1184,	BYTE,		INDEX_KEY_OFF,	ON;		# smsCMASMessageLength
	U, SYNC_OFF, SMSCMAS_FRADDRESS,			1185,	STRING(49),	INDEX_KEY_ON,	ON;		# smsAddress
	U, SYNC_OFF, SMSCMAS_FRADDRESSLEN,		1186,	BYTE,		INDEX_KEY_OFF,	ON;		# smsAddress_len
	U, SYNC_OFF, SMSCMAS_SORTKEY,			1187,	STRING(49),	INDEX_KEY_OFF,	ON;		# for name/number sorting
	U, SYNC_OFF, SMSCMAS_SORTTIME,			1188,	ULONG,		INDEX_KEY_OFF,	ON;		# for time sorting in desc
	U, SYNC_OFF, SMSCMAS_SRVC_CATEGORY,		1189,	USHORT,		INDEX_KEY_OFF,	ON;		# broadcast service category
	U, SYNC_OFF, SMSCMAS_CMAS_RECORD,		1190,	ULONG,		INDEX_KEY_OFF,	ON;		# CMAE Record 01 data(Category, Urgency, ...)
}
multikey CMAS
{
	NORMALVALUE: SMSCMAS_SORTKEY, SMSCMAS_SYSTEMTIME;
	NORMALVALUE: SMSCMAS_SORTKEY, SMSCMAS_SORTTIME;
}

database SMSInboxDB;
What kind of RDBMS is this schema for? And, is there a publicly available tool that will let me open and export the contents of the volumes?
Asked by alexw (192 rep)
Jun 17, 2019, 07:03 PM
Last activity: Jun 18, 2019, 06:21 AM