Rumah pembangunan bahagian belakang tutorial php 数据库设计的困惑,该怎么解决

数据库设计的困惑,该怎么解决

Jun 13, 2016 pm 01:44 PM
join quot

数据库设计的困惑
情况是这样的,我以前做网站的时候遇到像“推荐”,“置顶”啊之类的,都是在表里加一个字段如“IsTop”或是"IsDelete"等,用BOOL型。可是最近来到新公司,公司的领导不是这么做的。如:“IsTop”表示是否删除,他就用建一个news_delete表,里面的记录就是己经"IsTop"的ID值。

这么做好像也不错,用起也很方便。要增加别的类似别的,不用在修改原有的表了。请问在数据库设计方面的高手们,如何是好。

------解决方案--------------------
感觉都可以,如果觉得数据结构复杂,就按照第二种来设计,拆分开来。
------解决方案--------------------
要学会宽容
对于你的描述,没有一定的规则

附加的属性与基础数据有紧密的联系
很显然,你的方案要优于分表方案
------解决方案--------------------
自定义字段的两种做法,一种是往本表加字段,一种是建一自定义字段表存值。个人认为各有千秋吧,后者语句稍微复杂些,也不好弄索引,搜索不方便,需要join操作,数据增多,可能会有效率问题,不过胜在扩展方便,前者简单暴力,方便设置索引进行搜索,不过不好扩展业务,最好两种方案都保留,具体问题具体做法。
------解决方案--------------------

探讨

引用:
要学会宽容
对于你的描述,没有一定的规则

附加的属性与基础数据有紧密的联系
很显然,你的方案要优于分表方案


您的意思是说 我的方案 效率和性能好,使用方便。是这样的吧。

------解决方案--------------------
探讨

引用:
自定义字段的两种做法,一种是往本表加字段,一种是建一自定义字段表存值。个人认为各有千秋吧,后者语句稍微复杂些,也不好弄索引,搜索不方便,需要join操作,数据增多,可能会有效率问题,不过胜在扩展方便,前者简单暴力,方便设置索引进行搜索,不过不好扩展业务,最好两种方案都保留,具体问题具体做法。

foolbirdflyfirst 能有……

------解决方案--------------------
问题解决了 也该把贴结了。看看你的结贴率。0% 发帖:7 正常结贴:0
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
2 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Repo: Cara menghidupkan semula rakan sepasukan
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Cara mendapatkan biji gergasi
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Cara menggunakan JOIN dalam MySql Cara menggunakan JOIN dalam MySql Jun 04, 2023 am 08:02 AM

Maksud JOIN sama seperti perkataan Inggeris "join". Ia bergabung dengan dua jadual dan boleh dibahagikan secara kasar kepada inner join, outer join, right join, left join dan natural join. Mula-mula buat dua jadual, berikut digunakan sebagai contoh CREATETABLEt_blog(idINTPRIMARYKEYAUTO_INCREMENT,titleVARCHAR(50),typeIdINT);SELECT*FROMt_blog;+----+------+--------+ |. id|tajuk|typeId|+----+-------+--------+|1|aaa|1||2|bbb|2||3|ccc|3 |

Apakah prinsip penggunaan MySQL Join? Apakah prinsip penggunaan MySQL Join? May 26, 2023 am 10:07 AM

Join type leftjoin menggunakan jadual kiri sebagai jadual pemanduan dan jadual kiri sebagai asas set hasil Data dari jadual kanan disambungkan kepada set hasil kanan sebagai jadual pemanduan dan jadual kanan sebagai asas set hasil untuk menyambungkan jadual kiri Data ditambah kepada set hasil innerjoin Set keputusan mengambil persilangan dua jadual fulljoin fulljoin. Kesatuan menggantikan kesatuan. Perbezaan antara kesatuan dan kesatuan adalah bahawa kesatuan akan menyahduplikasi produk Cartesian crossjoin mencipta set hasil, ia akan diluluskan mengikut syarat.

php提交表单通过后,弹出的对话框怎样在当前页弹出,该如何解决 php提交表单通过后,弹出的对话框怎样在当前页弹出,该如何解决 Jun 13, 2016 am 10:23 AM

php提交表单通过后,弹出的对话框怎样在当前页弹出php提交表单通过后,弹出的对话框怎样在当前页弹出而不是在空白页弹出?想实现这样的效果:而不是空白页弹出:------解决方案--------------------如果你的验证用PHP在后端,那么就用Ajax;仅供参考:HTML code

Apakah pertanyaan menyertai mysql dan kaedah pertanyaan berbilang? Apakah pertanyaan menyertai mysql dan kaedah pertanyaan berbilang? Jun 02, 2023 pm 04:29 PM

