Heim Datenbank MySQL-Tutorial 20个数据库设计的最佳实践_MySQL

20个数据库设计的最佳实践_MySQL

Jun 01, 2016 pm 01:26 PM
数据库设计

  数据库设计是整个程序的重点之一,为了支持相关程序运行,最佳的数据库设计往往不可能一蹴而就,只能反复探寻并逐步求精,这是一个复杂的过程,也是规划和结构化数据库中的数据对象以及这些数据对象之间关系的过程。下面给出了20个数据库设计最佳实践,当然,所谓最佳,还是要看它是否适合你的程序。一起来了解了解吧。

 

  1. 使用明确、统一的标明和列名,例如 School, SchoolCourse, CourceID。
  2. 数据表名使用单数而不是复数,例如 StudentCourse,而不是StudentCourses。
  3. 数据表名不要使用空格。
  4. 数据表名不要使用不必要的前缀或者后缀,例如使用School,而不是TblSchool,或者SchoolTable等等。
  5. 数据库中的密码要加密,到应用中再解密。 (其实就是散列存储、单向加密)
  6. 使用整数作为ID字段,也许现在没有这个必要,但是将来需要,例如关联表,索引等等。
  7. 使用整数字段做索引,否则会带来很大的性能问题 。
  8. 使用 bit 作为布尔字段,使用整数或者varcha是浪费。同时,这类字段应该以“Is”开头。
  9. 要经过认证才能访问数据库,不要给每一个用户管理员权限。
  10. 尽量避免使用“select *”,而使用“select [required_column_list]”以获得更好的性能。
  11. 假如程序代码比较复杂,使用ORM框架,例如hibernate,iBatis。ORM框架的性能问题可以通过详细的配置去解决。
  12. 分割不常使用的数据表到不同的物理存储以获得更好的性能。
  13. 对于关键数据库,使用安全备份系统,例如集群,同步等等。
  14. 使用外键,非空等限制来保证数据的完整性,不要把所有的东西都扔给程序。
  15. 缺乏数据库文档是致命的。你应该为你的数据库设计写文档,包括触发器、存储过程和其他脚本。
  16. 对于经常使用的查询和大型数据表,要使用索引。数据分析工具可以帮助你决定如何建立索引。
  17. 数据库服务器和网页服务器应该放在不同的机器上。这回提高安全性,并减轻CPU压力。
  18. Image和blob字段不应该定义在常用的数据表中,否则会影响性能。
  19. 范式(Normalization)要按照要求使用以提高性能。Normalization做的不够会导致数据冗余,而过度Normalization 会导致太多的join和数据表,这两种情况都会影响性能。
  20. 多花点时间在数据库设计上,否则你将来会付出加倍的时间来偿还。(oschina.net虫虫译)

  英文原址:javacodegeeks.com

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Repo: Wie man Teamkollegen wiederbelebt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Abenteuer: Wie man riesige Samen bekommt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Redundante Feldprobleme beim Datenbankdesign: Best Practices in der PHP-Programmierung Redundante Feldprobleme beim Datenbankdesign: Best Practices in der PHP-Programmierung Jun 22, 2023 am 11:02 AM

Mit der Popularität des Internets und der zunehmenden Anzahl von Anwendungsszenarien ist das Datenbankdesign zu einem äußerst wichtigen Thema geworden. Beim Datenbankdesign sind redundante Felder ein sehr wichtiges Thema. Redundante Felder beziehen sich auf doppelte oder unnötige Felder, die beim Entwurf der Datenbank erscheinen. Obwohl redundante Felder die Abfrageeffizienz und -geschwindigkeit bis zu einem gewissen Grad verbessern können, verschwenden sie auch Speicherplatz, erhöhen die Wartungsschwierigkeiten und beeinträchtigen sogar die Datenkonsistenz und -sicherheit. Daher sollten bei der PHP-Programmierung bestimmte Best Practices befolgt werden, um die durch redundante Felder verursachten Probleme zu lösen.

Forschung zu Lösungen für Datenbankdesignprobleme, die bei der Entwicklung mithilfe der MongoDB-Technologie auftreten Forschung zu Lösungen für Datenbankdesignprobleme, die bei der Entwicklung mithilfe der MongoDB-Technologie auftreten Oct 08, 2023 pm 05:53 PM

Erforschung von Lösungen für Datenbankdesignprobleme, die bei der Entwicklung der MongoDB-Technologie auftreten. Zusammenfassung: Angesichts der rasanten Entwicklung von Big Data und Cloud Computing ist das Datenbankdesign in der Softwareentwicklung besonders wichtig. In diesem Artikel werden häufige Probleme beim Datenbankdesign erörtert, die während der Entwicklung auftreten, und MongoDB-Lösungen anhand spezifischer Codebeispiele vorgestellt. Einleitung: Im Softwareentwicklungsprozess ist das Datenbankdesign ein wichtiges Glied. Herkömmliche relationale Datenbanken weisen bei der Verarbeitung großer Datenmengen einige Leistungs- und Skalierbarkeitsprobleme auf. Und MongoD

Golang-Lerndatenbank-Designpraxis für Webanwendungen Golang-Lerndatenbank-Designpraxis für Webanwendungen Jun 24, 2023 am 10:33 AM

