zoukankan      html  css  js  c++  java
  • java:LeakFilling (SQL,JDBC)

    1.JDBC中的sql里面不能加 ;号,否则报错

    2.Oracle数据必须提交后才可以使用JDBC进行操作,否则没有结果

    3. JDBC插入序列:
        首先在sequences建一个序列
        insert into 表名(id,name) values(序列名.nextval,'hello')

    4.oracle复制另外一张表结构到一张新表中

      create table newtable as select * from oldtable where 1=2

      这个sql只是把表结构copy过来  如果要把所有表结构和表数据都copy过来的话用下面的sql

      create table newtable as select * from oldtable

     

    5.创建存储过程

      带(输出参数)返回值的存储过程:

        --删除存储过程

        DROP PROCEDURE IF EXISTS proc_employee_getCount

        --创建存储过程

        CREATE PROCEDURE proc_employee_getCount(out n int)

        BEGIN

        SELECT COUNT(*) FROM employee ;

        END

        --MYSQL调用存储过程

        CALL proc_employee_getCount(@n);

        带输入参数的存储过程:

        --删除存储过程

         DROP PROCEDURE IF EXISTS proc_employee_findById;

       

        --创建存储过程

        CREATE PROCEDURE proc_employee_findById(in n int)

        BEGIN

        SELECT * FROM employee where id=n;

        END

        --定义变量

        SET @n=1;

        --调用存储过程

        CALL proc_employee_findById(@n);

    6.批量插入与删除:

      批量删除:

        DELETE FROM MyTable WHERE ID IN (1,2);

      批量插入:

        第一种方法:

          INSERT INTO MyTable(ID,NAME) VALUES(1,'123');
          INSERT INTO MyTable(ID,NAME) VALUES(2,'456');
          INSERT INTO MyTable(ID,NAME) VALUES(3,'789');

        第二种方法,使用UNION ALL来进行插入操作:   
          INSERT INTO MyTable(ID,NAME)
          SELECT 4,'000'
          UNION ALL
          SELECT 5,'001'
          UNION ALL
          SELECT 6,'002' ;
          比第一种要快!

        第三种方法 
          INSERT INTO MyTable(ID,NAME) VALUES(7,'003'),(8,'004'),(9,'005');

    7.select  case when then:

      select id,name,

        (case  sex

          when  1 than '男'

          when  2 than '女'

          else  '空'

          end)  as  '性别'  

       form  s_students

      update s_students

        set  name=(

          select case

            when sex>0 then 0  //性别大于0  则为0

            when sex=0 then 1

            end as pass

            from  s_students

            where id=1

            )

          where  id =1 

     8.提取DATE类型:

      select count(1), extract(year from t.建档时间),extract(month from t.建档时间)
        from 诊疗项目目录 t
        group by extract(year from t.建档时间),extract(month from t.建档时间)
        order by extract(year from t.建档时间)

    9.查询一行字段类型占多少字节:

    select sum(
      (
        case data_type
          when 'DATE'
            then 7*DATA_LENGTH
          when 'VARCHAR2'
            then 1*DATA_LENGTH
          when 'NUMBER'
            then floor((DATA_LENGTH+1)/2)+1
          end
      )
    )
      from all_tab_cols
      where table_name = tableName

    10.Oracle数据导入:

    ---oracle dmp文件导入
    
    --创建表空间
    create tablespace UFGOV datafile 'E:	ablespaceUFGOV_1.DBF' 
    size 200m
    autoextend on
    next 32m maxsize 2048m
    extent management local; 
    
    --创建临时表空间存储
    create temporary tablespace UFGOV_TEMP tempfile 'E:	ablespaceUFGOV_TEMP_1.DBF' 
    size 50M autoextend ON next 10M maxsize 100M; 
    
    --创建用户
    create user HNGAT identified by 123456 default tablespace UFGOV Temporary TABLESPACE UFGOV_TEMP;
    
    --给所创建的用户赋予权限
    grant connect,resource,dba to HNGAT;
    
    --dos命令导入oracle数据        ignore忽略错误信息   fromuser(FD)将用户FD下的表导入到touser=(HNKJ) HNKJ用户下
    imp HNKJ/123456@127.0.0.1:1521/orcl file="C:UserslenovoDesktop河南科技学院FD.expdp.dmp" fromuser=(FD) touser=(HNKJ) log=y ignore=y full=y
    
    impdp orcl/hnkj DIRECTORY=dir_dump DUMPFILE=FD.expdp.dmp
  • 相关阅读:
    173. Binary Search Tree Iterator
    199. Binary Tree Right Side View
    230. Kth Smallest Element in a BST
    236. Lowest Common Ancestor of a Binary Tree
    337. House Robber III
    449. Serialize and Deserialize BST
    508. Most Frequent Subtree Sum
    513. Find Bottom Left Tree Value
    129. Sum Root to Leaf Numbers
    652. Find Duplicate Subtrees
  • 原文地址:https://www.cnblogs.com/kuangzhisen/p/7191390.html
Copyright © 2011-2022 走看看