Berbanding dengan pertanyaan sertai dan berbilang pertanyaan, yang manakah lebih cekap, pertanyaan berkaitan berbilang jadual MySQL atau pertanyaan berbilang jadual tunggal? Apabila jumlah data tidak cukup besar, tiada masalah menggunakan gabungan, tetapi ia biasanya dilakukan pada lapisan perkhidmatan Pertama: sumber pengkomputeran pangkalan data yang berdiri sendiri adalah sangat mahal, dan pangkalan data perlu menyediakan kedua-dua penulisan dan membaca pada masa yang sama, yang memerlukan penggunaan CPU Untuk membuat pangkalan data Daya tampung menjadi lebih tinggi, dan perniagaan tidak mengambil berat tentang jurang kelewatan ratusan mikrosaat hingga milisaat Perniagaan akan meletakkan lebih banyak pengiraan ke dalam lapisan perkhidmatan Lagipun, sumber pengkomputeran boleh dengan mudah dikembangkan secara mendatar, dan pangkalan data adalah sukar, jadi kebanyakan perniagaan akan meletakkan operasi pengkomputeran tulen ke dalam lapisan perkhidmatan, dan menggunakan pangkalan data sebagai sistem kv dengan keupayaan transaksi.

Cara menggunakan JOIN dalam MySQL Cara menggunakan JOIN dalam MySQL Jun 03, 2023 am 09:30 AM

Pengenalan A unik + AB awam B unik + AB awam AB unik AB awam A unik B unik A unik + B unik + AB awam A unik + B unik Amalan mencipta jadual jabatan DROPTABLEIFEXISTS`dept`;CREATETABLE`dept`(`dept_id`int( 11)NOTNULLAUTO_INCREMENT,`dept_name`varchar(30)DEFAULTNULL,`dept_number`int(11)DEFAULTNULL,PRIMARYKEY(`dept_id`))ENGINE =InnoDBAUT

Gunakan fungsi JOIN MySQL untuk menyertai jadual Gunakan fungsi JOIN MySQL untuk menyertai jadual Jul 26, 2023 am 08:37 AM

Gunakan fungsi JOIN MySQL untuk menyertai jadual Dalam MySQL, JOIN ialah operasi yang sangat biasa yang membolehkan kami menyertai dua atau lebih jadual berdasarkan medan yang berkaitan di antara mereka. Ini memudahkan untuk membuat pertanyaan dan mendapatkan data yang berkaitan daripada berbilang jadual, meningkatkan kecekapan dan fleksibiliti pertanyaan. Artikel ini akan menggunakan contoh kod untuk menunjukkan cara menggunakan fungsi JOIN MySQL untuk menyertai jadual. Mula-mula buat dua jadual sampel: pelajar dan markah. Jadual pelajar mengandungi pelajar

Bagaimana untuk mengoptimumkan pernyataan gabungan dalam MySQL Bagaimana untuk mengoptimumkan pernyataan gabungan dalam MySQL Jun 03, 2023 am 09:31 AM

SimpleNested-LoopJoin Mari kita lihat cara mysql berfungsi apabila melaksanakan operasi gabungan. Apakah kaedah gabungan biasa? Seperti yang ditunjukkan dalam rajah, apabila kita melakukan operasi sambungan, jadual di sebelah kiri ialah jadual pemanduan dan jadual di sebelah kanan ialah jadual pemacu SimpleNested-LoopJoin Operasi sambungan ini adalah untuk mengambil rekod daripada jadual pemanduan dan kemudian padankan rekod jadual yang dipandu satu persatu Jika keadaan Jika ada padanan, keputusan dikembalikan. Kemudian rekod seterusnya dalam jadual pemacu diambil untuk pemadanan sehingga semua data dalam jadual pemacu dipadankan Oleh kerana ia memakan masa untuk mendapatkan semula data daripada jadual pemacu setiap kali, MySQL tidak menggunakan algoritma ini untuk melaksanakan operasi sambungan. BlockNested-LoopJ

Bagaimana untuk meningkatkan prestasi melalui pengoptimuman JOIN dalam MySQL Bagaimana untuk meningkatkan prestasi melalui pengoptimuman JOIN dalam MySQL May 11, 2023 am 08:48 AM

Dalam kebanyakan aplikasi web, operasi pangkalan data adalah bahagian yang paling asas dan penting. Sebagai sistem pengurusan pangkalan data hubungan yang paling biasa digunakan pada masa ini, MySQL menjadi tuan rumah laman web dan aplikasi yang tidak terkira banyaknya dan juga menghadapi tekanan yang semakin meningkat pada pemprosesan data dan akses pertanyaan. Dalam konteks ini, pengoptimuman prestasi telah menjadi bahagian penting dalam pengurusan pangkalan data MySQL, dan operasi JOIN adalah perkara utama. Sambungan JOIN ialah salah satu pernyataan pertanyaan data yang paling biasa digunakan dalam MySQL. wujud

See all articles