Maison base de données tutoriel mysql Oracle存储过程分离表中的数据

Oracle存储过程分离表中的数据

Jun 07, 2016 pm 02:57 PM
oracle 分离 存储 nombre 数据 processus

ORACLE数据库sql 无 select rowid from books b;select sec8 from upload_sec;----------------------------------------------------------数据插入create or replace procedure proc_insert( head in varchar2,num in varchar2)isbegininsert into SEC_DETA

ORACLE 数据库sql
select rowid from books b;
select sec8 from upload_sec;



----------------------------------------------------------数据插入
create or replace procedure proc_insert
( 
 head in varchar2,
num in varchar2
)
is
begin
insert into SEC_DETAIL values('陕西','西安','029',head||num,sysdate);
commit;
dbms_output.put_line('存储成功');
end;



-------------------------------------------------------------------------------------------------------------------------------------

select * from SEC_DETAIL;
select sysdate from dual;
----------------------------数据插入验证
declare
begin
proc_insert('132','310');
end;

dbms_output.put_line('ooo');
dbms_output.put_line('产品名称:');
select * from sec_detail;
delete from sec_detail;

-------------------------提交数据
Insert into UPLOAD_SEC
   (PROVINCE, CITY, AREA_CODE, SEC0, SEC1, SEC4, SEC5, SEC6, SEC8, SEC9, HEAD)
 Values
   ('陕西', '西安', '29', '950-959', '040-049、910-919', '918、920-929', '200-219、240-249', '571-575、578-579', '600-619', '330-339', '131');
Insert into UPLOAD_SEC
   (PROVINCE, CITY, AREA_CODE, SEC0, SEC2, SEC4, SEC5, SEC7, SEC8, SEC9, HEAD)
 Values
   ('陕西', '西安', '29', '140-189', '700-709、770-789、800-809', '410', '940-949、970-999', '920-949', '920-939、980-989', '900-913、916-917、919', '132');
Insert into UPLOAD_SEC
   (PROVINCE, CITY, AREA_CODE, SEC0, SEC2, SEC9, HEAD)
 Values
   ('陕西', '西安', '29', '290-299、918', '900-909、920-969', '180-189、410-419、460-469、480-499、616-618、640-644、660-669、680-689', '155');
Insert into UPLOAD_SEC
   (PROVINCE, CITY, AREA_CODE, SEC2, SEC3, SEC4, SEC6, HEAD)
 Values
   ('陕西', '西安', '29', '670-679、687-689', '680-684、690-695', '460-464、478', '478-499、581-599', '145');
Insert into UPLOAD_SEC
   (PROVINCE, CITY, AREA_CODE, SEC0, SEC2, SEC8, SEC9, HEAD)
 Values
   ('陕西', '西安', '29', '290-299、928', '900-909、914-915、919、924-926、928-969', '180-189、194、290-299', '145、148-149、152、155-157、163、180-189、195', '186');
Insert into UPLOAD_SEC
   (PROVINCE, CITY, AREA_CODE, SEC0, SEC9, HEAD)
 Values
   ('陕西', '西安', '29', '290-299、920-929', '140-149、175-179、184-189、191-228、250-299', '185');
Insert into UPLOAD_SEC
   (PROVINCE, CITY, AREA_CODE, SEC0, SEC1, SEC6, SEC8, SEC9, HEAD)
 Values
   ('陕西', '西安', '29', '920-929', '900-909、920-949', '460-499、700-709', '600-609、620-629、640-649', '140-149、170-199', '156');
COMMIT;


select * from upload_sec;
--------------------------------------
select sec0 from upload_sec;
----------------------------
create or replace procedure proc_find

