`
wmch
  • 浏览: 72988 次
  • 性别: Icon_minigender_1
  • 来自: 郑州
社区版块
存档分类
最新评论

sql语句练习

阅读更多

select instr('xtr','x') from dual t   --instr,函数,返回某字符出现的位置
SELECT instr('syran ma','a',1,2) FROM dual;

select To_char(sysdate,'yyyy-MM-dd hh24:mi:ss') from dual
select To_date('2010-12-29 17:53:38','yyyy-MM-dd hh24:mi:ss') from dual

select upper('wmch') from dual
select lower('WMCH') from dual

-- Create table WMC_CUST_INFO
create table WMC_CUST_INFO
(
  ACTIVE_ID    VARCHAR2(100) not null,
  BATCH_ID     VARCHAR2(32),
  FLAG_ID      VARCHAR2(2),
  CUST_SOURCE  VARCHAR2(200),
  PRODUCT_NAME VARCHAR2(100),
  CUST_NUM     NUMBER
)
tablespace TPS_USER1
  pctfree 10
  initrans 1
  maxtrans 255
  storage
  (
    initial 64K
    next 1M
    minextents 1
    maxextents unlimited
  );
 

create table wmc_cust_info2 as
select * from tb_sv_cust_info

select * from wmc_cust_info
select * from wmc_cust_info2

--存储过程例子1
create or replace procedure wmc_proA
(activeId in wmc_cust_info.active_id%type)
is
var_active_id wmc_cust_info.active_id%type;
var_batch_id wmc_cust_info.batch_id%type;
begin
  var_active_id := activeId;
  var_batch_id := '1';

insert into wmc_cust_info(ACTIVE_ID,BATCH_ID,FLAG_ID,CUST_SOURCE,PRODUCT_NAME,CUST_NUM)
select var_active_id,var_batch_id,'1','2010年王明超抢票活动','彩信',1300 from dual;
commit;
DBMS_OUTPUT.put_line(var_active_id||'测试');
end;

call wmc_proa('王明超抢票活动2')


--存储过程例子2
create or replace procedure wmc_proB
is
begin
 update wmc_cust_info t set t.batch_id='3' where t.active_id='S0145-短信抢票活动';
 if SQL%Found then
   dbms_output.put_line('update successfully');
   commit;
   else
     dbms_output.put_line('update failure');
     end if;
     end;
    

call wmc_prob()

--存储过程例子3
create or replace procedure wmc_proC

is
cursor curOne is            --定义游标
select *
from wmc_cust_info t
where t.active_id='王明超抢票活动';

varCurInfo wmc_cust_info%rowtype;    --定义游标变量

begin
  open curOne;
  loop
    fetch curOne into varCurInfo;

    exit when curOne%notfound;

    dbms_output.put_line(varCurInfo.active_id||'>>'||varCurInfo.BATCH_ID||'>>'||varCurInfo.CUST_SOURCE);

    end loop;

    exception
      when others then
        close curOne;
        Dbms_Output.put_line('failure');

        if curOne%isopen then
          close curOne;
          end if;
          end;
         
--存储过程例子4
create or replace procedure wmc_proD

is
cursor curOne is            --定义游标
select t.active_id,t.cust_source
from wmc_cust_info t
where t.active_id='王明超抢票活动';

varActiveInfo wmc_cust_info.active_id%type;    --定义游标变量
varCustSource wmc_cust_info.cust_source%type;

begin
  open curOne;
  loop
    fetch curOne into varActiveInfo,varCustSource;

    exit when curOne%notfound;

    dbms_output.put_line(varActiveInfo||'>>'||varCustSource);

    end loop;

    exception
      when others then
        close curOne;
        Dbms_Output.put_line('failure');

        if curOne%isopen then
          close curOne;
          end if;
          end;
         
--存储过程例子5
create or replace procedure wmc_proE

is
cursor curOne is            --定义游标
select *
from wmc_cust_info t
where t.active_id='王明超抢票活动';

begin
  open curOne;
  for curInfo in curOne loop

    exit when curOne%notfound;

    dbms_output.put_line(curInfo.active_id||'>>'||curInfo.cust_source);

    end loop;

    exception
      when others then
        close curOne;
        Dbms_Output.put_line('failure');

        if curOne%isopen then
          close curOne;
          end if;
          end;
         
         
--存储过程例子6
create or replace procedure wmc_proF

is

type curType is ref cursor;
curOne curType;
sqlStr varchar2(500);
curInfo wmc_cust_info%rowtype;

begin

--定义动态sql
sqlStr := 'select t.* from wmc_cust_info t where t.active_id=''王明超抢票活动''';

open curOne for sqlStr;
loop
  fetch curOne into curInfo;
  exit when curOne%notfound;
  dbms_output.put_line(curInfo.active_id||'*'||curInfo.cust_source);
  end loop;

  close curOne;

end;


    

call wmc_proF()

分享到:
评论

相关推荐

    MySQL SQL语句练习题及答案

    MySQL SQL语句练习题及答案 本资源提供了 MySQL SQL 语句的练习题及答案,涵盖了创建表、插入数据、删除数据、更新数据、查询数据等多方面的知识点。 一、创建表 在 MySQL 中,创建表使用 CREATE TABLE 语句。...

    数据库sql语句练习

    数据库SQL语句练习 本资源旨在通过若干SQL语句练习,帮助读者更好地理解数据库的各项数据操作。下面是相关知识点的详细解释: 1. 关系代数和SQL语言查询 在关系代数和SQL语言中,查询至少选修了一门其直接先行课...

    3-SQL.rar_sql语句练习

    SQL语句练习、学生可以查看自学SQL相关语句的练习

    sql 语句练习与答案

    这个练习集涵盖了SQL的基础概念,包括数据查询、聚合函数、条件判断、更新和修改数据等,非常适合SQL初学者进行学习和实践。 1. **分组查询**:在练习1中,使用`GROUP BY`语句统计每个班级的学生人数,`COUNT()`...

    SQL语句练习

    适合了解过SQL语句的,想要复习的。被资源分为单表查询和多表查询,另外有SQL脚本。单表查询是按难易程度来排的。单表15条,多表10条,几乎涵盖了所有关键字,要注意的地方都会有标注和总结。文件是txt,可以直接用...

    经典sql语句练习

    "经典sql语句练习"这个压缩包提供了一套适合初学者的基础练习题,可以帮助你更好地理解和运用SQL语言。下面,我们将深入探讨SQL的基本概念、常用语句以及它们在实际中的应用。 SQL,全称为结构化查询语言,是用于...

    SQL语句练习.doc

    数据库系统实验报告模板1.doc

    SQL语句练习大全

    DDL用来创建数据库中的各种对象,包括数据库模式、表、视图、索引、同义词、聚簇等,它的基本语句有:CREATE DATABASE、CREATE TABLE、CREATE VIEW、CREATE INDEX等。 (4)数据控制语言(DCL) DCL用来授予或回收...

    MySQL练习代码, sql语句练习3

    对于"SQL语句练习3",我们可能涉及到更复杂的查询技巧,如联接(JOIN)操作,用于合并来自两个或更多表的数据。这包括内连接(INNER JOIN)、左连接(LEFT JOIN)、右连接(RIGHT JOIN)和全连接(FULL JOIN)。此外...

    sql语句练习题(带答案版本)

    这是带答案的sql语句练习这是带答案的sql语句练习这是带答案的sql语句练习这是带答案的sql语句练习这是带答案的sql语句练习这是带答案的sql语句练习这是带答案的sql语句练习这是带答案的sql语句练习

    hivesql语句练习

    #(执行下面的语句 *.*:所有库下的所有表 %:任何IP地址或主机都可以连接) GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION; FLUSH PRIVILEGES; 6. Jline包版本不一致的问题...

    学生选课数据库SQL语句练习题(sql 语句)

    ### 学生选课数据库SQL语句练习题详解 #### 一、背景介绍 本练习题旨在帮助初学者和进阶学习者通过实践操作来掌握SQL语言的基本语法和使用技巧。该练习题围绕一个学生选课系统进行,涉及到学生表(`Student`)、...

    MySQL练习代码, sql语句练习2

    本资料包含的是"SQL语句练习2",旨在帮助用户深入理解和熟练掌握MySQL中的SQL查询语言。 SQL(Structured Query Language),结构化查询语言,是用于管理和处理关系数据库的标准语言。在“SQL语句练习2”中,我们...

    50个常用的SQL语句练习.doc

    "SQL语句练习" SQL语句是数据库管理系统中的一种语言,用于管理和操作数据库。下面是对给定文件的知识点总结: 1. 查询“001”课程比“002”课程成绩高的所有学生的学号: 这个问题考察了SQL语句中子查询的使用。...

    SQL语句练习笔记/文件

    SQL语句练习笔记文件通常包含一系列示例和练习,旨在帮助用户提升SQL技能。这些文件可能包括基本查询、复杂查询、数据操作、数据库设计以及优化技巧等多个方面。下面我们将详细探讨这些知识点。 1. **SQL基础**: ...

Global site tag (gtag.js) - Google Analytics