jmdict: store glossary type in different table
This commit is contained in:
@@ -108,7 +108,6 @@ class Glossary extends SQLWritable {
|
||||
Map<String, Object?> get sqlValue => {
|
||||
// 'language': language,
|
||||
'phrase': phrase,
|
||||
'type': type,
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
@@ -172,6 +172,14 @@ Future<void> seedJMDictData(List<Entry> entries, Database db) async {
|
||||
JMdictTableNames.senseGlossary,
|
||||
g.sqlValue..addAll({'senseId': s.senseId}),
|
||||
);
|
||||
|
||||
if (g.type != null) {
|
||||
b.insert(JMdictTableNames.senseGlossaryType, {
|
||||
'senseId': s.senseId,
|
||||
'phrase': g.phrase,
|
||||
'type': g.type!,
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -11,6 +11,7 @@ abstract class JMdictTableNames {
|
||||
static const String senseDialect = 'JMdict_SenseDialect';
|
||||
static const String senseField = 'JMdict_SenseField';
|
||||
static const String senseGlossary = 'JMdict_SenseGlossary';
|
||||
static const String senseGlossaryType = 'JMdict_SenseGlossaryType';
|
||||
static const String senseInfo = 'JMdict_SenseInfo';
|
||||
static const String senseMisc = 'JMdict_SenseMisc';
|
||||
static const String sensePOS = 'JMdict_SensePOS';
|
||||
@@ -33,6 +34,7 @@ abstract class JMdictTableNames {
|
||||
senseDialect,
|
||||
senseField,
|
||||
senseGlossary,
|
||||
senseGlossaryType,
|
||||
senseInfo,
|
||||
senseMisc,
|
||||
sensePOS,
|
||||
|
||||
@@ -225,13 +225,20 @@ CREATE TABLE "JMdict_SenseGlossary" (
|
||||
"senseId" INTEGER NOT NULL REFERENCES "JMdict_Sense"("senseId"),
|
||||
"phrase" TEXT NOT NULL,
|
||||
-- "language" CHAR(3) NOT NULL DEFAULT "eng",
|
||||
"type" TEXT,
|
||||
-- PRIMARY KEY ("senseId", "language", "phrase")
|
||||
PRIMARY KEY ("senseId", "phrase")
|
||||
) WITHOUT ROWID;
|
||||
|
||||
CREATE INDEX "JMdict_SenseGlossary_byPhrase" ON JMdict_SenseGlossary("phrase");
|
||||
|
||||
CREATE TABLE "JMdict_SenseGlossaryType" (
|
||||
"senseId" INTEGER NOT NULL REFERENCES "JMdict_Sense"("senseId"),
|
||||
"phrase" TEXT NOT NULL,
|
||||
"type" TEXT NOT NULL,
|
||||
PRIMARY KEY ("senseId", "phrase", "type"),
|
||||
FOREIGN KEY ("senseId", "phrase") REFERENCES "JMdict_SenseGlossary"("senseId", "phrase")
|
||||
) WITHOUT ROWID;
|
||||
|
||||
CREATE TABLE "JMdict_SenseInfo" (
|
||||
"senseId" INTEGER NOT NULL REFERENCES "JMdict_Sense"("senseId"),
|
||||
"info" TEXT NOT NULL,
|
||||
|
||||
Reference in New Issue
Block a user