OriginalGriff
Начните с размышления о ваших данных: что это такое? как это связано с другими частями данных?
Например, у клиента может быть имя и адрес, а у компании, как мы надеемся, будет больше одного клиента. Это означает, что вам понадобится таблица клиентов, которая хранит:
ID (so that you can have two customers with the same name)
Name
Street line 1
Street line 2
Town
County / State
Telephone number
Mobile number
Email
И каждый клиент будет иметь свою собственную строку в той же таблице.
Но для счетов - фактур все по-другому; каждый счет-фактура имеет клиента, дату, общую сумму и набор продуктов-что означает три таблицы: клиенты из предыдущих, счета-фактуры и таблицы InvoiceLines:
Счета-фактуры:
ID (To makes sure they are all distinct)
CustomerID (so you can tell which customer owes you money)
InvoiceDate
DueDate
Paid
Total
InvoiceLines:
ID (so they are all different)
InvoiceID (so you can tie the set of lines back to an Invoice)
Quantity
Product
Value
Базы данных - это все о связях между данными, и вы только отделяете элементы в разные таблицы, когда есть веская причина для этого-чаще всего, когда у вас будет "много из них", связанных с "одним из них": например, "много заказов" от "одного и того же клиента".
Итак, начните думать о данных и о том, как они организованы в реальном мире, а затем подумайте о том, как создать модель базы данных этого мира!
Тогда начните думать о реальных базах данных! :смеяться: