`

mylost存储过程和判断是否存在表的函数

SQL 
阅读更多
create or replace procedure getMyLost(
season in number,--测试用
season_episode out varchar --最终返回结果
)
is
--演示游标的使用
cursor lost_cus is
        select season,episode,to_char(watched_date,'yyyy-mm-dd hh24:mi:ss') watched_date from lost_already  order by season,episode;
season_temp number(1);--随机得出的季
season_sql varchar2(100);--随机得出季的SQL
episode_sql varchar2(100);--得出季的集
episode_temp number(2);--得出季的集的SQL
watched boolean;--有看的控制条件
checkSQL varchar2(200);--检查是否已经看了的SQL
checkCount number(1);
recodeSQL varchar2(200);--记录当前得到的季和集
episodeSum number(2);--被选中季的总集数
begin
watched:=true;
season_sql:='select trunc(dbms_random.value*6)+1 from dual';
for lost in lost_cus
loop
   dbms_output.put_line(lost.season||'==>'||lost.episode||'==>'||lost.watched_date);
end loop;
while watched
loop
  execute immediate season_sql into season_temp;
   episode_sql:='select t.episodesum from lost_season_episode t where t.season = '||season_temp;
  execute immediate episode_sql into episodeSum;
  execute immediate 'select trunc(dbms_random.value*'||episodeSum||')+1 from dual ' into episode_temp;
   checkSQL:='select count(*) from lost_already t where t.season ='||season_temp||' and t.episode = '||episode_temp;
  execute immediate checkSQL into checkCount;
  if checkCount > 0 then
     watched:=true;
   else
     watched:=false;
  end if;
end loop;
recodeSQL:='insert into lost_already(season,episode,watched_date) values ('||season_temp||','||episode_temp||',sysdate)';
execute immediate recodeSQL;
commit;
season_episode:='第'||season_temp||'集 第'||episode_temp||'集';

 判断是否存在表的函数:

create or replace function existtable(
tableName varchar2
) return varchar2
is
sqlText varchar2(200);
begin
sqlText:='select * from '||tableName;
execute immediate sqlText;
return 'exists';
exception
when others then return 'not exists';
end;
 
分享到:
评论

相关推荐

    MySQL存储过程入门学习

    **存储过程**(Stored Procedure)是一种在数据库中存储的预先编写并编译好的SQL程序或函数集合。存储过程的主要优势在于可以提高应用程序的性能和响应速度,同时简化了复杂的业务逻辑处理,并增强了数据安全性。 ###...

    NIOS_II常用指令,常用函数,以及个人的学习心得

    这些函数极大地简化了开发过程。 2. I/O操作函数:如read_byte, write_byte用于与外设进行字节级交互,read_word, write_word用于处理16位或32位数据。还有read_buffer, write_buffer等批量读写函数,提高了数据...

    五子棋游戏开发步骤

    这些函数将被用于处理游戏中的胜负判断和禁手规则。 综上所述,通过以上步骤和关键代码的介绍,我们了解了如何使用C++语言和Visual Studio 2005开发一款基本的五子棋游戏。开发者可以根据这些指导来构建自己的...

    logistic回归的损失函数(lost function)原理

    logistic回归的损失函数和极大似然估计的关系 记 Φ(x)=11+e−θx \Phi(x)=\frac{1}{1+e^-{\theta x}} Φ(x)=1+e−θx1​ 我们可以把这个sigmoid函数的值看做y等于1的后验估计概率,也就是: p(y=1∣x)=Φ(x) p(y=1|...

    C语言链表的操作实例

    在本例中,我们讨论的是如何使用链表来存储和操作队伍的信息,包括队伍名、积分、胜利场数和失利场数。下面我们将深入探讨链表的实现以及如何在C语言中进行链表的操作。 首先,我们需要定义一个结构体来存储队伍...

    Lost

    标题"Lost"可能指的是一个特定的字体库、设计项目或是丢失的字体文件。描述虽然简洁,但通常在IT上下文中,"Lost"可能意味着用户遇到了与字体相关的技术问题,如找不到特定的字体文件,或者在系统中字体显示异常。接...

    im2jpeg函数

    % Y = IM2JPEG(X, QUALITY) compresses image X based on 8 x 8 DCT % transforms, coefficient quantization, and Huffman ...% is lost and compression achieved. Y is an encoding structure % containing fields:

    请求分页存储系统

    首先检查页面是否已存在于内存中,如果存在则输出内存中的页面序列;如果内存已满,则计算所有内存中页面的最近使用情况,选择最近最长时间未使用的页面进行替换;否则,将新页面放入内存。 - **`FIFO()`**:实现了...

    概率论基础和随机过程

    本电子书《概率论基础和随机过程》详细阐述了概率论的这些基础理论,并且进一步讨论了随机过程的一些基本概念和性质,如随机函数的性质、随机变量的分布、收敛性以及随机测度和随机积分。通过对这些主题的深入学习,...

    银行管理系统 C++

    银行管理系统 C++ Design 本资源为一个基于C++的银行管理系统的课程设计,旨在...用户根据提示输入信息,系统主函数进行判断,若判断值为真,则系统通过定义的成员函数执行功能,依此类推,完成其它的工作也是如此。

    afn.rar_C++_Lost!

    通常,C++的源代码文件用.cpp结尾,而头文件用.h结尾,它们分别包含了函数定义和声明。 在遇到一个无法打开或工作的RAR文件时,首先应检查是否有正确的解压工具,如WinRAR或7-Zip,并确认文件是否完整无损。如果...

    demo.rar_Lost!

    RAR是一种常见的文件压缩格式,由WinRAR软件创建,用于将多个文件打包成一个单一的压缩文件,以节省存储空间和方便传输。 【描述】中提到“内容过于简单”,这可能意味着压缩文件内的内容不完整或者与预期不符。它...

    LOST.DIR文件夹中意外丢失文件的恢复方法

    当文件系统检测到磁盘扇区中的数据块存在错误时,它会将这些数据块移动到`LOST.DIR`文件夹中,并将其作为未分配的文件进行存储。这些文件通常没有文件名或扩展名,因此无法直接打开或识别。然而,通过特定工具和技术...

    the lost symbol pdf

    the lost symbol pdf the lost symbol pdf

    Oracle RAC 环境中 gc block lost 和私网通信性能问题的诊断

    Oracle RAC 环境中 gc block lost 和私网通信性能问题的诊断 Oracle RAC(Real Application Clusters)环境中,gc block lost 和私网通信性能问题是两个常见的性能瓶颈问题,本文将对这两个问题进行详细的分析和...

    Mirror.The.Lost.Shards.Update.v3.10_补丁_Lost!_emoji_

    补丁的主要目标是确保游戏的稳定运行,让玩家能够在享受游戏的过程中避免因软件错误而导致的不必要困扰。"Lost!"在标签中可能指的是游戏中的某个章节或剧情点,也可能暗示了这次更新针对的是游戏中出现的某些丢失或...

    php PDO判断连接是否可用的实现方法

    总之,`pdo_ping()`函数提供了一种在PDO中检查数据库连接是否有效的机制,这对于确保应用程序的健壮性和可靠性至关重要。在PHP中,通过自定义此类功能,我们可以有效地管理和维护数据库连接,避免因网络问题或服务器...

    饭卡管理系统实训报告书.docx

    - 程序代码设计:包含main函数作为主入口,以及mycreate、mybuy、mysave、myadd、mydel、mylost、mydisplayall等函数,分别对应不同功能。 - 测试与调试:确保所有功能正常运行,无逻辑错误,进行单元测试和整体...

    饭卡管理系统实训报告介绍模板之欧阳理创编.pdf

    - `mysave`函数用于饭卡充值,同样需要验证操作合法性并更新余额。 - `myadd`函数添加新的饭卡,需要防止重复的饭卡号。 - `mydel`函数注销旧饭卡,可能涉及数据删除操作。 - `mydlost`函数更新饭卡的挂失状态,...

    CNG.rar_Lost!_PACKET LOST

    标题"CNG.rar_Lost!_PACKET LOST"暗示了我们正在处理与“连续噪声生成器(Continuous Noise Generator,简称CNG)”相关的文件,同时遇到了数据包丢失的问题。描述中提到“更新CNG的估计,并在数据包丢失时应用CNG”...

Global site tag (gtag.js) - Google Analytics