(

)
is 
begin
end;
--------------------------------------------------------------------------------------------------------主操作
create or replace procedure proc_ok
(
row in upload_sec%rowtype
)
  is
 begin

 
     if row.sec0 is null or row.sec0='' then
       dbms_output.put_line('0是空的');
      else
      proc_el(row.sec0,row.head);
        dbms_output.put_line('----------------------------------------0号'||row.sec0);
     end if;
     
       if row.sec1 is null or row.sec1='' then
       dbms_output.put_line('1是空的');
      else
      proc_el(row.sec1,row.head);
        dbms_output.put_line('----------------------------------------1号'||row.sec1);
     end if;
      
       if row.sec2 is null or row.sec2='' then
       dbms_output.put_line('2是空的');
      else
      proc_el(row.sec2,row.head);
        dbms_output.put_line('----------------------------------------2号'||row.sec2);
     end if;
     
       if row.sec3 is null or row.sec3='' then
       dbms_output.put_line('3是空的');
      else
      proc_el(row.sec3,row.head);
        dbms_output.put_line('----------------------------------------3号'||row.sec3);
     end if;
     
       if row.sec4 is null or row.sec4='' then
       dbms_output.put_line('4是空的');
      else
      proc_el(row.sec4,row.head);
        dbms_output.put_line('----------------------------------------4号'||row.sec4);
     end if;
     
       if row.sec5 is null or row.sec5='' then
       dbms_output.put_line('5是空的');
      else
      proc_el(row.sec5,row.head);
        dbms_output.put_line('----------------------------------------5号'||row.sec5);
     end if;
     
       if row.sec6 is null or row.sec6='' then
       dbms_output.put_line('6是空的');
      else
      proc_el(row.sec6,row.head);
        dbms_output.put_line('----------------------------------------6号'||row.sec6);
     end if;
     
       if row.sec7 is null or row.sec7='' then
       dbms_output.put_line('7是空的');
      else
      proc_el(row.sec7,row.head);
        dbms_output.put_line('----------------------------------------7号'||row.sec7);
     end if;
     
       if row.sec8 is null or row.sec8='' then
       dbms_output.put_line('8是空的');
      else
      proc_el(row.sec8,row.head);
        dbms_output.put_line('----------------------------------------8号'||row.sec8);
     end if;
    
        if row.sec9 is null or row.sec9='' then
       dbms_output.put_line('9是空的');
      else
      proc_el(row.sec9,row.head);
        dbms_output.put_line('----------------------------------------9号'||row.sec9);
     end if;
         
     
       end;
  ------------------------------------------------------------------
  select * from sec_detail order by sec;

delete from sec_detail;
  select * from upload_sec;
  ----------------------------------------------------------------------------------------游标取表中数据调proc_ok;
  declare
  cursor  num is select * from upload_sec;
  begin
  
 
  for row in num loop
  proc_ok(row);
  
  end loop;
  end;
  ----------------------------------------------输出设置
  
  set serveroutput on size 1000000;
  
  
  -------------------------------------- 循环插入
  create or replace procedure proc_for 
  (
    head in varchar2,
    sta in  varchar2,
    en in varchar2  
  )
  is
  a int(10);
  b int(10);
    nu varchar2(50);
  begin
  
  if instr(sta,'0')=1 then

   a:=to_number(sta);
  dbms_output.put_line(a);
  b:=to_number(en);
  dbms_output.put_line(b);
   for i in a..b loop
   select  to_char(i) into nu from dual; 
   proc_insert(head,'0'||nu);
   dbms_output.put_line('0'||nu);
  end loop;
  
else
  a:=to_number(sta);
  dbms_output.put_line(a);
  b:=to_number(en);
  dbms_output.put_line(b);
   for i in a..b loop
   select  to_char(i) into nu from dual; 
   dbms_output.put_line(nu);
   proc_insert(head,nu);
  end loop;
end if;
  
end;
-----------------------------------------------循环插入验证
declare

begin
proc_for('130','037','042');
 
end;

select instr('029','0') from dual;

--------------------------------------
-------------------
select *from sec_detail;
select '0'||'0' from dual;

------------------------------------------------------每单元格分拆测试
declare
el varchar2(100);

begin
el:='22-33-44-55-66';
loop
  dbms_output.put_line(substr(el,1,instr(el,'-')-1));
  
  
 el:=substr(el,instr(el,'-')+1);
 exit when length(el)=2; 
 end loop;
  dbms_output.put_line(el);
  end;
  
  
  -----------------------------------------------------------------分拆单元格过程并插入
  create or replace procedure  proc_el 
  (
  see in varchar2,
  head in varchar2
  )
  is
  se varchar2(500);
  begin
  se:=see;
case
when instr(se,'、')=0 then 
      if instr(se,'-')=0 then
       proc_insert(head,se);
     
     else   
      proc_for(head,substr(se,1,3),substr(se,5,3));
     end if;
when instr(se,'、')!=0 then
     loop
  dbms_output.put_line(substr(se,1,instr(se,'、')-1));
  if instr(substr(se,1,instr(se,'、')-1),'-')=0 then
       proc_insert(head,substr(se,1,instr(se,'、')-1));
  else
   proc_for(head,substr(substr(se,1,instr(se,'、')-1),1,3),substr(substr(se,1,instr(se,'、')-1),5,3));
  end if;
   se:=substr(se,instr(se,'、')+1);
   if instr(se,'、')=0 then 
         exit when length(se)<=7;
       
   else
    exit when length(se)<=3;
   end if; 
  
   end loop;
   
      dbms_output.put_line(se);  
   if instr(se,'-')=0 then
   proc_insert(head,se);
   else
   proc_for(head,substr(se,1,3),substr(se,5,3));
   end if;
   
   
  
    end  case;

 end;
  -------------------------------------------------------------------------测试单元格插入
  declare
  see varchar2(100);
  head varchar2(10);
  
   begin
   see:='190-193、750-759、891、895、220-229';
   proc_el(see,head);
    
   end;
  
 select instr(substr('037-042',1 ,(instr('037-042','、')-1)),'-')=0 from dual;
  
  ----------------------------------------------------------------------------------------
     

  
