Что-то не так с объявлением таких переменных? - PullRequest
0 голосов
/ 17 июня 2011

Итак, здесь есть 2 вопроса.

В моей базе данных мне нужно 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 ]

3 голосов
/ 17 июня 2011

Вместо таблицы «Оценка игры в гольф» можно получить таблицу «Оценка игры в лунку». Эта таблица может содержать столбец int для дыры, другой столбец ярда и другой столбец game_id.

1 голос
/ 17 июня 2011

Ответ на Ответ Кабуку : Предположим, что для данного раунда игры в гольф вы хотите узнать, сколько у игрока было птичек, орлов, тележек и т. Д .;или вы хотите узнать, у каких лунок был лучший результат по сравнению с номиналом, у кого худший и т. д. Вы действительно хотите написать один и тот же код 18 раз, по одному для каждой лунки;или вы хотите иметь возможность написать код один раз, в виде цикла или запроса по отверстиям, чтобы найти результат?

Это только одна из причин, почему вы действительно хотите сделать номер отверстияпараметр, вместо создания отдельных статических переменных или столбцов для каждой дыры.

Чтобы ответить на другую часть вашего вопроса - не замедлит ли система объявить много открытых статических конечных переменных - ответнет.Но в данном конкретном случае это в конечном итоге замедлит вас вниз.

0 голосов
/ 17 июня 2011

У меня было бы два стола, игровой стол и таблица результатов лунок.

В игровом столе были бы дата и курс.

В таблице результатов лунок имелось отверстие.номер, ярд, счет и _id записи для игры в игровой таблице.

0 голосов
/ 17 июня 2011

Я бы просто сохранил ее как строку, так как у вас есть поля для чего-то от x до y , которые всегда должны быть в какой-то форме массива. Я думаю, что самый простой способ - сохранить его как:

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

В вашей базе данных, затем разбить строку на : и .

(И в ответ на ваши изменения, да, ваш текущий способ, вероятно, сделает ненужным сложным обновление структуры базы данных.)

...