create or replace function mcode_apply_update_personnel(p_mca_no VARCHAR2, -- 参数(实参) p_action VARCHAR2, p_wf_node_code VARCHAR2) -- 该函数的作用:把当前的用户(审核人:审核通过后)插入到数据表中. RETURN VARCHAR2 AS -- v_personcode 变量(形参) v_personcode Personnel.Person_Code%TYPE :=…
应用场景:因为数据库中的数据涉及机密信息,希望一次性能删除掉所有数据,只保留数据表结构,供新项目开发程序用 测试结果:经查询已删除所有数据 存在问题:数据表如果存在外键的话下面脚本可能执行不成功,请自行删除或者过滤掉该表,见下图 操作办法:直接将下面的脚本内容复制到PQSQL中执行即可 --Oracle使用游标删除所有用户数据表中的所有记录脚本 declare mystring NVARCHAR2(1000):=''; --定义要输出的字符串变量 cursor mycursor is --定义游…
探索Oracle之数据库升级七 11gR2 to 12c 升级完毕后插入PDB 前言:        从Oracle 12c開始,引入了容器数据库的概念,能够实现数据库插拔操作,例如以下图: 如今我们就来看看怎样将11.2.0.4的数据库插入到12c的CDP里面去,让其成为一个PDB 数据库. 一.查看数据库信息: SQL> col BANNER format a80 SQL> set line 300 SQL> select * from v$version; BANNER CON_I…
应用场景:将数据表TB_USER中字段NNDP的内容中为[sannanyinv]转换为[3男1女] 主要脚本:一个游标脚本+分割字符串函数+拼音转数字脚本 操作步骤如下: 1.创建类型 create or replace type splitTable is table of varchar2(100); 2.创建函数fn_splitString(功能是将字符串分割成多条记录)--测试语句select * from table(fn_splitString('ernanyinv','nan'))…
ORACLE 查询一个数据表后通过遍历再插入另一个表中的两种写法 语法 第一种: 通过使用Oracle语句块  --指定文档所有部门都能查看 declare cursor TABLE_DEPT and STATUS>-; begin for c in TABLE_DEPT loop INSERT INTO G_KNOWDOCRIGHT(RID,DIRID,DOCID,USERID) VALUES(SYS_GUID(),'权限编号','文档编号',c.ID); end loop; commit;…
--SQL批量更新数据库中所有用户数据表中字段类型为tinyint为int --关键说明:--1.从系统表syscolumns中的查询所有xtype='48'的记录得到类型为[tinyint]的字段--2.更新字段类型前如果该字段有默认值索引则应先删除掉对应的索引--3.数据表字段数据类型为tinyint在CodeSmith中读出来的是DbType.Byte类型,需要修正 declare @TableName nvarchar(250) --声明读取数据库所有数据表名称游标mycursor1de…
解决问题:字段类型为char的总是占用指定字节长度(末尾好多空白符号),varchar数据类型长度一个汉字占2个字节,内容存储为中文的字段个人建议全部使用nvarchar. 操作说明:打开SQL Server Management Studio,选中你要更新字段类型的数据库,点新建查询菜单,执行下面的语句即可. 详细代码: --批量替换数据库中所有用户数据表中字段数据类型为char和varchar到nvarchar的脚本declare @TableName nvarchar(255) --定义数…
create or replace function mca_detail_material_val(p_material_code VARCHAR2, --实参 p_material_name VARCHAR2, p_mca_no VARCHAR2 ) RETURN varchar2 AS --物料编码/名称的验证,数据表(MATERIAL)中 不存在 该物料编码/名称,允许通过,填其他值都不允许通过 v_count1 NUMBER; -- 形参 v_count2 NUMBER; v_coun…
create or replace function FN_GET_ROLES(v_user_id varchar2) return varchar2 istype zy_emp_cursor is ref cursor;v_emp_cursor zy_emp_cursor;v_role_dscr varchar2(2000);v_emp_dscr varchar2(64);v_index number;beginopen v_emp_cursor for SELECT A_ROLES.ROLE…
先创建DDL数据库事件操作表: create table ddl_event( sys_time date primary key, event_name ), ), obj_type ), obj_name )) 然后建立触发器(系统事件触发器): create or replace trigger tr_ddl after ddl on schema declare -- local... begin insert into ddl_event values(sysdate,ora_syse…
先查询一下select userenv('language') from dual;查看oracle字符集, $ sqlplus /nolog SQL> connect sys/oracle as sysdba SQL> startup 如何设置ORACLE数据库的编码(ZHS16GBK)修改成UTF8 SQL> shutdown immediate; SQL> startup mount; SQL> alter system enable restricted sessio…
Oracle输入特殊字符的特殊方法: UPDATE BOOKMARK SET BM_VALUE=q'/ --在这里写下需要输入的内容(可以包括引号.回车等特殊的符号),所见即所得 /' -- WHERE BM_NAME='XX'…
drop table aa_tab;create table aa_tab asselect  A.TABLE_NAME  表名,  A.column_name 字段名,A.data_type  数据类型,A.data_length 长度,A.data_precision 整数位,    A.Data_Scale 小数位,A.nullable 允许空值,to_lob(A.Data_default) 缺省值,B.comments 备注 from  user_tab_columns A,user_c…
需要再中文和英文环境同时修改: 程序里,可以通过初始session语言环境来解决.…
有一张表:batch(批次表) 表的字段如下: 第一种情况: 现在需要插入一条当前的系统时间 sql 如下: insert into batch (batch_id, cus_id, batch_number, createtime, note)values(seq_batch.nextval, 2, '000001',to_date(to_char(sysdate,'yyyy-mm-dd hh24:mi:ss'),'yyyy-mm-dd hh24:mi:ss') , '第二次购买'); 第二种…
create or replace function work_plan_mask (p_schema VARCHAR2,p_table VARCHAR2) return Varchar2 AS -- 数据控制,指定某些人只能查看他权限范围内的信息 v_predicate ) := '1=2'; v_personcode Personnel.Person_Code%TYPE := SYS_CONTEXT(get_context_name,'PERSON_CODE'); v_user_name w…
oracle角色.权限和用户 [转贴 2010-1-25 10:29:45]     字号:大 中 小 Oracle内置角色connect与resource的权限 首先用一个命令赋予user用户connect角色和resource角色: grant connect,resource to user; 运行成功后用户包括的权限: CONNECT角色: --是授予最终用户的典型权利,最基本的 ALTER SESSION --修改会话 CREATE CLUSTER --建立聚簇 CREATE DATA…
有人在社区问到:C#调用Oracle中自定义函数的返回值时,无法正常调用.但在PL/SQL中正常调用返回. 于是动手一试: 1.准备函数(Oralce 11g.2.0.0.4) CREATE OR REPLACE FUNCTION F_Update_Grade(v_UserID in Number) return nvarchar2 is V_Grade nVARCHAR2(); begin V_Grade :'; update TESTDB3 set Grade = V_Grade where…
孤荷凌寒自学python第四十七天通用跨数据库同一数据库中复制数据表函数 (完整学习过程屏幕记录视频地址在文末) 今天继续建构自感觉用起来顺手些的自定义模块和类的代码. 今天打算完成的是通用的(至少目前操作四种数据库)在同一数据库内复制数据表的方法函数. 此设想最初我自我感觉都非常简单,然而事实是关系型数据库统一使用的sql语言在各家其实是完全不同的! 一.了解清楚了我目前研究的四种关系型数据库对同一数据库中数据表的复制操作的sql语句的异同也效果局限 (一)Access 数据库与mssql数据…
应用场合:已知字段名字,查询数据库中所有数据表中包含该字段名的所有数据表 操作办法:指定字段名,数据库表用户,执行下面查询语句即可 --Oracle生成查询包含指定字段名对应的所有数据表记录语句 declare mycolumnname VARCHAR(255):='userid';--定义要查询的字段名变量,运行前修改成您要查询的字段名myownername VARCHAR(255):='system';--定义要查询的数据库用户名变量,运行前修改成您要查询的数据库用户名mystring NV…
孤荷凌寒自学python第四十九天继续研究跨不同类型数据库的通用数据表操作函数 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 今天继续建构自感觉用起来顺手些的自定义模块和类的代码. 不同类型的关系数据库之间的数据表的结构与数据的互相复制操作相对比较复杂,虽然关系型数据库都通用SQL查询语句,经过过去多年的编程经验与前段时间Python操作数据库的学习,发现由于各家数据库在使用sql语句上的不同处理,事实上要统一为相同的互相可交换结构数据的形式,就是我想学习的 从今天的学习情况来看,已统…
孤荷凌寒自学python第四十八天通用同一数据库中复制数据表函数最终完成 (完整学习过程屏幕记录视频地址在文末) 今天继续建构自感觉用起来顺手些的自定义模块和类的代码. 今天经过反复折腾,最终基本上算是比较好地完成了这个在同一数据库中复制数据表的函数,且同一函数支持目前研究的四种数据库(mysql,mssql,access,sqlite). 一.首先是到今天完成为止的_mdb.py文件中的全部内容: #!/usr/bin/env python3 # -*- coding: utf-8 -*- i…
CSV: Comma-Separated Values(逗号分隔值)的缩写,是以逗号分隔字段的多行文本文件   sqlldr 是sql*loader的缩写,此工具在安装完整版的Oracle客户端后就有 使用sqllldr可以将有规律的文本数据(如csv)导入数据表   导入示例:将csv文本文件andon.txt导入到manpowertest中的testandon表中 testandon表结构 create table TESTANDON ( build_no VARCHAR2(5), devi…
A表  基础信息表 B表 业务信息表 将a表中的基础数据 拼接到B表的后面, 应用场景是: B表很多数据,很繁乱,名字不一定全, A表也是比较多的行,B表乱:比如有8行有李晨的,却只有3行是范仲淹的,现在需要快速拼接: 方法一:不用函数,利用ctrl+Enter xls表格 ctrl+D 和ctrl+Enter区别 --快速填充相同数据,同时填充多个不同数据 - 海蓝steven - 博客园https://www.cnblogs.com/rogge7/p/8075115.html  --利用这博…
转载:Oracle中把一个查询结果插入到一张表中 以下是信息留存: 一.Oracle数据库中,把一张表的查询结果直接生成并导入一张新表中. 例如:现有只有A表,查询A表,并且把结果导入B表中.使用如下SQL语句: create table b as select * from a 二.Oracle数据库中支持把查询结果导入到另外一张表中. 例如:有两个表A和B 1)如果两个表的表结构是否相同,但要插入的字段类型相同:      I 把A表的全部字段数据插入到B表中: insert into B…
  1. 新增一个表,通过另一个表的结构和数据 create table XTHAME.tab1 as select * from DSKNOW.COMBDVERSION 2. 如果表存在: insert into tab1 select * from tab2; 3.同一个表中,将A字段的指赋给B字段: update table_name set B =  A; 4. 将一个表的字段数据插入到另一个表的字段数据中 insert into XTHAME.tab1(pk_bdversion,vbd…
严格来说,文章标题中的“转换”并不完全合适.本文的主要内容是基于Oracle数据表的数据来生产出Shapefile文件.进行该工作的一个前提条件是:Oracle数据表中包含坐标数值字段,一般来说就是x.y字段. 一 导出Oracle数据表为csv文件 查询数据表tcmmspoint原始数据,将其导出为CSV格式文件. 二 将CSV文件转换为XLS文件(EXcel 97-2003 工作簿) 用Excel打开上一步导出的CSV文件,另存为XLS格式文件(注意使用Excel 97-2003工作簿格式)…
一.Oracle数据库中,把一张表的查询结果直接生成并导入一张新表中.   例如:现有只有A表,查询A表,并且把结果导入B表中.使用如下SQL语句:   create table b as select * from a   二.Oracle数据库中支持把查询结果导入到另外一张表中.   例如:有两个表A和B   1)如果两个表的表结构是否相同,但要插入的字段类型相同:   (1)把A表的全部字段数据插入到B表中: insert into B select * from A;   (2)把A表中…
在开发过程中我们有时候在用户删除时候保存一些信息在用户下次安装应用时候使用,这个时候我们可以使用剪切版UIPasteboard的FindUIPasteboard和钥匙串keychain的使用 剪切版剪切版主要分为以下两种 UIPasteboardNameGeneral和UIPasteboardNameFind 两种都是系统级的可以在应用删除后仍然保留数据 开发中我们常常使用UIPasteboard的Find UIPasteboard来保存一些用户删除应用后需要保留的数据如UUID,用户名,密码等…
1.--dense_rank()分析函数(查找每个部门工资最高前三名员工信息) select * from (select deptno,ename,sal,dense_rank() over(partition by deptno order by sal desc) a from scott.emp) where a<=3 order by deptno asc,sal desc ; 结果: --rank()分析函数(运行结果与上语句相同) select * from (select dep…