当前位置: 首页 > 知识库问答 >
问题:

再次重用释放的游标进行删除

彭俊智
2023-03-14

我已经声明了一个游标,它获取了在特定月份创建的所有票证ID,我正在使用它进行插入。

一旦插入成功,我将释放光标并提交事务。

    SET @Tickets= CURSOR READ_ONLY FOR SELECT TICKET_ID FROM TICKETMASTER

打开@tickets关闭@tickets释放@tickets设置@message='success'

现在我正在开始另一个事务以进行删除

开始事务删除;

--

我不想再次设置光标来获取票证ID。希望使用相同的@tickets光标进行删除,只需再次打开即可。

我已经释放了@tickets光标,所以我是否可以通过给出

如果(message='success')从TICKETMASTER中删除,则打开@tickets,其中TicketId=@tickets

共有1个答案

晋西岭
2023-03-14

您可以从Ticketmaster中选择ticketid进入#temptable,并将其用作两个游标的源。也可以在同一游标主体内同时执行插入和删除操作。

 类似资料:
  • 问题内容: 我有一个JTable,其属性AutoCreateRowSorter设置为true。单击时效果很好,但如果单击时仅将鼠标移动1px,则不会出现排序,这在某些情况下不舒服。如何解决这个问题? UPD我只想在释放鼠标时显示排序。 问题答案: 肮脏的方法(请阅读: 如果您不是绝对地绝望,请确切地知道自己在做什么!请不要这样做 ),方法是挂接到uiDelegate安装的MouseListener

  • 问题内容: GNU手册页定义了当使用相同的指针(先前由分配)两次调用时,“发生未定义的行为”。 那是什么样的行为? 在哪里可以找到有关这种错误的更多信息? 问题答案: “未定义的行为”仅表示不需要以任何特定方式处理该情况的实现; 任何 行为或结果均被视为“正确”。 多次对指针进行操作的结果取决于; 的基础实现;结果可能是崩溃和核心转储,或者可能破坏竞技场(破坏将来的分配/释放),或者可能完全忽略双

  • 最近,我在一个程序中捕获lambda中的时,遇到了一个奇怪的双重免费bug。我可以用以下最小的例子来减少它: 使用GCC 12.2.0和地址清理器编译并运行它,会在中生成一个双空闲: 一旦函数返回,结构中的拥有唯一拥有封闭的对象的。这意味着,将分配给它应该会破坏,这反过来会释放对象。 这里发生的似乎是首先运行lambda的析构函数,它在释放内存之前销毁、object及其附带的 std::funct

  • 5.8.2.再重构一次? 我们希望用户能够在不同的界面中感受到一致的体验,也希望我们自己管理代码能够更容易些——再重构一次吧。在此我们引入一个BaseActivity作为所有Activity的基类,将重用的代码提取出来。

  • 我有以下课程: 在活动中,我观察会话并对每个更改执行网络操作: 现在我有一个Okhttp请求拦截器,当网络响应不是200代码时,我将会话实例从有效设置为无效。 事情是这样的: < li >在初始订阅会话存储时,执行< code>getThingForValid()并失败。 < li>OkHttp截获失败并设置新的会话。 < li >会话存储发出一个新的现在无效的会话。 < li >新发射执行< c

  • 问题内容: 我知道这个话题已经出现好几次了,但是我仍然停留在某一点。我需要编写一个模拟管道的程序。 我的代码在这里:http : //ideone.com/fedrB8 它对于多达3个命令完全可以正常工作,但是当涉及4个或更多命令时,它不再起作用,并且经过数小时的分析,我仍然无法弄清问题所在。 问题答案: 不是专家,但似乎以下几行是问题所在: 尽量不要在那里关闭。 我认为,父母正在尝试关闭与孩子同