MYSQL 语句在框架中输入时有效,保存时无法让框架使用函数 mysql

MYSQL statement works when entered in framework, can't get framework to work with function when saved mysql

历史等: 项目是时间表条目,目前在 excel 工作,现在正在转移到 DB 使用 excel 2010 作为快速应用程序开发的前端。 框架是SAVETODB 我不是 DB 专家,我知道如何编写 select stmt 多年但第一次设计完整的 DB

目标:保存数据库 table 在 excel 中输入的更改返回 mysql 使用 mysql 存储过程(当存储过程代码保存在 savetodb 中时有效)

不确定我会在这里获得多少 SAVETODB 帮助(无法找到产品特定的表格),我以前从未使用过它,但如果它有效,那么它非常适合我的需要。

因此,在 SAVETODB 中,您可以输入 update/insert/delete 查询,或者您可以将其指向数据库 (mysql) 中保存的程序。当我将 mysql 语句输入到 savetodb 时,我可以从 excel 保存到数据库,但是当在 mysql 中保存为过程并从 savetodb 调用时 我无法从 excel.

保存到数据库

我说这不起作用的原因是 savetdb "save" 按钮在第二次加载时变灰 table

首先获取几个字段以确保语句正确,

WORKS(即 savetodb 允许保存更改)savetodb 中的所有代码 - 这些是 savetodb 设置(linked 图像中的绿色)

不起作用,即使用存储过程这些是 savetodb 设置(linked 图像中的粉红色)

编辑 0215 更新了下面的图形,savetdb 也可以接受基础 table 如果引用为 insert/update/delete 过程。这需要数据库名称以 table 开头,但即使数据库名称以过程开头,它仍然不允许保存。也许我引用的程序有误?

当来自 Navicat运行

时,以下三个可以正常工作并更新 data/perform

MYSQL 插入过程的代码 - 这三个是我试图使用第二组 savetodb 设置

CREATE DEFINER = `root`@`localhost` PROCEDURE `NewProc`(IN `id` int,IN `thenumber` char(25),IN `thedate` datetime)
BEGIN
 INSERT INTO time1 
 set Date = thedate, Reference = thenumber;
 END;

MYSQL 更新程序代码

CREATE DEFINER = `root`@`localhost` PROCEDURE `NewProc`(IN `idin` int,IN `thenumber` char(25),IN `thedate` datetime)
update `test`.`time1` 
SET 
`Reference` = 'poop', `Date` = '2015-01-15 00:00:00' 
WHERE ID = idin;

MYSQL 删除程序代码

CREATE DEFINER = `root`@`localhost` PROCEDURE `NewProc`(IN `idin` int)
BEGIN
DELETE FROM time1
WHERE
    ID = `idin`;
END;

这是 SAVETODB 上讨论保存更改的页面 link http://
www.savetodb.com /help4/configuring-saving-changes.htm

所以这在 savetodb 中实际上非常简单。跳过所有定义器内容,只需输入以 "Select/insert/update" 等开头的查询

Savetodb 是一个 excel 插件,他们实际上创建了自己的 db/schema 来保存所有选项,因此我们作为用户保存的查询只是存储在 table 中。

要在数据之外引用 excel 工作表单元格 table 只需 excel 命名它们(命名范围)然后在查询中使用 : 符号引用它们。