1

我想就以下设计问题分享并寻求您的帮助:

我有一个包含 11 列的数据库表

每当我用任何编程语言处理这些条件时,

我被这个问题困住了:

“如何创建一个函数来插入一行,而该函数没有 11 个参数?” 我的问题是,这是一个糟糕的设计问题(因为一个函数中有很多参数)

谁能告诉我如何重新设计这个?我必须更改我的数据库方案吗?还是我可以保持原样,只是以不同的方式构建我的应用程序?

笔记:

我发现了很多类似的问题,但它们都集中在数据库本身和列数上。

据我所知和阅读,只要它是同一个实体,一个表可以包含许多列。

我更关心函数本身。意思是如果我有一个名为 DB 的类和一个名为insertToTable(Params...)的函数, 我该怎么做呢?

如果我将一个大对象发送到 DB 类,它不会影响“低耦合高内聚”吗?在对象中设置参数,然后将其发送到 DB 类,然后将它们取回以构建这个庞大的查询,这不是很愚蠢吗?

4

1 回答 1

0

您可以考虑创建几个插入方法,这些方法根据默认值、更新的数据等接受不同数量的参数。

如果您经常只更新 2 或 3 列,为什么不编写一个只接受这 3 个参数并保持其他所有参数不变的函数。

是的,您将需要一个接受所有参数的函数,但您可以通过创建一个表示表的类然后只传递一个参数 - 该类的对象来处理它。

于 2013-02-18T16:39:42.510 回答