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

Làm cách nào để gọi các thủ tục lưu trữ MySQL từ Perl?

Các thủ tục được lưu trữ trong MySQL tạo ra tập dữ liệu cần bạn sử dụng Perl DBD ::mysql 4.001 trở lên. ( http://www.perlmonks.org/?node_id=609098 )

Dưới đây là chương trình thử nghiệm sẽ hoạt động trong phiên bản mới hơn:

mysql> delimiter //
mysql> create procedure Foo(x int)
  -> begin
  ->   select x*2;
  -> end
  -> //

perl -e 'use DBI; DBI->connect("dbi:mysql:database=bonk", "root", "")->prepare("call Foo(?)")->execute(21)'

Nhưng nếu bạn có phiên bản DBD ::mysql quá cũ, bạn sẽ nhận được kết quả như sau:

DBD::mysql::st execute failed: PROCEDURE bonk.Foo can't return a result set in the given context at -e line 1.

Bạn có thể cài đặt DBD mới nhất bằng CPAN.



  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ó cách nào để thực hiện INSERT ... ON DUPLICATE KEY UPDATE trong Zend Framework 1.5 không?

  2. Cân bằng tải cơ sở dữ liệu-Aware:Cách chuyển từ HAProxy sang ProxySQL

  3. Mức độ phân tách truy vấn

  4. so sánh ngày giờ của mysql

  5. Làm cách nào để sử dụng mysql trong C ++?