------------------------------------------------创建抽象数据类型
 create type ty_sec as object(
 t1 varchar2(15),
 t2 varchar2(15),
 t3 varchar2(15),
 t4 varchar2(15),
 t5 varchar2(15),
 t6 varchar2(15),
 t7 varchar2(15),
 t8 varchar2(15),
 t9 varchar2(15),
 t10 varchar2(15),
 t11 varchar2(15),
 t12 varchar2(15),
 t13 varchar2(15) 
 )
 -----------------
 select substr('abc',1,0) from dual;
Copier après la connexion
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Où trouver la courte de la grue à atomide atomique
1 Il y a quelques semaines By DDD

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

De quelle quantité de mémoire Oracle a-t-il besoin ? De quelle quantité de mémoire Oracle a-t-il besoin ? May 10, 2024 am 04:12 AM

La quantité de mémoire requise par Oracle dépend de la taille de la base de données, du niveau d'activité et du niveau de performances requis : pour le stockage des tampons de données, des tampons d'index, l'exécution d'instructions SQL et la gestion du cache du dictionnaire de données. Le montant exact dépend de la taille de la base de données, du niveau d'activité et du niveau de performances requis. Les meilleures pratiques incluent la définition de la taille SGA appropriée, le dimensionnement des composants SGA, l'utilisation d'AMM et la surveillance de l'utilisation de la mémoire.

Les startups d'IA ont collectivement transféré leurs emplois vers OpenAI, et l'équipe de sécurité s'est regroupée après le départ d'Ilya ! Les startups d'IA ont collectivement transféré leurs emplois vers OpenAI, et l'équipe de sécurité s'est regroupée après le départ d'Ilya ! Jun 08, 2024 pm 01:00 PM

" sept péchés capitaux" » Dissiper les rumeurs : selon des informations divulguées et des documents obtenus par Vox, la haute direction d'OpenAI, y compris Altman, était bien au courant de ces dispositions de récupération de capitaux propres et les a approuvées. De plus, OpenAI est confronté à un problème grave et urgent : la sécurité de l’IA. Les récents départs de cinq employés liés à la sécurité, dont deux de ses employés les plus en vue, et la dissolution de l'équipe « Super Alignment » ont une nouvelle fois mis les enjeux de sécurité d'OpenAI sur le devant de la scène. Le magazine Fortune a rapporté qu'OpenA

Le modèle 70B génère 1 000 jetons en quelques secondes, la réécriture du code dépasse GPT-4o, de l'équipe Cursor, un artefact de code investi par OpenAI Le modèle 70B génère 1 000 jetons en quelques secondes, la réécriture du code dépasse GPT-4o, de l'équipe Cursor, un artefact de code investi par OpenAI Jun 13, 2024 pm 03:47 PM

Modèle 70B, 1000 tokens peuvent être générés en quelques secondes, ce qui se traduit par près de 4000 caractères ! Les chercheurs ont affiné Llama3 et introduit un algorithme d'accélération. Par rapport à la version native, la vitesse est 13 fois plus rapide ! Non seulement il est rapide, mais ses performances sur les tâches de réécriture de code dépassent même GPT-4o. Cette réalisation vient d'anysphere, l'équipe derrière le populaire artefact de programmation d'IA Cursor, et OpenAI a également participé à l'investissement. Il faut savoir que sur Groq, un framework d'accélération d'inférence rapide bien connu, la vitesse d'inférence de 70BLlama3 n'est que de plus de 300 jetons par seconde. Avec la vitesse de Cursor, on peut dire qu'il permet une édition complète et quasi instantanée des fichiers de code. Certaines personnes l'appellent un bon gars, si tu mets Curs

China Mobile : l'humanité entre dans la quatrième révolution industrielle et a officiellement annoncé « trois plans » China Mobile : l'humanité entre dans la quatrième révolution industrielle et a officiellement annoncé « trois plans » Jun 27, 2024 am 10:29 AM

