Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

bagaimana cara menggunakan variabel dalam membuat pernyataan basis data?

Anda hanya perlu menggunakan pernyataan yang sudah disiapkan, berikut kode kerjanya:

DELIMITER //

drop procedure if exists create_db //

create procedure create_db(name TEXT)
BEGIN
  DECLARE temp TEXT;
  DECLARE user TEXT;
  SELECT SCHEMA_NAME FROM INFORMATION_SCHEMA.SCHEMATA WHERE SCHEMA_NAME = name INTO temp;
  if temp = name then
  SIGNAL SQLSTATE '45002' SET MESSAGE_TEXT = 'This database already exist';
    else
    SELECT USER() INTO user;

    SET @s = CONCAT('CREATE DATABASE ', name);
    PREPARE stmt_create FROM @s;
    EXECUTE stmt_create;
    DEALLOCATE PREPARE stmt_create;

    SET @s = CONCAT('GRANT ALL PRIVILEGES ON ', name, '.* TO ', user, ' WITH GRANT OPTION');
    PREPARE stmt_grant FROM @s;
    EXECUTE stmt_grant;
    DEALLOCATE PREPARE stmt_grant;

  END IF;
END //

DELIMITER ;



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Pencarian teks lengkap MySql di PHP menggunakan string yang mengandung kata kunci

  2. SQL meminta beberapa tabel, dengan beberapa gabungan dan bidang kolom dengan daftar yang dipisahkan koma

  3. DO dan DONT untuk Indeks

  4. Klausa WHERE dalam pernyataan INSERT menggunakan mysql/php

  5. MySQL BUAT TABEL JIKA TIDAK ADA -> Kesalahan 1050