Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Gỡ lỗi kích hoạt MySQL

một cách thay thế để kiểm tra nó bằng cách tạm thời debug bảng . Trong ví dụ ở đây, họ tạo nó trong một debug của riêng mình cơ sở dữ liệu.

Bước 1: Tạo bảng

DROP TABLE IF EXISTS debug;
CREATE TABLE debug (
  proc_id varchar(100) default NULL,
  debug_output text,
  line_id int(11) NOT NULL auto_increment,
  PRIMARY KEY  (line_id)
)

Bước 2: Tạo SP gỡ lỗi để điền vào bảng gỡ lỗi

DELIMITER $$

DROP PROCEDURE IF EXISTS `debug_insert` $$
CREATE PROCEDURE `debug_insert`(in p_proc_id varchar(100),in p_debug_info text)
begin
  insert into debug (proc_id,debug_output)
  values (p_proc_id,p_debug_info);
end $$

DROP PROCEDURE IF EXISTS `debug_on` $$
CREATE PROCEDURE `debug_on`(in p_proc_id varchar(100))
begin
  call debug_insert(p_proc_id,concat('Debug Started :',now()));
end $$

DROP PROCEDURE IF EXISTS `debug_off` $$
CREATE PROCEDURE `debug_off`(in p_proc_id varchar(100))
begin
  call debug_insert(p_proc_id,concat('Debug Ended :',now()));
  select debug_output from debug where proc_id = p_proc_id order by line_id;
  delete from debug where proc_id = p_proc_id;
end $$

Bước 3: Gọi SP gỡ lỗi trong trình kích hoạt của bạn

Như thế này,

CREATE PROCEDURE test_debug()
begin
declare l_proc_id varchar(100) default 'test_debug';
  call debug_on(l_proc_id);
  call debug_insert(l_proc_id,'Testing Debug');
  call debug_off(l_proc_id);
end $$

Kết quả là bảng gỡ lỗi sẽ được điền như sau,

+------------------------------------+
| debug_output                       |
+------------------------------------+
| Debug Started :2006-03-24 16:10:33 |
| Testing Debug                      |
| Debug Ended :2006-03-24 16:10:33   |
+------------------------------------+


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cách nhận giá trị cho mỗi ngày trong tháng

  2. Máy chủ MySQL trên MAMP-Windows sẽ không khởi động

  3. Truy vấn tổng hợp có điều kiện với một nhóm theo

  4. MySql:đặt một biến với một danh sách

  5. Java, làm thế nào để thay đổi cơ sở dữ liệu hiện tại sang cơ sở dữ liệu khác?