Apabila bekerja dengan pangkalan data, selalunya berguna untuk mengetahui lajur mana dalam jadual anda membenarkan nilai NULL dan yang tidak. Anda boleh mendapatkan maklumat ini dengan mudah menggunakan pertanyaan SQL pada skema maklumat pangkalan data anda. Di bawah, saya akan menunjukkan kepada anda cara melakukan ini untuk kedua-dua MySQL dan PostgreSQL.
Untuk mendapatkan senarai lajur dan kekangan NULLnya untuk jadual tertentu dalam MySQL, anda boleh menanyakan jadual INFORMATION_SCHEMA.COLUMNS. Berikut ialah pertanyaan yang boleh anda gunakan:
SELECT COLUMN_NAME AS 'Column Name', IS_NULLABLE AS 'Is Nullable' FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA = 'your_database_name' AND TABLE_NAME = 'your_table_name' ORDER BY ORDINAL_POSITION;
Penjelasan:
Begitu juga, dalam PostgreSQL, anda boleh menanyakan jadual information_schema.columns untuk mendapatkan maklumat ini. Berikut ialah pertanyaan yang setara:
SELECT column_name AS "Column Name", is_nullable AS "Is Nullable" FROM information_schema.columns WHERE table_schema = 'public' AND table_name = 'your_table_name' ORDER BY ordinal_position;
Penjelasan:
Andaikan anda mempunyai jadual bernama pengguna dalam pangkalan data bernama my_database. Begini cara anda menanyakan kekangan:
SELECT COLUMN_NAME AS 'Column Name', IS_NULLABLE AS 'Is Nullable' FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA = 'my_database' AND TABLE_NAME = 'users' ORDER BY ORDINAL_POSITION;
SELECT column_name AS "Column Name", is_nullable AS "Is Nullable" FROM information_schema.columns WHERE table_schema = 'public' AND table_name = 'users' ORDER BY ordinal_position;
Column Name | Is Nullable |
---|---|
id | NO |
name | NO |
YES | |
created_at | NO |
updated_at | YES |
Menggunakan pertanyaan ini, anda boleh menyemak kekangan NULL lajur jadual anda dengan mudah, membantu anda memahami skema dan keperluan data dengan lebih baik.
Atas ialah kandungan terperinci Memaparkan Lajur Jadual dan Kekangan NULL dalam SQL. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!