0

所以这里有两个问题。

在我的数据库中,我需要 18 个字段,因为在高尔夫中有 18 个洞(所以每个洞需要 18 个来存储击球数。)其次,我需要存储每个洞的码数(所以还有 18 个。)

我的问题是,现在我将它们全部声明如下:

public static final String KEY_H1 = "h1";
public static final String KEY_H1Y = "h1y";
public static final String KEY_H2 = "h2";
public static final String KEY_H2Y = "h2y";
public static final String KEY_H3 = "h3";
public static final String KEY_H3Y = "h3y";

等等

h1 是 1 号洞 h1y 是 1 号洞的码数

有一个更好的方法吗?此外,在创建时,我将不得不调用 h1 h1y h2 h2y h3 h3y 等。

提前致谢!

编辑: 1. 这会对系统造成很大的负担,导致应用程序崩溃或运行速度变慢?2. 以后更新数据库会不会很痛苦?

4

4 回答 4

3

您可以不使用“高尔夫比赛得分”表,而使用“洞得分”表。然后,该表可以包含一个用于洞的 int 列、另一个用于 yardage 的列和另一个 game_id 列。

于 2011-06-16T23:02:34.170 回答
1

附上Kabuku答案:假设在给定的一轮高尔夫球比赛中,您想知道球员有多少小鸟、老鹰、柏忌等;或者你想找出哪个洞的标准杆得分最高,哪个洞的得分最差,等等。你真的想写相同的代码 18 次,每个洞一次吗?或者您是否希望能够编写一次代码,作为循环或对漏洞的查询,以找到结果?

这只是您真的非常想将孔号作为参数而不是为每个孔创建单独的静态变量或列的原因之一。

要回答您问题的另一部分——声明大量公共静态最终变量是否会减慢系统速度——答案是否定的。但在这种特殊情况下,它最终会减慢的速度。

于 2011-06-16T23:08:19.807 回答
0

我只是将它存储为字符串,因为您有从xy的字段,这些字段应该始终采用某种数组形式。我认为最简单的方法是将其存储为:

hits:yardage hits:yardage hits:yardageetc...

:在您的数据库中,然后用和分割字符串

(并且响应您的编辑,是的,您当前的方式可能会使更新数据库结构变得不必要地困难。)

于 2011-06-16T23:01:42.110 回答
0

我有两张桌子,一张游戏桌和一张球洞得分表。

游戏桌会有日期和路线。

球洞得分表将包含球洞号码、码数、得分和比赛表中比赛记录的_id。

于 2011-06-16T23:07:45.377 回答