Rumah  >  Artikel  >  pangkalan data  >  Bolehkah pandangan mysql mencipta indeks?

Bolehkah pandangan mysql mencipta indeks?

青灯夜游
青灯夜游asal
2022-06-28 18:35:136701semak imbas

Paparan mysql tidak boleh mencipta indeks. Paparan ialah jadual maya yang sebenarnya tidak wujud dalam pangkalan data Ia tidak mempunyai baris dan lajur sebenar (data baris dan lajur berasal daripada jadual yang digunakan dalam pertanyaan yang mentakrifkan paparan itu); struktur terdiri daripada satu atau lebih lajur dalam jadual data, jadi tiada indeks boleh dibuat dalam paparan, tiada kunci utama dan pencetus tidak boleh digunakan.

Bolehkah pandangan mysql mencipta indeks?

Persekitaran pengendalian tutorial ini: sistem windows7, versi mysql8, komputer Dell G3.

paparan mysql tidak boleh mencipta indeks.

Paparan MySQL (View) ialah jadual maya yang sebenarnya tidak wujud dalam pangkalan data Ia tidak mempunyai baris dan lajur sebenar Dari jadual yang digunakan dalam pertanyaan yang mentakrifkan paparan, dan juga dijana secara dinamik apabila paparan digunakan.

Pangkalan data hanya menyimpan definisi paparan dan tidak menyimpan data dalam paparan. Data ini disimpan dalam jadual sebenar yang dirujuk oleh pertanyaan yang mentakrifkan paparan. Apabila menggunakan pandangan untuk bertanya data, pangkalan data akan mendapatkan semula data yang sepadan daripada jadual sebenar. Oleh itu, data dalam paparan bergantung pada data dalam jadual sebenar. Sebaik sahaja data dalam jadual sebenar berubah, data yang dipaparkan dalam paparan juga akan berubah.

Indeks ialah struktur pangkalan data khas, yang terdiri daripada satu atau lebih lajur dalam jadual data dan boleh digunakan untuk menanya dengan pantas rekod dengan nilai tertentu dalam jadual data . Bahagian ini akan menerangkan secara terperinci maksud, fungsi, kebaikan dan keburukan indeks.

Melalui indeks, apabila menanyakan data, anda tidak perlu membaca semua maklumat yang direkodkan, tetapi hanya menanya lajur indeks. Jika tidak, sistem pangkalan data akan membaca semua maklumat setiap rekod untuk dipadankan.

Oleh itu: indeks terdiri daripada satu atau lebih lajur dalam jadual data, manakala paparan ialah jadual maya tanpa baris dan lajur sebenar tambahan pula, pandangan mysql tidak boleh mencipta indeks.

Pengetahuan lanjutan: mysql view

Mysql view pada asasnya ialah pernyataan Apabila anda memanggil paparan, sistem pengurusan pangkalan data akan mula-mula Cari pernyataan yang terkandung dalam paparan, mula-mula laksanakan pernyataan yang menjana pandangan, dan kemudian pertanyaan berdasarkan paparan

Kelebihan paparan

Paparan dan jadual ialah pada asasnya Walaupun mereka berbeza, selepas paparan ditakrifkan, strukturnya adalah sama seperti jadual, dan operasi seperti pertanyaan, pengubahsuaian, kemas kini dan pemadaman boleh dilakukan. Pada masa yang sama, paparan mempunyai kelebihan berikut:

1) Sesuaikan data pengguna dan fokus pada data tertentu

Dalam proses aplikasi sebenar, pengguna yang berbeza mungkin mempunyai keperluan yang berbeza untuk data yang berbeza.

Sebagai contoh, apabila pangkalan data wujud pada masa yang sama, seperti jadual maklumat asas pelajar, jadual maklumat kurikulum dan guru, dan jadual lain wujud pada masa yang sama, pengguna yang berbeza boleh menggunakan data mereka sendiri mengikut keperluan. Pandangan untuk pelajar melihat dan mengubah suai maklumat asas mereka, pandangan untuk kakitangan kursus melihat dan mengubah suai jadual kursus dan maklumat guru, dan pandangan untuk guru melihat maklumat pelajar dan jadual maklumat kursus.

2) Permudahkan operasi data

Apabila menggunakan pertanyaan, fungsi agregat sering digunakan dan maklumat daripada medan lain juga mesti dipaparkan. Ia juga mungkin perlu dikaitkan dengan jadual lain, dan pernyataan mungkin sangat panjang, jika tindakan ini kerap berlaku, anda boleh membuat paparan untuk memudahkan operasi.

3) Tingkatkan keselamatan data

Paparan adalah maya dan tidak wujud secara fizikal. Anda hanya boleh memberi pengguna kebenaran melihat tanpa menyatakan kebenaran untuk menggunakan jadual untuk melindungi keselamatan data asas.

4) Kongsi data yang diperlukan

Dengan menggunakan paparan, setiap pengguna tidak perlu menentukan dan menyimpan data yang mereka perlukan Mereka boleh berkongsi data dalam pangkalan data, dan data yang sama hanya perlu disimpan sekali.

5) Tukar format data

Dengan menggunakan paparan, anda boleh memformat semula data yang diambil dan mengatur output ke aplikasi lain.

6) Gunakan semula pernyataan SQL

Paparan menyediakan enkapsulasi operasi pertanyaan dan tidak mengandungi data sendiri Data yang dibentangkan diambil daripada jadual asas mengikut definisi paparan data dalam jadual ditambah atau dipadamkan, paparan juga membentangkan data yang dikemas kini. Setelah paparan ditakrifkan, paparan itu boleh digunakan semula dengan mudah selepas menulis pertanyaan yang diperlukan.

Beri perhatian kepada perbezaan antara intipati paparan dan jadual data, iaitu paparan ialah jadual maya berdasarkan jadual sebenar, dan sumber datanya berdasarkan jadual sebenar.

Apabila menggunakan paparan, anda juga harus memberi perhatian kepada perkara berikut:

  • Mencipta paparan memerlukan hak akses yang mencukupi.

  • Tiada had untuk bilangan tontonan yang boleh anda buat.

  • Paparan boleh bersarang, iaitu pertanyaan yang mendapatkan semula data daripada paparan lain mencipta paparan.

  • Paparan tidak boleh diindeks dan tidak boleh mempunyai pencetus, lalai atau peraturan yang dikaitkan dengannya.

  • Pandangan boleh digunakan dengan jadual.

  • Paparan tidak mengandungi data, jadi setiap kali paparan digunakan, sebarang operasi mendapatkan semula yang diperlukan dalam pertanyaan mesti dilakukan. Jika anda membuat paparan kompleks atau paparan bersarang dengan berbilang sambungan dan keadaan penapis, anda mungkin mendapati prestasi sistem anda merosot teruk. Oleh itu, ujian sistem harus dilakukan apabila menggunakan sejumlah besar aplikasi paparan.

[Cadangan berkaitan: tutorial video mysql]

Atas ialah kandungan terperinci Bolehkah pandangan mysql mencipta indeks?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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