Rumah >pangkalan data >tutorial mysql >Bagaimanakah Saya Boleh Mengakses Jadual Dinamakan Dinamik Dalam Fungsi SQL?
Nama Jadual Dinamik dalam Fungsi Prosedur Tersimpan
Dalam SQL, fungsi tidak boleh diubah dan tidak boleh mengubah suai data. Oleh itu, pernyataan yang disediakan tidak boleh digunakan dalam fungsi, yang menimbulkan cabaran apabila cuba mengakses jadual dengan nama dinamik.
Untuk mengatasi isu ini, prosedur tersimpan boleh digunakan. Prosedur tersimpan boleh menggunakan penyata yang disediakan dan parameter OUT untuk mengembalikan nilai.
Berikut ialah contoh prosedur tersimpan yang boleh mendapatkan semula nama daripada jadual yang ditentukan secara dinamik:
CREATE PROCEDURE getName (IN tableName VARCHAR(50), IN myId INT(11), OUT myName VARCHAR(50)) BEGIN SET @GetName = CONCAT('SELECT name INTO @var1 FROM ', tableName, ' WHERE>
Untuk menggunakan prosedur , parameter IN ditetapkan dengan nama jadual dan ID, manakala parameter OUT digunakan untuk mendapatkan semula nama.
SET @tableName = 'tbl'; SET @myId = 1005; SET @name = NULL; CALL getName(@tableName, @myId, @name); SELECT @name;
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengakses Jadual Dinamakan Dinamik Dalam Fungsi SQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!