小编all*_*nos的帖子

重复键错误不会取消/回滚mysql事务

在mysql innodb事务中,我希望重复键错误导致回滚.它没有,而是简单地抛出错误并继续下一个命令.一旦达到COMMIT命令,将提交事务,没有重复键引发命令.

这是预期的行为吗?如果是这样,那么如何进行设置以便在发生此类错误时回滚事务而不是提交事务?

测试环境:

CREATE TABLE `test` (  
  `id` int(11) NOT NULL, 
  PRIMARY KEY (`id`) 
) ENGINE=InnoDB DEFAULT CHARSET=latin1 

BEGIN;
     INSERT INTO test VALUES (5);
     INSERT INTO test VALUES (5);
COMMIT;
Run Code Online (Sandbox Code Playgroud)

预期结果:表格test为空

实际结果:table test包含一个值为5的记录

mysql transactions rollback

9
推荐指数
2
解决办法
3399
查看次数

试图设置 Marketplace SDK 的“项目密钥与当前项目无关”

我正在尝试发布一个仅对我的 Google Apps 域可见的 Google Docs 插件,然后自动为域中的每个人安装它

我有:

  1. 在 Google Drive 中制作了一个脚本,与域中的每个人共享
  2. 使用 将其部署到开发人员仪表板Publish -> Deploy as Addon,并Publish in Google Apps Marketplace关闭
  3. 从开发人员仪表板推送它,使其仅对我的域的用户可见,并为其提供所有必要的字段和图像
  4. 验证域中的其他人可以通过转到Addons -> Get addonsGoogle 文档中的 ,将过滤器切换到 来安装插件For mydomain.com。还验证了以这种方式安装时它可以工作。
  5. 在 中创建了一个新项目Google Developers Console,添加了 Google Marketplace SDK 并创建了一个 OAuth2 客户端 ID

我被困在“配置市场 SDK”的步骤上,特别是其中Docs add-on extension选项的项目键,我一直在那里Project Key is not associated with current project.出错。

我相信我需要完成这一步,以便我可以在Publish in Google Apps Marketplace打开的情况下重新执行步骤 2 ,然后最终为每个人启用它。

不应影响事物但可能值得注意的步骤:

  • 我不是域的所有者/管理员,但管理员正在协助我解决卡住的步骤。(例如创建 OAuth2 客户端 …

google-apps-script google-apps-marketplace

5
推荐指数
1
解决办法
967
查看次数