Selon les informations du 26 juin, lors de la cérémonie d'ouverture de la Conférence mondiale des communications mobiles 2024 de Shanghai (MWC Shanghai), le président de China Mobile, Yang Jie, a prononcé un discours. Il a déclaré qu'actuellement, la société humaine entre dans la quatrième révolution industrielle, dominée par l'information et profondément intégrée à l'information et à l'énergie, c'est-à-dire la « révolution de l'intelligence numérique », et la formation de nouvelles forces productives s'accélère. Yang Jie estime que de la « révolution de la mécanisation » entraînée par les machines à vapeur, à la « révolution de l'électrification » entraînée par l'électricité et les moteurs à combustion interne, en passant par la « révolution de l'information » entraînée par les ordinateurs et Internet, chaque cycle de révolution industrielle est basé sur « L'information et « l'énergie » constituent l'axe principal, apportant le développement de la productivité

Top 10 du classement mondial de la plate-forme de trading de devises virtuels numériques (2025 classement faisant autorité) Top 10 du classement mondial de la plate-forme de trading de devises virtuels numériques (2025 classement faisant autorité) Mar 06, 2025 pm 04:36 PM

En 2025, les plateformes mondiales de trading de devises virtuelles numériques sont farouchement compétitives. OKX se classe d'abord avec sa forte force technique et sa stratégie de fonctionnement mondiale, et Binance suit de près avec une liquidité élevée et des frais faibles. Des plates-formes telles que Gate.io, Coinbase et Kraken sont à l'avant-garde avec leurs avantages respectifs. La liste couvre les plateformes de trading telles que Huobi, Kucoin, BitFinex, Crypto.com et Gemini, chacune avec ses propres caractéristiques, mais l'investissement devrait être prudent. Pour choisir une plate-forme, vous devez prendre en compte des facteurs tels que la sécurité, la liquidité, les frais, l'expérience utilisateur, la sélection des devises et la conformité réglementaire, et investir rationnellement

Un professeur américain a utilisé sa fille de 2 ans pour former un modèle d'IA qui apparaîtra dans Science ! Des oursons humains utilisent des caméras frontales pour entraîner une nouvelle IA Un professeur américain a utilisé sa fille de 2 ans pour former un modèle d'IA qui apparaîtra dans Science ! Des oursons humains utilisent des caméras frontales pour entraîner une nouvelle IA Jun 03, 2024 am 10:08 AM

Incroyablement, afin de former un modèle d’IA, un professeur de l’Université d’État de New York a attaché une caméra de type GoPro à la tête de sa fille ! Même si cela semble incroyable, le comportement de ce professeur est en réalité bien fondé. Pour former le réseau neuronal complexe derrière LLM, des données massives sont nécessaires. Notre processus actuel de formation LLM est-il nécessairement le moyen le plus simple et le plus efficace ? Certainement pas! Les scientifiques ont découvert que chez les tout-petits, le cerveau absorbe l’eau comme une éponge, formant ainsi rapidement une vision du monde cohérente. Bien que LLM fonctionne parfois de manière étonnante, avec le temps, les enfants humains deviennent plus intelligents et plus créatifs que le modèle ! Le secret pour que les enfants maîtrisent la langue. Comment mieux former le LLM ? Quand les scientifiques sont intrigués par la solution,

Top 10 des plates-formes de trading de devises numériques La dernière liste des 10 principales plateformes de trading de devises numériques Top 10 des plates-formes de trading de devises numériques La dernière liste des 10 principales plateformes de trading de devises numériques Mar 17, 2025 pm 05:57 PM

Top 10 des plates-formes de trading de devises numériques: 1. Okx, 2. Binance, 3. Gate.io, 4. Huobi Global, 5. Kraken, 6. Coinbase, 7. Kucoin, 8. Bitfinex, 9. Crypto.com, 10. Gemini, ces échanges ont leurs propres caractéristiques et les utilisateurs peuvent choisir la plate-forme qui leur convient sur des facteurs tels que la sécurité, les frais de sécurité, les frais de la sécurité, les frais de sécurité, les arêtes de la sécurité.

Top 10 des échanges dans le cercle des devises en 2025 Dernier classement des applications de devises numériques Top 10 des échanges dans le cercle des devises en 2025 Dernier classement des applications de devises numériques Feb 27, 2025 pm 06:33 PM

Classement des dix principales plates-formes de trading de devises virtuelles (dernier en 2025): Binance: le leader mondial, la liquidité élevée et la réglementation ont attiré l'attention. OKX: grande base d'utilisateurs, prend en charge plusieurs devises et fournit un trading à effet de levier. GATE.IO: une échange senior, avec une variété de méthodes de paiement de la monnaie fiduciaire, fournissant une variété de paires de trading et de produits d'investissement. Bitget: Échange de dérivés, liquidité élevée, frais faibles. Huobi: Un ancien échange qui prend en charge une variété de devises et de paires de trading. Coinbase: un échange américain bien connu, strictement réglementé. Phemex et ainsi de suite.

See all articles