Changeset: 92ca9a7f02c2 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=92ca9a7f02c2
Modified Files:
monetdb5/extras/rdf/rdfschema.c
sql/backends/monet5/sql_rdf.c
Branch: rdf
Log Message:
Create references from mvTable to its corresponding columns
diffs (75 lines):
diff --git a/monetdb5/extras/rdf/rdfschema.c b/monetdb5/extras/rdf/rdfschema.c
--- a/monetdb5/extras/rdf/rdfschema.c
+++ b/monetdb5/extras/rdf/rdfschema.c
@@ -9812,6 +9812,7 @@ RDFextractCSwithTypes(int *ret, bat *sba
#endif
/*Run merging for few times to get good parameters*/
+ if(0)
{
int i = 0;
int numRun = 10;
@@ -9842,7 +9843,8 @@ RDFextractCSwithTypes(int *ret, bat *sba
free(pscores);
}
-
+
+ simTfidfThreshold = 0.65;
printf("The final simTfidfThreshold is %f\n",simTfidfThreshold);
// Create label per freqCS
diff --git a/sql/backends/monet5/sql_rdf.c b/sql/backends/monet5/sql_rdf.c
--- a/sql/backends/monet5/sql_rdf.c
+++ b/sql/backends/monet5/sql_rdf.c
@@ -593,7 +593,7 @@ void getMvTblSQLname(char *tmpmvtbname,
static
void addPKandFKs(CStableStat* cstablestat, CSPropTypes *csPropTypes, str
schema, BATiter mapi, BAT *mbat){
- FILE *fout;
+ FILE *fout, *foutPK, *foutMV;
char filename[100];
int i, j;
char fromTbl[100];
@@ -606,14 +606,28 @@ void addPKandFKs(CStableStat* cstablesta
strcpy(filename, "fkCreate.sql");
fout = fopen(filename, "wt");
+ foutPK = fopen("pkCreate.sql","wt");
+ foutMV = fopen("mvRefCreate.sql","wt");
- //Add PKs to all subject columns
for (i = 0; i < cstablestat->numTables; i++){
- getTblSQLname(toTbl, i, 0, cstablestat, mapi, mbat);
- fprintf(fout, "ALTER TABLE %s.\"%s\" ADD PRIMARY KEY
(subject);\n",schema,toTbl);
+
+ //Add PKs to all subject columns
+ getTblSQLname(fromTbl, i, 0, cstablestat, mapi, mbat);
+ fprintf(foutPK, "ALTER TABLE %s.\"%s\" ADD PRIMARY KEY
(subject);\n",schema,fromTbl);
+
+ //Add unique key constraint and FKs between MVTable and its
corresponding column
+ //in the default table
+ for (j = 0; j < cstablestat->numPropPerTable[i]; j++){
+ if (cstablestat->lstcstable[i].lstMVTables[j].numCol !=
0){ //MVColumn
+ getColSQLname(fromTblCol, i, j, -1,
cstablestat, mapi, mbat);
+ getMvTblSQLname(mvTbl, i, j, cstablestat, mapi,
mbat);
+ fprintf(foutMV, "ALTER TABLE %s.\"%s\" ADD
UNIQUE (\"%s\");\n",schema,fromTbl,fromTblCol);
+ fprintf(foutMV, "ALTER TABLE %s.\"%s\" ADD
FOREIGN KEY (\"mvKey\") REFERENCES %s.\"%s\" (\"%s\");\n",schema, mvTbl,
schema, fromTbl,fromTblCol);
+
+ }
+ }
}
-
for (i = 0; i < cstablestat->numTables; i++){
for(j = 0; j < csPropTypes[i].numProp; j++){
if (csPropTypes[i].lstPropTypes[j].defColIdx == -1)
continue;
@@ -646,6 +660,8 @@ void addPKandFKs(CStableStat* cstablesta
}
}
fclose(fout);
+ fclose(foutPK);
+ fclose(foutMV);
}
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list