Golang ist eine von Google entwickelte Programmiersprache. Aufgrund ihrer Benutzerfreundlichkeit, überlegenen Leistung und plattformübergreifenden Funktionen wird sie in der modernen Webanwendungsentwicklung immer beliebter. Bei der Entwicklung von Webanwendungen ist das Datenbankdesign ein sehr wichtiger Teil. In diesem Artikel stellen wir vor, wie man das Datenbankdesign bei der Entwicklung von Webanwendungen mit Golang übt. Auswahl einer Datenbank Zunächst müssen wir eine geeignete Datenbank auswählen. Golang unterstützt eine Vielzahl von Datenbanken, wie MySQL, Po

Design und Anwendung von PHP- und MySQL-Datenbanken Design und Anwendung von PHP- und MySQL-Datenbanken Jun 20, 2023 am 09:27 AM

PHP und MySQL sind ein leistungsstarkes Paar mit einem breiten Anwendungsspektrum. In der Internetbranche sind PHP und MySQL zur Standardkonfiguration des Technologie-Stacks geworden, und eine große Anzahl von Websites, Webanwendungen, Backend-Managementsystemen und anderen Anwendungen hat diese Kombination übernommen. In diesem Artikel werden das Design und die Anwendung von PHP- und MySQL-Datenbanken untersucht und einige Best Practices vorgestellt. 1. Vorteile von PHP und MySQL-Datenbank PHP ist eine quelloffene, plattformübergreifende, serverseitige Web-Programmiersprache mit vielfältigen Einsatzmöglichkeiten. MySQL ist ein

Was sind die wichtigsten Schritte beim Datenbankdesign? Was sind die wichtigsten Schritte beim Datenbankdesign? Dec 29, 2020 pm 04:13 PM

Schritte: 1. Anforderungen sammeln und analysieren, um ein Datenwörterbuch und ein Datenflussdiagramm zu erhalten. 2. Benutzeranforderungen synthetisieren, zusammenfassen und abstrahieren, um ein konzeptionelles Modell zu erstellen. 4. Entwerfen der physischen Struktur 5. Erstellen Sie eine Datenbank, kompilieren und debuggen Sie Anwendungen und organisieren Sie Daten in der Datenbank. 6. Bewerten, anpassen und ändern Sie das Datenbanksystem.

Ausführliche Erläuterung der Anwendung des zusammengesetzten MySQL-Primärschlüssels im Datenbankdesign Ausführliche Erläuterung der Anwendung des zusammengesetzten MySQL-Primärschlüssels im Datenbankdesign Mar 15, 2024 am 11:33 AM

Detaillierte Erläuterung der Anwendung des zusammengesetzten MySQL-Primärschlüssels im Datenbankdesign. Der zusammengesetzte MySQL-Primärschlüssel bezieht sich auf einen Primärschlüssel, der aus mehreren Feldern besteht. Ein Datensatz wird durch die Kombination der Werte dieser Felder eindeutig identifiziert. Beim Datenbankdesign werden häufig zusammengesetzte Primärschlüssel verwendet, insbesondere wenn eine Entität eindeutig identifiziert werden muss. In diesem Artikel werden das Konzept, die Entwurfsprinzipien und spezifische Codebeispiele von zusammengesetzten MySQL-Primärschlüsseln ausführlich vorgestellt. 1. Das Konzept des zusammengesetzten MySQL-Primärschlüssels In MySQL ist der Primärschlüssel ein Feld, das zur eindeutigen Identifizierung jeder Datenzeile in der Tabelle verwendet wird.

So implementieren Sie das Datenbankdesign für Produkt-SKUs mit mehreren Spezifikationen in PHP So implementieren Sie das Datenbankdesign für Produkt-SKUs mit mehreren Spezifikationen in PHP Sep 06, 2023 am 09:03 AM

So implementieren Sie das Datenbankdesign für Produkt-SKUs mit mehreren Spezifikationen in PHP. In E-Commerce-Plattformen sind Produktspezifikationen ein sehr wichtiges Konzept. Unter Produktspezifikationen können die verschiedenen Attribute und Eigenschaften des Produkts verstanden werden, wie z. B. Größe, Farbe, Gewicht usw. In praktischen Anwendungen müssen wir für unterschiedliche Spezifikationen häufig unterschiedliche Preise, Lagerbestände, Bilder und andere Informationen für jede Kombination festlegen. Dazu müssen wir eine geeignete Datenbankstruktur entwerfen, um Produktspezifikationen und zugehörige Informationen zu speichern und zu verwalten. In diesem Artikel wird erläutert, wie Sie Produkt-SKUs mit mehreren Spezifikationen in PHP implementieren

Interpretation der Golang-Sprachfunktionen: ORM-Framework und Datenbankdesign Interpretation der Golang-Sprachfunktionen: ORM-Framework und Datenbankdesign Jul 17, 2023 pm 11:33 PM

Interpretation der Golang-Sprachfunktionen: ORM-Framework und Datenbankdesign Einführung: In den letzten Jahren hat die Anwendung von Datenbanken mit der Entwicklung des Cloud Computing und dem Aufstieg von Big Data immer mehr Verbreitung gefunden. Um die Datenbank komfortabler bedienen zu können, wurde das ORM-Framework (Object Relational Mapping) ins Leben gerufen. Als moderne Programmiersprache verfügt Golang über starke Parallelitätsfähigkeiten und effiziente Leistung. In diesem Artikel wird die Methode zur Verwendung des ORM-Frameworks für das Datenbankdesign in der Golang-Sprache vorgestellt und relevante Codebeispiele angehängt. 1. ORM-Framework ORM (O

See all articles