Bug #93814 Importing using Procedures needs mysql.proc table while it doesn't exist
Submitted: 4 Jan 2019 9:28 Modified: 23 May 2019 21:35
Reporter: Suhkjin Hur Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL for Windows: MySQL for Excel Severity:S2 (Serious)
Version:1.3.7 OS:Windows (Windows 10 64 bit)
Assigned to: CPU Architecture:x86

[4 Jan 2019 9:28] Suhkjin Hur
Description:
Tried to import using stored procedures in MySQL Server 8.0.13, but an error was issued saying "mysql.proc doesn't exist".

By the way, it seems that MySQL Server 8.0.13 doesn't have such a table any more.

How to repeat:

(1) Install 'MySQL Server 8.0.13', 'MySQL Connector Net 8.0.13', and 'MySQL For Excel 1.3.7'.
(2) Create a stored procedure
(3) Import data using the procedure from (2)

Suggested fix:
Fix 'MySQL For Excel' so that it doesn't require mysql.proc when using a stored procedure.
[4 Jan 2019 9:35] MySQL Verification Team
Please provide the procedure script or it test case  you are using. Thanks.
[7 Jan 2019 3:11] Suhkjin Hur
The following is the procedure that caused the error.

CREATE DEFINER=`sjin75`@`localhost` PROCEDURE `proc_pv`(date_from DATE, date_to DATE)
BEGIN
    SELECT *
    FROM pv_basic
    WHERE dt BETWEEN date_from and date_to;
END
[7 Jan 2019 3:13] Suhkjin Hur
This procedure perfectly worked with MySQL workbench.
[7 Jan 2019 11:00] MySQL Verification Team
Thank you for the feedback. Sorry my prior request was incomplete, please provide the dump of the table (private if you wish).
[8 Jan 2019 6:49] Suhkjin Hur
Here are table dump and procedure that I used as a test case (Please ignore the procedure I provided previously. This one is much simpler.)

(1) Table Dump

-- MySQL dump 10.13  Distrib 8.0.13, for Win64 (x86_64)
--
-- Host: localhost    Database: metrics
-- ------------------------------------------------------
-- Server version	8.0.13

/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
 SET NAMES utf8 ;
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
/*!40103 SET TIME_ZONE='+00:00' */;
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;

--
-- Table structure for table `test`
--

DROP TABLE IF EXISTS `test`;
/*!40101 SET @saved_cs_client     = @@character_set_client */;
 SET character_set_client = utf8mb4 ;
CREATE TABLE `test` (
  `id` int(11) NOT NULL,
  `data` varchar(45) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='test table';
/*!40101 SET character_set_client = @saved_cs_client */;

--
-- Dumping data for table `test`
--

LOCK TABLES `test` WRITE;
/*!40000 ALTER TABLE `test` DISABLE KEYS */;
INSERT INTO `test` VALUES (1,'A'),(2,'B'),(3,'C'),(4,'D');
/*!40000 ALTER TABLE `test` ENABLE KEYS */;
UNLOCK TABLES;
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;

/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;

-- Dump completed on 2019-01-08 15:29:07

(2) Procedure

CREATE DEFINER=`root`@`localhost` PROCEDURE `test_procedure`()
BEGIN
    SELECT *
    FROM test;
END
[15 Jan 2019 13:33] MySQL Verification Team
Thank you for the feedback.
[23 Apr 2019 22:34] Javier TreviƱo
Posted by developer:
 
Updated the MySql.Data assembly used by MySQL for Excel to a newer version that fixes the bug where schema information is retrieved from information_schema instead of the older mysql system tables.
[23 May 2019 21:35] Christine Cole
Posted by developer:
 
Fixed as of the upcoming MySQL for Excel 1.3.8 release, and here's the changelog entry:

When schema information was retrieved using a stored procedure, the
operation was unable to find the mysql.proc system table. This operation
now retrieves schema information from INFORMATION_SCHEMA tables.

Thank you for the bug report.