Replies: 1 comment
-
|
你想得很对,但是由于课程内容修改的关系,本次项目是以往多次项目的结合体(所以你会看到,明明在代码里面几个变量算一算就能完成的事情,我们要让你弄一个算术表达式出来)。SQL 部分原本是一个独立的项目,今年在匆忙之中强行并到了项目一里面,还没有很好地打磨,非常抱歉😥。 这一部分本质的目的是让大家熟悉字符串解析和文件 IO,所以我们特别指出大家可以在代码层面继续加工 SQL 返回的结果。 |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
根据这个项目的要求,我们通过实现这一类 SQL 语言,可以实现“抽象分层”出一个“数据库层”,然后在业务代码下端实现一个 ORM,在数据库层写一个用 CSV 做存储的“数据库引擎”。在这一架构中,数据库层被抽象为单独的一层,并不需要知道上层代码的业务细节。
然而,PPT 中称 “同一条指令(如SELECT * FROM commodity)对于不同的角色会呈现不一样的结果”。我认为这是不合理的——这打破了上述的抽象,因为数据库层需要判断角色并进行不同的筛选,这是强业务相关的。
因此,我认为正确的做法应该是要求业务代码的 ORM 层根据不同角色产生不同的 SQL 语句(如
SELECT * FROM commodity WHERE seller_uid = "U101"),然后在数据库层不进行特殊处理。Beta Was this translation helpful? Give feedback.
All reactions