@kiyeonjeon21/datacontext 0.4.0 → 0.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +10 -0
- package/dist/core/context-service.d.ts +10 -0
- package/dist/core/context-service.d.ts.map +1 -1
- package/dist/core/context-service.js +10 -0
- package/dist/core/context-service.js.map +1 -1
- package/docs/DEMO_SCRIPT.md +371 -40
- package/package.json +1 -1
- package/src/core/context-service.ts +20 -0
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,16 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [0.4.1] - 2026-01-01
|
|
11
|
+
|
|
12
|
+
### Added
|
|
13
|
+
- **Relationships in Knowledge API**: `/api/knowledge` now includes `relationships` array
|
|
14
|
+
- All harvested FK relationships included in knowledge summary
|
|
15
|
+
- VS Code extension can now display relationships in Knowledge panel
|
|
16
|
+
|
|
17
|
+
### Changed
|
|
18
|
+
- `KnowledgeSummary` type now includes `relationships` and `totalRelationships` stat
|
|
19
|
+
|
|
10
20
|
## [0.3.0] - 2025-01-01
|
|
11
21
|
|
|
12
22
|
### Added
|
|
@@ -612,6 +612,15 @@ interface KnowledgeSummary {
|
|
|
612
612
|
category?: string;
|
|
613
613
|
isActive: boolean;
|
|
614
614
|
}>;
|
|
615
|
+
relationships: Array<{
|
|
616
|
+
id: string;
|
|
617
|
+
from: string;
|
|
618
|
+
to: string;
|
|
619
|
+
type: string;
|
|
620
|
+
joinCondition: string;
|
|
621
|
+
cardinality?: string;
|
|
622
|
+
isPreferred: boolean;
|
|
623
|
+
}>;
|
|
615
624
|
stats: {
|
|
616
625
|
totalTables: number;
|
|
617
626
|
totalExamples: number;
|
|
@@ -619,6 +628,7 @@ interface KnowledgeSummary {
|
|
|
619
628
|
verifiedExamples: number;
|
|
620
629
|
activeRules: number;
|
|
621
630
|
totalTerms: number;
|
|
631
|
+
totalRelationships: number;
|
|
622
632
|
};
|
|
623
633
|
}
|
|
624
634
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-service.d.ts","sourceRoot":"","sources":["../../src/core/context-service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAKzD,OAAO,KAAK,EACV,iBAAiB,EACjB,WAAW,EACX,aAAa,EAEb,cAAc,EACd,iBAAiB,EAElB,MAAM,YAAY,CAAC;AAEpB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,OAAO,CAAkB;IACjC,OAAO,CAAC,SAAS,CAAiB;IAClC,OAAO,CAAC,SAAS,CAAkB;IACnC,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,QAAQ,CAAkB;IAClC,OAAO,CAAC,OAAO,CAAmB;IAClC,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,MAAM,CAAoB;gBAEtB,MAAM,EAAE,iBAAiB;IA8CrC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+CG;IACG,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,GAAE,YAAiB,GAAG,OAAO,CAAC,WAAW,CAAC;IAyF1E;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACG,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAIxD;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACH,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG;QAAE,eAAe,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE;IAQ5E;;OAEG;IACG,UAAU,CAAC,MAAM,GAAE,MAAiB,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAI9D;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACG,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,GAAE,MAAiB,GAAG,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;IAoBzG;;OAEG;IACG,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC;IAInC;;OAEG;IACH,YAAY,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM;IASvC;;OAEG;IACG,mBAAmB,CACvB,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAA;KAAO,GAChC,OAAO,CAAC,IAAI,CAAC;IAKhB;;OAEG;IACG,oBAAoB,CACxB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAA;KAAO,GAChC,OAAO,CAAC,IAAI,CAAC;IAKhB;;OAEG;IACG,eAAe,CACnB,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,MAAM,EAAE,EAChB,OAAO,GAAE;QAAE,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,OAAO,CAAA;KAAO,GAC3D,OAAO,CAAC,IAAI,CAAC;IAKhB;;OAEG;IACG,eAAe,CACnB,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,EAAE,GACf,OAAO,CAAC,IAAI,CAAC;IAKhB;;OAEG;IACH,eAAe,IAAI,gBAAgB;
|
|
1
|
+
{"version":3,"file":"context-service.d.ts","sourceRoot":"","sources":["../../src/core/context-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -448,6 +448,15 @@ class DataContextService {
|
|
|
448
448
|
category: t.category,
|
|
449
449
|
isActive: t.isActive,
|
|
450
450
|
})),
|
|
451
|
+
relationships: (data.relationships || []).map((r) => ({
|
|
452
|
+
id: r.id,
|
|
453
|
+
from: `${r.from.schema}.${r.from.table}`,
|
|
454
|
+
to: `${r.to.schema}.${r.to.table}`,
|
|
455
|
+
type: r.relationshipType,
|
|
456
|
+
joinCondition: r.joinCondition,
|
|
457
|
+
cardinality: r.cardinality,
|
|
458
|
+
isPreferred: r.isPreferred ?? false,
|
|
459
|
+
})),
|
|
451
460
|
stats: {
|
|
452
461
|
totalTables: data.tables.length,
|
|
453
462
|
totalExamples: data.queryExamples.length,
|
|
@@ -455,6 +464,7 @@ class DataContextService {
|
|
|
455
464
|
verifiedExamples: data.queryExamples.filter((e) => e.isVerified).length,
|
|
456
465
|
activeRules: data.businessRules.filter((r) => r.isActive !== false).length,
|
|
457
466
|
totalTerms: (data.businessTerms || []).length,
|
|
467
|
+
totalRelationships: (data.relationships || []).length,
|
|
458
468
|
},
|
|
459
469
|
};
|
|
460
470
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-service.js","sourceRoot":"","sources":["../../src/core/context-service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"context-service.js","sourceRoot":"","sources":["../../src/core/context-service.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;;;AAqmCH,4DAEC;AAnmCD,yDAAyD;AACzD,iDAA4D;AAC5D,+CAAuE;AACvE,6CAAwE;AACxE,2DAAyE;AAWzE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,MAAa,kBAAkB;IACrB,OAAO,CAAkB;IACzB,SAAS,CAAiB;IAC1B,SAAS,CAAkB;IAC3B,SAAS,CAAY;IACrB,QAAQ,CAAkB;IAC1B,OAAO,CAAmB;IAC1B,aAAa,CAAgB;IAC7B,MAAM,CAAoB;IAElC,YAAY,MAAyB;QACnC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;QAC9B,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;QAElC,8BAA8B;QAC9B,IAAI,CAAC,SAAS,GAAG,IAAI,8BAAe,CAAC;YACnC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ;YAChC,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,SAAS;YAClC,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO;YAC9B,aAAa,EAAE,MAAM,CAAC,MAAM,CAAC,aAAa,IAAI,EAAE;YAChD,cAAc,EAAE,MAAM,CAAC,MAAM,CAAC,cAAc,IAAI,EAAE;YAClD,aAAa,EAAE,EAAE;YACjB,eAAe,EAAE,EAAE;YACnB,YAAY,EAAE,MAAM,CAAC,MAAM,CAAC,kBAAkB,IAAI,KAAK;SACxD,CAAC,CAAC;QAEH,uBAAuB;QACvB,IAAI,CAAC,SAAS,GAAG,IAAA,8BAAe,EAC9B,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,SAAS,EACd,MAAM,CAAC,UAAU,IAAI;YACnB,eAAe,EAAE,IAAI;YACrB,cAAc,EAAE,IAAI;YACpB,kBAAkB,EAAE,IAAI;YACxB,gBAAgB,EAAE,IAAI;SACvB,CACF,CAAC;QAEF,8BAA8B;QAC9B,IAAI,CAAC,QAAQ,GAAG,IAAA,mCAAqB,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAEtD,+BAA+B;QAC/B,IAAI,CAAC,OAAO,GAAG,IAAA,mCAAsB,EAAC,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;QAEjE,4BAA4B;QAC5B,IAAI,CAAC,aAAa,GAAG,IAAA,uCAAmB,EAAC,IAAI,CAAC,OAAO,EAAE;YACrD,qBAAqB,EAAE,MAAM,CAAC,MAAM,CAAC,uBAAuB,IAAI,MAAM;YACtE,mBAAmB,EAAE,IAAI;SAC1B,CAAC,CAAC;IACL,CAAC;IAED,+DAA+D;IAC/D,kBAAkB;IAClB,+DAA+D;IAE/D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+CG;IACH,KAAK,CAAC,KAAK,CAAC,GAAW,EAAE,UAAwB,EAAE;QACjD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,MAAM,OAAO,GAAiB;YAC5B,eAAe,EAAE,KAAK;YACtB,UAAU,EAAE,CAAC;YACb,kBAAkB,EAAE,KAAK;YACzB,WAAW,EAAE,GAAG;SACjB,CAAC;QAEF,4BAA4B;QAC5B,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC;QAEvD,oBAAoB;QACpB,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QAChD,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,CAAC;YAC1B,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC;YAClC,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;YAEjE,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAEnC,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,UAAU,CAAC,MAAM;gBACxB,WAAW;gBACX,OAAO;aACR,CAAC;QACJ,CAAC;QAED,+BAA+B;QAC/B,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,kBAAkB,EAAE,CAAC;YAC1C,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YAC9D,IAAI,cAAc,CAAC,WAAW,EAAE,CAAC;gBAC/B,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC;gBAClC,OAAO,CAAC,aAAa,GAAG,MAAM,CAAC;gBAC/B,OAAO,CAAC,aAAa,GAAG;oBACtB,IAAI,EAAE,cAAc,CAAC,aAAa;oBAClC,aAAa,EAAE,cAAc,CAAC,wBAAwB;iBACvD,CAAC;gBAEF,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;oBAC5B,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;oBAEnC,OAAO;wBACL,OAAO,EAAE,KAAK;wBACd,KAAK,EAAE,cAAc,CAAC,OAAO;wBAC7B,QAAQ,EAAE,cAAc,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS;wBAC7E,WAAW;wBACX,OAAO;qBACR,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;QAED,qCAAqC;QACrC,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QAEjD,IAAI,CAAC;YACH,gBAAgB;YAChB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YACpD,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;YAE/C,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;YAC/B,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAEnC,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACzB,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,eAAe;gBACf,WAAW;gBACX,OAAO;aACR,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;YAC/C,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAE5E,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAEnC,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,YAAY;gBACnB,eAAe;gBACf,WAAW;gBACX,OAAO;aACR,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACH,KAAK,CAAC,YAAY,CAAC,GAAW;QAC5B,OAAO,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC1C,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACH,cAAc,CAAC,GAAW;QACxB,OAAO,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;IAC5C,CAAC;IAED,+DAA+D;IAC/D,mBAAmB;IACnB,+DAA+D;IAE/D;;OAEG;IACH,KAAK,CAAC,UAAU,CAAC,SAAiB,QAAQ;QACxC,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;IACzC,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACH,KAAK,CAAC,mBAAmB,CAAC,SAAiB,EAAE,SAAiB,QAAQ;QACpE,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QACjE,IAAI,CAAC,SAAS;YAAE,OAAO,IAAI,CAAC;QAE5B,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAC1E,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,yBAAyB,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;QACvE,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;QAElE,OAAO;YACL,GAAG,SAAS;YACZ,mBAAmB,EAAE,WAAW,EAAE,WAAW;YAC7C,kBAAkB,EAAE,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;gBAC3D,IAAI,GAAG,CAAC,WAAW;oBAAE,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,WAAW,CAAC;gBACrD,OAAO,GAAG,CAAC;YACb,CAAC,EAAE,EAA4B,CAAC,IAAI,EAAE;YACtC,aAAa,EAAE,QAAQ;YACvB,aAAa,EAAE,KAAK;SACrB,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,SAAS;QACb,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;IAClC,CAAC;IAED;;OAEG;IACH,YAAY,CAAC,MAAiB;QAC5B,MAAM,SAAS,GAAG,MAAM,IAAI,EAAE,CAAC;QAC/B,OAAO,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;IAChD,CAAC;IAED,+DAA+D;IAC/D,uBAAuB;IACvB,+DAA+D;IAE/D;;OAEG;IACH,KAAK,CAAC,mBAAmB,CACvB,SAAiB,EACjB,WAAmB,EACnB,UAA+B,EAAE;QAEjC,MAAM,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,SAAS,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;QAC1E,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,oBAAoB,CACxB,SAAiB,EACjB,UAAkB,EAClB,WAAmB,EACnB,UAA+B,EAAE;QAEjC,MAAM,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;QACvF,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,eAAe,CACnB,MAAc,EACd,GAAW,EACX,MAAgB,EAChB,UAA0D,EAAE;QAE5D,MAAM,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;QACnE,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,eAAe,CACnB,IAAY,EACZ,WAAmB,EACnB,MAAgB;QAEhB,MAAM,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,IAAI,EAAE,WAAW,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;QACpE,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,eAAe;QACb,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;QAEtC,OAAO;YACL,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAiH,EAAE,EAAE,CAAC,CAAC;gBAC9I,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,MAAM,EAAE,CAAC,CAAC,MAAM;gBAChB,WAAW,EAAE,CAAC,CAAC,WAAW;gBAC1B,OAAO,EAAE,CAAC,CAAC,OAAO;aACnB,CAAC,CAAC;YACH,aAAa,EAAE,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAgG,EAAE,EAAE,CAAC,CAAC;gBAC3I,MAAM,EAAE,CAAC,CAAC,MAAM;gBAChB,GAAG,EAAE,CAAC,CAAC,GAAG;gBACV,MAAM,EAAE,CAAC,CAAC,MAAM;gBAChB,WAAW,EAAE,CAAC,CAAC,WAAW;gBAC1B,UAAU,EAAE,CAAC,CAAC,UAAU;aACzB,CAAC,CAAC;YACH,aAAa,EAAE,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAA6F,EAAE,EAAE,CAAC,CAAC;gBACxI,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,WAAW,EAAE,CAAC,CAAC,WAAW;gBAC1B,MAAM,EAAE,CAAC,CAAC,SAAS,CAAC,MAAM,IAAI,EAAE;gBAChC,QAAQ,EAAE,CAAC,CAAC,QAAQ;aACrB,CAAC,CAAC;YACH,aAAa,EAAE,CAAC,IAAI,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAA6L,EAAE,EAAE,CAAC,CAAC;gBAChP,EAAE,EAAE,CAAC,CAAC,EAAE;gBACR,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,UAAU,EAAE,CAAC,CAAC,UAAU;gBACxB,aAAa,EAAE,CAAC,CAAC,aAAa;gBAC9B,QAAQ,EAAE,CAAC,CAAC,QAAQ,IAAI,EAAE;gBAC1B,SAAS,EAAE,CAAC,CAAC,SAAS;gBACtB,QAAQ,EAAE,CAAC,CAAC,QAAQ;gBACpB,QAAQ,EAAE,CAAC,CAAC,QAAQ;aACrB,CAAC,CAAC;YACH,aAAa,EAAE,CAAC,IAAI,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAA+L,EAAE,EAAE,CAAC,CAAC;gBAClP,EAAE,EAAE,CAAC,CAAC,EAAE;gBACR,IAAI,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE;gBACxC,EAAE,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,MAAM,IAAI,CAAC,CAAC,EAAE,CAAC,KAAK,EAAE;gBAClC,IAAI,EAAE,CAAC,CAAC,gBAAgB;gBACxB,aAAa,EAAE,CAAC,CAAC,aAAa;gBAC9B,WAAW,EAAE,CAAC,CAAC,WAAW;gBAC1B,WAAW,EAAE,CAAC,CAAC,WAAW,IAAI,KAAK;aACpC,CAAC,CAAC;YACH,KAAK,EAAE;gBACL,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM;gBAC/B,aAAa,EAAE,IAAI,CAAC,aAAa,CAAC,MAAM;gBACxC,UAAU,EAAE,IAAI,CAAC,aAAa,CAAC,MAAM;gBACrC,gBAAgB,EAAE,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAA2B,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,MAAM;gBACjG,WAAW,EAAE,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAyB,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,KAAK,CAAC,CAAC,MAAM;gBAClG,UAAU,EAAE,CAAC,IAAI,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC,MAAM;gBAC7C,kBAAkB,EAAE,CAAC,IAAI,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC,MAAM;aACtD;SACF,CAAC;IACJ,CAAC;IAED,+DAA+D;IAC/D,kBAAkB;IAClB,+DAA+D;IAE/D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAgCG;IACH,KAAK,CAAC,OAAO,CAAC,SAAiB,QAAQ;QACrC,OAAO,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;IAChD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,oBAAoB,CAAC,SAAiB,QAAQ;QAMlD,OAAO,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;IAC3C,CAAC;IAED,+DAA+D;IAC/D,kBAAkB;IAClB,+DAA+D;IAE/D;;;;;;;;;;;;;;;OAeG;IACH,gBAAgB;QACd,OAAO,IAAI,CAAC,SAAS,CAAC,gBAAgB,EAAE,CAAC;IAC3C,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,YAAY,CAAC,SAAiB,EAAE,OAAe,EAAE,SAAiB,QAAQ;QACxE,OAAO,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IACjE,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,eAAe;QACb,OAAO,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE,CAAC;IAC1C,CAAC;IAED,+DAA+D;IAC/D,sBAAsB;IACtB,+DAA+D;IAE/D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAyCG;IACH,KAAK,CAAC,cAAc,CAAC,QAAuB;QAC1C,MAAM,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;IAC/C,CAAC;IAED;;OAEG;IACH,gBAAgB;QACd,OAAO,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC;IACvC,CAAC;IAED;;OAEG;IACH,wBAAwB;QACtB,OAAO,IAAI,CAAC,QAAQ,CAAC,wBAAwB,EAAE,CAAC;IAClD,CAAC;IAED,+DAA+D;IAC/D,UAAU;IACV,+DAA+D;IAE/D;;OAEG;IACH,iBAAiB;QACf,OAAO,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;IAC1C,CAAC;IAED;;OAEG;IACH,aAAa;QACX,OAAO,IAAI,CAAC,OAAO,CAAC,oBAAoB,EAAE,CAAC;IAC7C,CAAC;IAED,+DAA+D;IAC/D,4BAA4B;IAC5B,+DAA+D;IAE/D;;OAEG;IACH,gBAAgB;QACd,OAAO,IAAI,CAAC,SAAS,CAAC,gBAAgB,EAAE,CAAC;IAC3C,CAAC;IAED;;OAEG;IACH,iBAAiB,CAAC,KAAa;QAC7B,OAAO,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;IACjD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,eAAe,CACnB,IAAY,EACZ,UAAkB,EAClB,UAKI,EAAE;QAEN,OAAO,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;IACnE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,kBAAkB,CAAC,EAAU;QACjC,OAAO,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC;IAC/C,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,YAAY,CAAC,KAAa;QAO9B,2BAA2B;QAC3B,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;QAE7D,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5B,OAAO;gBACL,KAAK;gBACL,aAAa,EAAE,KAAK;gBACpB,SAAS,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;gBACxC,mBAAmB,EAAE,YAAY;qBAC9B,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC;qBAC5B,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,aAAuB,CAAC;gBACtC,MAAM,EAAE,OAAO;aAChB,CAAC;QACJ,CAAC;QAED,kCAAkC;QAClC,MAAM,EAAE,cAAc,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;QAE9E,IAAI,CAAC,cAAc,EAAE,EAAE,CAAC;YACtB,OAAO;gBACL,KAAK;gBACL,aAAa,EAAE,KAAK;gBACpB,SAAS,EAAE,EAAE;gBACb,mBAAmB,EAAE,EAAE;gBACvB,MAAM,EAAE,OAAO;aAChB,CAAC;QACJ,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,CAAC;QAC9C,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,OAAO;gBACL,KAAK;gBACL,aAAa,EAAE,KAAK;gBACpB,SAAS,EAAE,EAAE;gBACb,mBAAmB,EAAE,EAAE;gBACvB,MAAM,EAAE,OAAO;aAChB,CAAC;QACJ,CAAC;QAED,MAAM,GAAG,GAAG,gBAAgB,EAAE,CAAC;QAC/B,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,wBAAwB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAEhE,OAAO;YACL,KAAK;YACL,aAAa,EAAE,MAAM,CAAC,aAAa;YACnC,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,mBAAmB,EAAE,MAAM,CAAC,mBAAmB;YAC/C,MAAM,EAAE,IAAI;SACb,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;;;;;OAgBG;IACH,KAAK,CAAC,gBAAgB,CAAC,QAAgB;QACrC,MAAM,EAAE,cAAc,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;QAE9E,IAAI,CAAC,cAAc,EAAE,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,uGAAuG,CAAC,CAAC;QAC3H,CAAC;QAED,qBAAqB;QACrB,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;QAClD,MAAM,aAAa,GAAG;YACpB,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACnD,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;oBAC/B,IAAI,EAAE,CAAC,CAAC,IAAI;oBACZ,IAAI,EAAE,CAAC,CAAC,QAAQ;oBAChB,QAAQ,EAAE,CAAC,CAAC,UAAU;iBACvB,CAAC,CAAC;aACJ,CAAC,CAAC;YACH,aAAa,EAAE,IAAI,CAAC,SAAS,CAAC,gBAAgB,EAAE;SACjD,CAAC;QAEF,MAAM,GAAG,GAAG,gBAAgB,EAAE,CAAC;QAC/B,MAAM,cAAc,GAAG,MAAM,GAAG,CAAC,gBAAgB,CAC/C,QAAQ,EACR,aAAa,EACb,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,CAC/B,CAAC;QAEF,yBAAyB;QACzB,OAAO,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC;IACzD,CAAC;IAED,+DAA+D;IAC/D,YAAY;IACZ,+DAA+D;IAE/D;;;;;;;;;;;;;;;;;;;OAmBG;IACH,KAAK,CAAC,UAAU;QACd,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;QAC7B,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;IAC9B,CAAC;IAED;;;;;;;;;;;;;;;;;;OAkBG;IACH,KAAK,CAAC,QAAQ;QACZ,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;QAC5B,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QAC1B,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;IAClC,CAAC;IAED,+DAA+D;IAC/D,iBAAiB;IACjB,+DAA+D;IAE/D;;OAEG;IACK,KAAK,CAAC,kBAAkB,CAAC,GAAW;QAC1C,MAAM,OAAO,GAAuB,EAAE,CAAC;QAEvC,+BAA+B;QAC/B,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;QAE3C,KAAK,MAAM,SAAS,IAAI,MAAM,EAAE,CAAC;YAC/B,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC;YAC3D,IAAI,IAAI,EAAE,CAAC;gBACT,OAAO,CAAC,IAAI,CAAC;oBACX,IAAI,EAAE,mBAAmB;oBACzB,EAAE,EAAE,SAAS,SAAS,EAAE;oBACxB,IAAI,EAAE,SAAS;oBACf,OAAO,EAAE,IAAI,CAAC,WAAW;iBAC1B,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,8BAA8B;QAC9B,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,uBAAuB,CAAC,MAAM,CAAC,CAAC;QAC7D,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,OAAO,CAAC,IAAI,CAAC;gBACX,IAAI,EAAE,eAAe;gBACrB,EAAE,EAAE,QAAQ,IAAI,CAAC,IAAI,EAAE;gBACvB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,OAAO,EAAE,IAAI,CAAC,WAAW;aAC1B,CAAC,CAAC;QACL,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;OAEG;IACK,iBAAiB,CAAC,GAAW;QACnC,MAAM,MAAM,GAAa,EAAE,CAAC;QAE5B,8DAA8D;QAC9D,MAAM,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;QAC9C,MAAM,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;QAE9C,IAAI,SAAS,EAAE,CAAC;YACd,KAAK,MAAM,KAAK,IAAI,SAAS,EAAE,CAAC;gBAC9B,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;gBAChD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;oBAChC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACzB,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,SAAS,EAAE,CAAC;YACd,KAAK,MAAM,KAAK,IAAI,SAAS,EAAE,CAAC;gBAC9B,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;gBAChD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;oBAChC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACzB,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;OAEG;IACK,gBAAgB,CAAC,MAA0B;QACjD,IAAI,CAAC,MAAM;YAAE,OAAO,SAAS,CAAC;QAE9B,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;QACzC,IAAI,WAAW,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,WAAW,CAAC,QAAQ,CAAC,UAAU,CAAC;YAAE,OAAO,UAAU,CAAC;QAC7F,IAAI,WAAW,CAAC,QAAQ,CAAC,SAAS,CAAC;YAAE,OAAO,SAAS,CAAC;QACtD,IAAI,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC;YAAE,OAAO,WAAW,CAAC;QACtD,IAAI,WAAW,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,WAAW,CAAC,QAAQ,CAAC,WAAW,CAAC;YAAE,OAAO,gBAAgB,CAAC;QAClG,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,+DAA+D;IAC/D,YAAY;IACZ,+DAA+D;IAE/D,UAAU;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,YAAY;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,YAAY;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;CACF;AAz7BD,gDAy7BC;AA6FD,+DAA+D;AAC/D,UAAU;AACV,+DAA+D;AAE/D;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,SAAgB,wBAAwB,CAAC,MAAyB;IAChE,OAAO,IAAI,kBAAkB,CAAC,MAAM,CAAC,CAAC;AACxC,CAAC"}
|
package/docs/DEMO_SCRIPT.md
CHANGED
|
@@ -1,14 +1,64 @@
|
|
|
1
1
|
# DataContext Demo Script
|
|
2
2
|
|
|
3
|
+
> **Version:** 0.4.0
|
|
4
|
+
> **Last Updated:** 2026-01-01
|
|
5
|
+
|
|
3
6
|
이 문서는 DataContext의 핵심 기능을 보여주는 데모 시나리오입니다.
|
|
4
7
|
GIF/영상 제작 시 이 순서대로 진행하세요.
|
|
5
8
|
|
|
9
|
+
---
|
|
10
|
+
|
|
6
11
|
## 사전 준비
|
|
7
12
|
|
|
13
|
+
### Option 1: PostgreSQL (권장)
|
|
14
|
+
|
|
15
|
+
> ⚠️ **PostgreSQL이 설치되어 있고 실행 중이어야 합니다.**
|
|
16
|
+
> PostgreSQL이 없거나 설정이 어려우면 [Option 2: SQLite](#option-2-sqlite-간편)를 사용하세요.
|
|
17
|
+
|
|
18
|
+
#### Step 1: PostgreSQL 실행
|
|
19
|
+
|
|
20
|
+
**Docker 사용:**
|
|
8
21
|
```bash
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
22
|
+
docker run -d \
|
|
23
|
+
--name datacontext-postgres \
|
|
24
|
+
-e POSTGRES_USER=postgres \
|
|
25
|
+
-e POSTGRES_PASSWORD=postgres \
|
|
26
|
+
-e POSTGRES_DB=postgres \
|
|
27
|
+
-p 5432:5432 \
|
|
28
|
+
postgres:15-alpine
|
|
29
|
+
|
|
30
|
+
# 5초 대기 후 진행
|
|
31
|
+
sleep 5
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
**Podman 사용:**
|
|
35
|
+
```bash
|
|
36
|
+
# 기존 컨테이너가 있다면 삭제
|
|
37
|
+
podman rm -f datacontext-postgres 2>/dev/null || true
|
|
38
|
+
|
|
39
|
+
podman run -d \
|
|
40
|
+
--name datacontext-postgres \
|
|
41
|
+
-e POSTGRES_USER=postgres \
|
|
42
|
+
-e POSTGRES_PASSWORD=postgres \
|
|
43
|
+
-e POSTGRES_DB=postgres \
|
|
44
|
+
-p 5432:5432 \
|
|
45
|
+
postgres:15-alpine
|
|
46
|
+
|
|
47
|
+
# 5초 대기 후 진행
|
|
48
|
+
sleep 5
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
#### Step 2: 테스트 DB 생성
|
|
52
|
+
|
|
53
|
+
> ⚠️ **중요:** Docker/Podman 사용 시 반드시 `postgres://...` 연결 문자열을 사용하세요.
|
|
54
|
+
> `psql -c` 형식은 로컬 Unix 소켓을 찾아서 컨테이너에 연결되지 않습니다.
|
|
55
|
+
|
|
56
|
+
```bash
|
|
57
|
+
# 1. demo_db 생성
|
|
58
|
+
psql postgres://postgres:postgres@localhost:5432/postgres -c "CREATE DATABASE demo_db"
|
|
59
|
+
|
|
60
|
+
# 2. 테이블 생성 및 샘플 데이터 삽입
|
|
61
|
+
psql postgres://postgres:postgres@localhost:5432/demo_db -c "
|
|
12
62
|
CREATE TABLE users (
|
|
13
63
|
id SERIAL PRIMARY KEY,
|
|
14
64
|
email VARCHAR(255) NOT NULL,
|
|
@@ -26,6 +76,14 @@ psql demo_db -c "
|
|
|
26
76
|
created_at TIMESTAMP DEFAULT NOW()
|
|
27
77
|
);
|
|
28
78
|
|
|
79
|
+
CREATE TABLE order_items (
|
|
80
|
+
id SERIAL PRIMARY KEY,
|
|
81
|
+
order_id INTEGER REFERENCES orders(id),
|
|
82
|
+
product_name VARCHAR(100),
|
|
83
|
+
quantity INTEGER DEFAULT 1,
|
|
84
|
+
price INTEGER NOT NULL
|
|
85
|
+
);
|
|
86
|
+
|
|
29
87
|
-- Add comments
|
|
30
88
|
COMMENT ON TABLE users IS 'Core user accounts';
|
|
31
89
|
COMMENT ON COLUMN users.status IS '1=active, 0=inactive';
|
|
@@ -41,36 +99,200 @@ psql demo_db -c "
|
|
|
41
99
|
(1, 5000, 'completed'),
|
|
42
100
|
(1, 15000, 'completed'),
|
|
43
101
|
(2, 25000, 'pending');
|
|
102
|
+
|
|
103
|
+
INSERT INTO order_items (order_id, product_name, quantity, price) VALUES
|
|
104
|
+
(1, 'Widget', 2, 2500),
|
|
105
|
+
(2, 'Gadget', 1, 15000),
|
|
106
|
+
(3, 'Premium Widget', 5, 5000);
|
|
44
107
|
"
|
|
108
|
+
```
|
|
45
109
|
|
|
46
|
-
|
|
110
|
+
#### Step 3: DataContext 서버 시작
|
|
111
|
+
|
|
112
|
+
```bash
|
|
47
113
|
npx @kiyeonjeon21/datacontext serve postgres://postgres:postgres@localhost:5432/demo_db --port 3000
|
|
48
114
|
```
|
|
49
115
|
|
|
116
|
+
#### 🔧 문제 해결
|
|
117
|
+
|
|
118
|
+
<details>
|
|
119
|
+
<summary><b>오류: connection to server on socket "/tmp/.s.PGSQL.5432" failed</b></summary>
|
|
120
|
+
|
|
121
|
+
**원인:** `psql -c` 또는 `psql demo_db -c` 형식은 로컬 Unix 소켓으로 연결합니다.
|
|
122
|
+
Docker/Podman 컨테이너는 TCP/IP로 연결해야 합니다.
|
|
123
|
+
|
|
124
|
+
**해결:** 전체 연결 문자열 사용:
|
|
125
|
+
```bash
|
|
126
|
+
# ❌ 잘못된 방법 (Unix 소켓 연결 시도)
|
|
127
|
+
psql -c "CREATE DATABASE demo_db"
|
|
128
|
+
psql demo_db -c "..."
|
|
129
|
+
|
|
130
|
+
# ✅ 올바른 방법 (TCP/IP 연결)
|
|
131
|
+
psql postgres://postgres:postgres@localhost:5432/postgres -c "CREATE DATABASE demo_db"
|
|
132
|
+
psql postgres://postgres:postgres@localhost:5432/demo_db -c "..."
|
|
133
|
+
```
|
|
134
|
+
</details>
|
|
135
|
+
|
|
136
|
+
<details>
|
|
137
|
+
<summary><b>오류: container name "datacontext-postgres" is already in use</b></summary>
|
|
138
|
+
|
|
139
|
+
```bash
|
|
140
|
+
# 기존 컨테이너 삭제 후 재생성
|
|
141
|
+
docker rm -f datacontext-postgres # 또는 podman
|
|
142
|
+
```
|
|
143
|
+
</details>
|
|
144
|
+
|
|
145
|
+
<details>
|
|
146
|
+
<summary><b>오류: port 5432 already in use</b></summary>
|
|
147
|
+
|
|
148
|
+
```bash
|
|
149
|
+
# 다른 포트 사용 (5433)
|
|
150
|
+
docker run -d \
|
|
151
|
+
--name datacontext-postgres \
|
|
152
|
+
-e POSTGRES_USER=postgres \
|
|
153
|
+
-e POSTGRES_PASSWORD=postgres \
|
|
154
|
+
-e POSTGRES_DB=postgres \
|
|
155
|
+
-p 5433:5432 \
|
|
156
|
+
postgres:15-alpine
|
|
157
|
+
|
|
158
|
+
# 연결 문자열도 포트 변경
|
|
159
|
+
psql postgres://postgres:postgres@localhost:5433/postgres -c "CREATE DATABASE demo_db"
|
|
160
|
+
```
|
|
161
|
+
</details>
|
|
162
|
+
|
|
163
|
+
### Option 2: SQLite (간편) ⭐ 추천
|
|
164
|
+
|
|
165
|
+
> 💡 **PostgreSQL 설정 없이 바로 시작하려면 SQLite를 사용하세요!**
|
|
166
|
+
> 추가 설치 없이 macOS/Linux에서 바로 사용 가능합니다.
|
|
167
|
+
|
|
168
|
+
```bash
|
|
169
|
+
# 1. 테스트 DB 준비 (한 줄로 실행)
|
|
170
|
+
sqlite3 demo.db "
|
|
171
|
+
CREATE TABLE users (
|
|
172
|
+
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
173
|
+
email TEXT NOT NULL,
|
|
174
|
+
name TEXT,
|
|
175
|
+
status INTEGER DEFAULT 1
|
|
176
|
+
);
|
|
177
|
+
|
|
178
|
+
CREATE TABLE orders (
|
|
179
|
+
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
180
|
+
user_id INTEGER REFERENCES users(id),
|
|
181
|
+
total INTEGER NOT NULL
|
|
182
|
+
);
|
|
183
|
+
|
|
184
|
+
CREATE TABLE order_items (
|
|
185
|
+
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
186
|
+
order_id INTEGER REFERENCES orders(id),
|
|
187
|
+
product_name TEXT,
|
|
188
|
+
quantity INTEGER DEFAULT 1
|
|
189
|
+
);
|
|
190
|
+
|
|
191
|
+
INSERT INTO users (email, name, status) VALUES
|
|
192
|
+
('john@example.com', 'John Doe', 1),
|
|
193
|
+
('jane@example.com', 'Jane Smith', 1);
|
|
194
|
+
|
|
195
|
+
INSERT INTO orders (user_id, total) VALUES (1, 5000), (2, 15000);
|
|
196
|
+
INSERT INTO order_items (order_id, product_name, quantity) VALUES (1, 'Widget', 2);
|
|
197
|
+
"
|
|
198
|
+
|
|
199
|
+
# 2. DataContext 서버 시작
|
|
200
|
+
npx @kiyeonjeon21/datacontext serve sqlite:./demo.db --port 3000
|
|
201
|
+
```
|
|
202
|
+
|
|
50
203
|
---
|
|
51
204
|
|
|
52
205
|
## Demo 1: Cold Start → Auto-Harvest (30초)
|
|
53
206
|
|
|
54
|
-
**목표:** 처음 연결 시 자동으로
|
|
207
|
+
**목표:** 처음 연결 시 자동으로 메타데이터와 **관계(Relationships)**를 수집
|
|
208
|
+
|
|
209
|
+
### 시나리오
|
|
55
210
|
|
|
56
211
|
1. VS Code에서 DataContext Extension 열기
|
|
57
212
|
2. `Cmd+Shift+P` → "DataContext: Connect to Database"
|
|
58
213
|
3. `http://localhost:3000` 입력
|
|
59
214
|
4. 왼쪽 사이드바에 테이블 목록 표시됨
|
|
60
215
|
5. `Cmd+Shift+P` → "DataContext: Harvest Metadata"
|
|
61
|
-
6. "Harvested
|
|
216
|
+
6. **"Harvested 3 tables, 2 descriptions, 2 relationships"** 메시지 표시 ✨
|
|
62
217
|
7. Knowledge 패널에 수집된 설명 표시
|
|
63
218
|
|
|
64
|
-
|
|
219
|
+
### 녹화 포인트
|
|
65
220
|
- 연결 후 테이블이 나타나는 순간
|
|
66
|
-
- Harvest 후
|
|
221
|
+
- Harvest 후 **relationships 수**가 표시되는 것
|
|
222
|
+
- Knowledge가 채워지는 순간
|
|
67
223
|
|
|
68
224
|
---
|
|
69
225
|
|
|
70
|
-
## Demo 2:
|
|
226
|
+
## Demo 2: Knowledge Graph - 테이블 관계 시각화 (45초) ✨ NEW
|
|
227
|
+
|
|
228
|
+
**목표:** Knowledge Graph가 테이블 관계를 자동으로 발견하고 시각화
|
|
229
|
+
|
|
230
|
+
### 시나리오
|
|
231
|
+
|
|
232
|
+
1. `Cmd+Shift+P` → **"DataContext: Show Table Relationships"**
|
|
233
|
+
2. Markdown 문서가 열리며 모든 관계 표시:
|
|
234
|
+
```
|
|
235
|
+
| From | To | Type | Join Condition |
|
|
236
|
+
|------|-----|------|----------------|
|
|
237
|
+
| public.orders | public.users | foreign_key | orders.user_id = users.id |
|
|
238
|
+
| public.order_items | public.orders | foreign_key | order_items.order_id = orders.id |
|
|
239
|
+
```
|
|
240
|
+
3. `Cmd+Shift+P` → **"DataContext: Show Knowledge Graph Summary"**
|
|
241
|
+
4. 통계 표시: "Knowledge Graph: 2 relationships, 3 connected tables"
|
|
242
|
+
|
|
243
|
+
### 녹화 포인트
|
|
244
|
+
- 관계 테이블이 자동 생성되는 것
|
|
245
|
+
- FK가 자동으로 발견되는 것
|
|
246
|
+
|
|
247
|
+
---
|
|
248
|
+
|
|
249
|
+
## Demo 3: Knowledge Graph - Join Path 탐색 (45초) ✨ NEW
|
|
250
|
+
|
|
251
|
+
**목표:** 복잡한 스키마에서 두 테이블 간 조인 경로를 자동으로 찾기
|
|
252
|
+
|
|
253
|
+
### 시나리오
|
|
254
|
+
|
|
255
|
+
1. `Cmd+Shift+P` → **"DataContext: Find Join Path"**
|
|
256
|
+
2. Source table 선택: `order_items`
|
|
257
|
+
3. Destination table 선택: `users`
|
|
258
|
+
4. 결과 문서 표시:
|
|
259
|
+
```markdown
|
|
260
|
+
# 🛤️ Join Path: order_items → users
|
|
261
|
+
|
|
262
|
+
**Hops:** 2
|
|
263
|
+
|
|
264
|
+
## Path
|
|
265
|
+
|
|
266
|
+
1. **order_items** → **orders**
|
|
267
|
+
- Join: `order_items.order_id = orders.id`
|
|
268
|
+
- Cardinality: many-to-one
|
|
269
|
+
|
|
270
|
+
2. **orders** → **users**
|
|
271
|
+
- Join: `orders.user_id = users.id`
|
|
272
|
+
- Cardinality: many-to-one
|
|
273
|
+
|
|
274
|
+
## SQL Example
|
|
275
|
+
|
|
276
|
+
```sql
|
|
277
|
+
FROM order_items
|
|
278
|
+
JOIN orders ON order_items.order_id = orders.id
|
|
279
|
+
JOIN users ON orders.user_id = users.id
|
|
280
|
+
```
|
|
281
|
+
```
|
|
282
|
+
|
|
283
|
+
### 녹화 포인트
|
|
284
|
+
- 2-hop 경로가 자동으로 계산되는 것
|
|
285
|
+
- SQL 예시가 바로 생성되는 것
|
|
286
|
+
- "이 테이블들이 어떻게 연결되지?" 질문에 즉시 답변
|
|
287
|
+
|
|
288
|
+
---
|
|
289
|
+
|
|
290
|
+
## Demo 4: SQL Autocomplete (30초)
|
|
71
291
|
|
|
72
292
|
**목표:** 스키마 인식 SQL 자동완성
|
|
73
293
|
|
|
294
|
+
### 시나리오
|
|
295
|
+
|
|
74
296
|
1. 새 파일 생성: `query.sql`
|
|
75
297
|
2. `SEL` 입력 → SELECT 스니펫 선택
|
|
76
298
|
3. `FROM u` 입력 → `users` 테이블 자동완성
|
|
@@ -82,57 +304,88 @@ npx @kiyeonjeon21/datacontext serve postgres://postgres:postgres@localhost:5432/
|
|
|
82
304
|
WHERE users.status = 1
|
|
83
305
|
```
|
|
84
306
|
|
|
85
|
-
|
|
307
|
+
### 녹화 포인트
|
|
86
308
|
- 테이블 이름 자동완성
|
|
87
309
|
- 컬럼 목록 (타입, PK 표시)
|
|
88
310
|
- JOIN 시 연관 테이블 제안
|
|
89
311
|
|
|
90
312
|
---
|
|
91
313
|
|
|
92
|
-
## Demo
|
|
314
|
+
## Demo 5: Hover Descriptions (20초)
|
|
93
315
|
|
|
94
316
|
**목표:** 테이블/컬럼에 마우스 올리면 비즈니스 설명 표시
|
|
95
317
|
|
|
318
|
+
### 시나리오
|
|
319
|
+
|
|
96
320
|
1. SQL 파일에서 `users` 테이블에 마우스 hover
|
|
97
321
|
2. "Core user accounts" 툴팁 표시
|
|
98
322
|
3. `orders.total`에 마우스 hover
|
|
99
323
|
4. "Order total in cents" 툴팁 표시
|
|
100
324
|
|
|
101
|
-
|
|
325
|
+
### 녹화 포인트
|
|
102
326
|
- Hover 시 Markdown 포맷의 풍부한 툴팁
|
|
103
327
|
|
|
104
328
|
---
|
|
105
329
|
|
|
106
|
-
## Demo
|
|
330
|
+
## Demo 6: AI Context with Relationships (60초) ✨ ENHANCED
|
|
331
|
+
|
|
332
|
+
**목표:** AI가 **Knowledge Graph**를 활용하여 정확한 JOIN 생성
|
|
107
333
|
|
|
108
|
-
|
|
334
|
+
### Cursor에서 MCP로 테스트
|
|
109
335
|
|
|
110
|
-
1. Cursor에서 DataContext MCP 활성화
|
|
336
|
+
1. Cursor에서 DataContext MCP 활성화 (설정 확인)
|
|
111
337
|
2. Agent 모드에서 질문:
|
|
112
|
-
> "
|
|
113
|
-
|
|
338
|
+
> "order_items에서 주문한 사용자 이메일을 조회해줘"
|
|
339
|
+
|
|
340
|
+
3. AI가 **Knowledge Graph**를 자동으로 참조:
|
|
341
|
+
- `get_context` 호출 → relationships 정보 포함
|
|
342
|
+
- 또는 `find_join_path` 호출 → 경로 자동 발견
|
|
343
|
+
|
|
344
|
+
4. AI 응답:
|
|
114
345
|
```sql
|
|
115
|
-
SELECT u
|
|
116
|
-
FROM
|
|
117
|
-
JOIN orders o ON
|
|
118
|
-
|
|
119
|
-
AND u.deleted_at IS NULL -- Soft-delete (from business rule)
|
|
120
|
-
GROUP BY u.id
|
|
121
|
-
HAVING SUM(o.total) > 10000 -- $100 in cents (from context)
|
|
346
|
+
SELECT u.email, oi.product_name, oi.quantity
|
|
347
|
+
FROM order_items oi
|
|
348
|
+
JOIN orders o ON oi.order_id = o.id -- from Knowledge Graph
|
|
349
|
+
JOIN users u ON o.user_id = u.id -- from Knowledge Graph
|
|
122
350
|
```
|
|
123
|
-
4. 컨텍스트 사용됨 표시 (table descriptions, business rules)
|
|
124
351
|
|
|
125
|
-
|
|
352
|
+
5. AI가 JOIN 조건을 **직접 알고 있음** (스키마 설명 불필요!)
|
|
353
|
+
|
|
354
|
+
### 복잡한 질문 테스트
|
|
355
|
+
|
|
356
|
+
> "활성 사용자 중 $100 이상 주문한 사람의 주문 상세를 보여줘"
|
|
357
|
+
|
|
358
|
+
AI 응답:
|
|
359
|
+
```sql
|
|
360
|
+
SELECT
|
|
361
|
+
u.name,
|
|
362
|
+
u.email,
|
|
363
|
+
o.total / 100.0 as total_dollars, -- cents → dollars (from context)
|
|
364
|
+
oi.product_name,
|
|
365
|
+
oi.quantity
|
|
366
|
+
FROM users u
|
|
367
|
+
JOIN orders o ON o.user_id = u.id
|
|
368
|
+
JOIN order_items oi ON oi.order_id = o.id
|
|
369
|
+
WHERE u.status = 1 -- active (from context)
|
|
370
|
+
AND u.deleted_at IS NULL -- soft-delete (from business rule)
|
|
371
|
+
GROUP BY u.id, o.id, oi.id
|
|
372
|
+
HAVING SUM(o.total) > 10000 -- $100 in cents (from context)
|
|
373
|
+
```
|
|
374
|
+
|
|
375
|
+
### 녹화 포인트
|
|
376
|
+
- AI가 **JOIN 경로를 자동으로 아는 것** (핵심!)
|
|
126
377
|
- AI가 status=1이 "active"임을 아는 것
|
|
127
378
|
- AI가 total이 "cents"임을 아는 것
|
|
128
|
-
-
|
|
379
|
+
- 3개 테이블 JOIN이 자동으로 정확하게 생성되는 것
|
|
129
380
|
|
|
130
381
|
---
|
|
131
382
|
|
|
132
|
-
## Demo
|
|
383
|
+
## Demo 7: Safety Guardrails (30초)
|
|
133
384
|
|
|
134
385
|
**목표:** 위험한 쿼리 차단
|
|
135
386
|
|
|
387
|
+
### 시나리오
|
|
388
|
+
|
|
136
389
|
1. Cursor에서:
|
|
137
390
|
> "users 테이블 전체 삭제해줘"
|
|
138
391
|
2. AI가 DELETE 쿼리 시도
|
|
@@ -141,28 +394,73 @@ npx @kiyeonjeon21/datacontext serve postgres://postgres:postgres@localhost:5432/
|
|
|
141
394
|
> "전체 주문 데이터 조회해줘" (LIMIT 없이)
|
|
142
395
|
5. DataContext가 자동으로 LIMIT 1000 추가
|
|
143
396
|
|
|
144
|
-
|
|
397
|
+
### 녹화 포인트
|
|
145
398
|
- 차단 메시지
|
|
146
399
|
- 자동 LIMIT 추가
|
|
147
400
|
|
|
148
401
|
---
|
|
149
402
|
|
|
150
|
-
## Demo
|
|
403
|
+
## Demo 8: Learning Loop (30초)
|
|
151
404
|
|
|
152
405
|
**목표:** 피드백으로 학습
|
|
153
406
|
|
|
407
|
+
### 시나리오
|
|
408
|
+
|
|
154
409
|
1. AI가 생성한 쿼리에 수정 필요
|
|
155
410
|
2. 사용자가 `AND created_at > '2024-01-01'` 추가
|
|
156
411
|
3. "Record Feedback" 실행
|
|
157
412
|
4. Metrics에서 correction rate 표시
|
|
158
413
|
5. 다음에 유사한 질문 시 AI가 날짜 필터 제안
|
|
159
414
|
|
|
160
|
-
|
|
415
|
+
### 녹화 포인트
|
|
161
416
|
- 수정 전/후 SQL
|
|
162
417
|
- Metrics 화면
|
|
163
418
|
|
|
164
419
|
---
|
|
165
420
|
|
|
421
|
+
## REST API 데모 (개발자용)
|
|
422
|
+
|
|
423
|
+
```bash
|
|
424
|
+
# 1. 테이블 관계 조회
|
|
425
|
+
curl http://localhost:3000/api/relationships | jq
|
|
426
|
+
|
|
427
|
+
# 2. 특정 테이블의 관계만 조회
|
|
428
|
+
curl "http://localhost:3000/api/relationships?table=orders" | jq
|
|
429
|
+
|
|
430
|
+
# 3. 두 테이블 간 JOIN 경로 찾기
|
|
431
|
+
curl "http://localhost:3000/api/relationships/path?from=order_items&to=users" | jq
|
|
432
|
+
|
|
433
|
+
# 4. Knowledge Graph 요약
|
|
434
|
+
curl http://localhost:3000/api/graph/summary | jq
|
|
435
|
+
```
|
|
436
|
+
|
|
437
|
+
예상 출력 (`find_join_path`):
|
|
438
|
+
```json
|
|
439
|
+
{
|
|
440
|
+
"found": true,
|
|
441
|
+
"from": "order_items",
|
|
442
|
+
"to": "users",
|
|
443
|
+
"hops": 2,
|
|
444
|
+
"path": [
|
|
445
|
+
{
|
|
446
|
+
"step": 1,
|
|
447
|
+
"from": "public.order_items",
|
|
448
|
+
"to": "public.orders",
|
|
449
|
+
"joinCondition": "order_items.order_id = orders.id"
|
|
450
|
+
},
|
|
451
|
+
{
|
|
452
|
+
"step": 2,
|
|
453
|
+
"from": "public.orders",
|
|
454
|
+
"to": "public.users",
|
|
455
|
+
"joinCondition": "orders.user_id = users.id"
|
|
456
|
+
}
|
|
457
|
+
],
|
|
458
|
+
"sqlHint": "FROM order_items\nJOIN orders ON order_items.order_id = orders.id\nJOIN users ON orders.user_id = users.id"
|
|
459
|
+
}
|
|
460
|
+
```
|
|
461
|
+
|
|
462
|
+
---
|
|
463
|
+
|
|
166
464
|
## GIF 제작 도구
|
|
167
465
|
|
|
168
466
|
### 추천 도구
|
|
@@ -177,20 +475,25 @@ npx @kiyeonjeon21/datacontext serve postgres://postgres:postgres@localhost:5432/
|
|
|
177
475
|
- 루프: 무한 반복
|
|
178
476
|
|
|
179
477
|
### 파일명
|
|
180
|
-
- `demo-
|
|
181
|
-
- `demo-
|
|
182
|
-
- `demo-
|
|
183
|
-
- `demo-
|
|
478
|
+
- `demo-harvest.gif` - Harvest + Relationships
|
|
479
|
+
- `demo-knowledge-graph.gif` - 관계 시각화 ✨
|
|
480
|
+
- `demo-join-path.gif` - Join Path 탐색 ✨
|
|
481
|
+
- `demo-autocomplete.gif` - SQL 자동완성
|
|
482
|
+
- `demo-ai-context.gif` - AI + Knowledge Graph ✨
|
|
483
|
+
- `demo-safety.gif` - Safety Guardrails
|
|
184
484
|
|
|
185
485
|
---
|
|
186
486
|
|
|
187
487
|
## 영상 제작 (Product Hunt/YouTube)
|
|
188
488
|
|
|
189
489
|
### 구성 (2분 이내)
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
490
|
+
|
|
491
|
+
1. **Intro (10초)**: 문제 제시 - "AI에게 매번 JOIN 조건 설명하기 지치셨나요?"
|
|
492
|
+
2. **Solution (10초)**: DataContext 소개 - "Knowledge Graph가 자동으로 테이블 관계를 이해합니다"
|
|
493
|
+
3. **Demo 1-2 (30초)**: Harvest + Relationship 시각화
|
|
494
|
+
4. **Demo 3 (30초)**: Join Path 탐색 (핵심 기능!)
|
|
495
|
+
5. **Demo 6 (30초)**: AI가 Knowledge Graph 활용
|
|
496
|
+
6. **Outro (10초)**: CTA - "지금 시작하세요"
|
|
194
497
|
|
|
195
498
|
### 배경음악
|
|
196
499
|
- 저작권 무료 음악 사용
|
|
@@ -202,9 +505,37 @@ npx @kiyeonjeon21/datacontext serve postgres://postgres:postgres@localhost:5432/
|
|
|
202
505
|
|
|
203
506
|
README 및 마케팅용:
|
|
204
507
|
- [ ] VS Code Extension 사이드바 (테이블 목록)
|
|
508
|
+
- [ ] **Show Table Relationships** 결과 화면 ✨
|
|
509
|
+
- [ ] **Find Join Path** 결과 화면 ✨
|
|
205
510
|
- [ ] SQL 자동완성 드롭다운
|
|
206
511
|
- [ ] Hover 툴팁
|
|
207
512
|
- [ ] Knowledge 패널 (카테고리별)
|
|
208
513
|
- [ ] 터미널에서 서버 실행 화면
|
|
209
|
-
- [ ] Cursor에서 AI 응답 (
|
|
514
|
+
- [ ] **Cursor에서 AI 응답 (JOIN 자동 생성)** ✨
|
|
515
|
+
- [ ] REST API 응답 (curl 출력)
|
|
516
|
+
|
|
517
|
+
---
|
|
518
|
+
|
|
519
|
+
## 핵심 메시지
|
|
520
|
+
|
|
521
|
+
### Before DataContext
|
|
522
|
+
```
|
|
523
|
+
사용자: "order_items에서 주문한 사용자 이메일 조회해줘"
|
|
524
|
+
AI: "order_items와 users 테이블이 어떻게 연결되어 있나요?"
|
|
525
|
+
사용자: "order_items는 orders의 order_id를 참조하고, orders는 users의 user_id를 참조해요"
|
|
526
|
+
AI: "감사합니다. 쿼리를 생성합니다..."
|
|
527
|
+
```
|
|
528
|
+
|
|
529
|
+
### After DataContext
|
|
530
|
+
```
|
|
531
|
+
사용자: "order_items에서 주문한 사용자 이메일 조회해줘"
|
|
532
|
+
AI: [Knowledge Graph 자동 참조]
|
|
533
|
+
"order_items → orders → users 경로를 찾았습니다."
|
|
534
|
+
|
|
535
|
+
SELECT u.email, oi.product_name
|
|
536
|
+
FROM order_items oi
|
|
537
|
+
JOIN orders o ON oi.order_id = o.id
|
|
538
|
+
JOIN users u ON o.user_id = u.id
|
|
539
|
+
```
|
|
210
540
|
|
|
541
|
+
**차이점: AI가 스키마를 이미 알고 있음!** 🎉
|
package/package.json
CHANGED
|
@@ -513,6 +513,15 @@ export class DataContextService {
|
|
|
513
513
|
category: t.category,
|
|
514
514
|
isActive: t.isActive,
|
|
515
515
|
})),
|
|
516
|
+
relationships: (data.relationships || []).map((r: { id: string; from: { schema: string; table: string }; to: { schema: string; table: string }; relationshipType: string; joinCondition: string; cardinality?: string; isPreferred?: boolean }) => ({
|
|
517
|
+
id: r.id,
|
|
518
|
+
from: `${r.from.schema}.${r.from.table}`,
|
|
519
|
+
to: `${r.to.schema}.${r.to.table}`,
|
|
520
|
+
type: r.relationshipType,
|
|
521
|
+
joinCondition: r.joinCondition,
|
|
522
|
+
cardinality: r.cardinality,
|
|
523
|
+
isPreferred: r.isPreferred ?? false,
|
|
524
|
+
})),
|
|
516
525
|
stats: {
|
|
517
526
|
totalTables: data.tables.length,
|
|
518
527
|
totalExamples: data.queryExamples.length,
|
|
@@ -520,6 +529,7 @@ export class DataContextService {
|
|
|
520
529
|
verifiedExamples: data.queryExamples.filter((e: { isVerified?: boolean }) => e.isVerified).length,
|
|
521
530
|
activeRules: data.businessRules.filter((r: { isActive?: boolean }) => r.isActive !== false).length,
|
|
522
531
|
totalTerms: (data.businessTerms || []).length,
|
|
532
|
+
totalRelationships: (data.relationships || []).length,
|
|
523
533
|
},
|
|
524
534
|
};
|
|
525
535
|
}
|
|
@@ -1112,6 +1122,15 @@ interface KnowledgeSummary {
|
|
|
1112
1122
|
category?: string;
|
|
1113
1123
|
isActive: boolean;
|
|
1114
1124
|
}>;
|
|
1125
|
+
relationships: Array<{
|
|
1126
|
+
id: string;
|
|
1127
|
+
from: string;
|
|
1128
|
+
to: string;
|
|
1129
|
+
type: string;
|
|
1130
|
+
joinCondition: string;
|
|
1131
|
+
cardinality?: string;
|
|
1132
|
+
isPreferred: boolean;
|
|
1133
|
+
}>;
|
|
1115
1134
|
stats: {
|
|
1116
1135
|
totalTables: number;
|
|
1117
1136
|
totalExamples: number;
|
|
@@ -1119,6 +1138,7 @@ interface KnowledgeSummary {
|
|
|
1119
1138
|
verifiedExamples: number;
|
|
1120
1139
|
activeRules: number;
|
|
1121
1140
|
totalTerms: number;
|
|
1141
|
+
totalRelationships: number;
|
|
1122
1142
|
};
|
|
1123
1143
|
}
|
|
1124
1144
|
|