
数据库
相思子~
互联网的精神是什么?是共(bai)享(piao)!
展开
-
神通数据库配置文件Oscar.conf
linux环境下直接执行set 参数命令即可更改参数,也可以手动修改Oscar.conf。原创 2023-02-09 20:11:58 · 2860 阅读 · 0 评论 -
快速处理数据拼接sql
项目场景:在项目中,总会有一些刁民(客户)懒得使用系统录入数据,甩给朕一个excel文件,要求朕帮他直接导入进去。给他写个excel导入功能不太划算,所以整理出来下面几种方法快速导入数据。方法一:使用excel拼接sql语句拼接字符串类型的值:=“select * from table where a=’”&A3&"’;"效果:方法二:在数据库中建一张临时表,按照excel中的列建好字段,然后直接把excel中的数据粘贴到表里,通过sql把字段组合起来插入到相应的表里原创 2021-02-24 09:50:00 · 1790 阅读 · 0 评论 -
达梦数据库查看表的大小、字符集、页大小等
查看表的大小原创 2023-02-07 21:47:11 · 3411 阅读 · 0 评论 -
达梦数据库锁超时(锁表)
达梦数据库报“锁超时”,或者锁表原创 2023-02-07 21:33:37 · 2070 阅读 · 0 评论 -
oracle 多行数据合并成一行数据
划水的时候看到有人问了这个问题(多条数据合并成一条),顺手写个sql记录一下。原创 2022-06-23 11:11:42 · 5873 阅读 · 0 评论 -
oracle 修改组合索引
--根据表名,查询一张表的索引select * from user_indexes where table_name='表名';--根据索引名,查询表索引字段select * from user_ind_columns where index_name='索引名';--删除主键约束alter table 表名 drop constraint 主键名;--删除索引drop index 索引名;--添加主键约束alter table 表名 add constraint 主键名 primary原创 2022-05-18 14:45:55 · 1175 阅读 · 0 评论 -
oracle sql执行计划分析
sql执行计划分析问题描述问题分析解决方案扫描类型index range scan(索引范围扫描):index skip scan(索引跳跃式扫描)table access full(全表扫描)问题描述项目上反馈某个功能模块查询效率特别慢,接口响应一次要四分钟,使用jprofiler分析后发现有一个慢sql,如下:SELECT T.* FROM (select t0.ID as c_1, t0.TITLE as c_2,原创 2022-05-09 17:18:08 · 4315 阅读 · 0 评论 -
gbase数据库锁表解决办法
gbase数据库锁表解决办法问题描述问题分析解决办法1. 查找被锁住的表2. 查找活跃锁的信息(shell命令)3. 查找用户线索和事务4. 查看会话信息5. 断开指定用户的连接执行中遇到的问题1. onstat: 未找到命令2.断开指定用户连接后,执行drop table等命令仍然报错问题描述gbase数据库的某张表突然无法查询和新增字段。问题分析经过百度查询了一下,发现是锁表导致的。解决办法1. 查找被锁住的表select hex(partnum) from systables whe原创 2022-04-28 16:01:34 · 4562 阅读 · 1 评论 -
plsql打开oracle会话
打开【工具】-【会话】选中一条数据,右键【关闭】,即可结束该会话.原创 2021-07-05 09:54:44 · 1197 阅读 · 0 评论 -
oracle 误删表数据,还原到某个时间点
--1.查询之前时间点的表数据select * from mlkgl as of timestamp to_timestamp('2020-12-23 15:00:00', 'yyyy-mm-dd hh24:mi:ss');--2.闪回表恢复到插入数据之前的时间点flashback table mlkgl to timestamp to_timestamp('2020-12-23 15:00:00','yyyy-mm-dd hh24:mi:ss');--3.删除当前表数据delete from原创 2021-06-25 16:33:26 · 1366 阅读 · 0 评论 -
SQL union all
场景:c1c2c1百分比c2百分比208020%80%select c1,c1百分比 from TUNION ALLselect c2,c2百分比 from T值百分比2020%8080%原创 2021-04-29 10:52:29 · 88 阅读 · 0 评论 -
SQL 中文直接展示,id反显成中文
场景:一张表,某一列有脏数据,里面有的值存的id,有的值存的中文,需要把这些数据都展示成中文select decode(instr(asciistr(d.finish_user_id), '\'), 1, d.finish_user_id, 0, (SELECT USER_NAME FROM MF_USER WHERE d.finish_user_id = user_id)) from FI原创 2021-04-29 10:53:08 · 507 阅读 · 0 评论 -
sql判断某个值是否为数字
--通过 To_Number 函数异常来判断CREATE OR REPLACE FUNCTION Is_Number ( str_ VARCHAR2 ) RETURN VARCHAR2 IS num_ NUMBER; BEGIN num_ := to_number(str_); RETURN 'Y'; EXCEPTION WHEN OTHERS THEN R原创 2021-04-29 10:53:21 · 1219 阅读 · 0 评论 -
查找没有主键的表
SELECT * FROM user_tables A WHERE NOT EXISTS ( SELECT * FROM user_constraints b WHERE A .table_name = b.table_name AND b.constraint_type = 'P' );原创 2021-04-29 11:33:59 · 389 阅读 · 0 评论 -
oracle update
--更新高价件表中的型号, hm_material h1update hm_highrate_material h set h.material_model = (select h1.model from hm_material h1 where h.material_id = h1.material_id);--对表A的a2,a3进行更新(带条件);update A set (A.a2, A.a3) = (select B.b2, b.b3 from原创 2021-04-28 21:58:39 · 109 阅读 · 0 评论 -
oracle sql去重
--1、删除掉重复项只保留一条delete from dept where rowid not in (select max(rowid) mrid from dept group by deptno, dname, loc)--2、查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断 select * from people where peopleId in (select peopleId from peopl原创 2021-04-28 21:34:00 · 1899 阅读 · 0 评论 -
笛卡尔积
规则:行相乘,列相加/*=======================================Description: 用SQL实现笛卡尔积=======================================*/SELECT * FROM l; --如下图lSELECT * FROM m; --如下图m--交叉连接实现,lmSELECT * FROM l CROSS JOIN m;l表lid name-----------原创 2021-04-28 14:11:33 · 1047 阅读 · 0 评论 -
oracle cmd导入导出dmp
--1.导入imp 用户名/密码@网络服务名 file=xxx.dmp full=y;--2.导出exp 用户名/密码@网络服务名 file=xxx.dmp tables=(表名);--3.导出多个表时,表名使用逗号隔开如:tables=(table1,table2,table3)--4. 示例imp HM/HM@192.168.20.212:1521/orcl file=E:\test\test.dmp full=y;--(注:需要赋予用户DBA权限)grant connect,res原创 2021-04-28 12:07:26 · 296 阅读 · 0 评论 -
Oracle数据泵导出导入
--1.先查询DIRECTORY路径select * from dba_directories;--(大部分使用DATA_PUMP_DIR,可新建create directory D_D_ora as 'D:\oracle\文件夹路径';--sysdba身份登录新建文件夹)--linuxcreate or replace directory dir as '/data/dir' ;-- 2.授权DIRECTORY读写权限给用户Grant read,write on directory DA原创 2021-04-28 11:58:30 · 263 阅读 · 0 评论 -
oracle表空间、用户
--创建表空间NRcreate tablespace NR datafile 'D:\NR.ora' size 3000m;--自动扩展alter database datafile 'D:\NR.ora' autoextend on; --1.创建用户--使用管理员登录,打开sql窗口--推荐 Oracle10G 及以上, 准备项目自己的空用户, 假设叫 release-- 表空间默认用 users (发布时最好指定专用的表空间,假设叫NR)create user release ide原创 2021-04-28 11:35:53 · 119 阅读 · 0 评论 -
oracle数据库查看并修改最大连接数
--1.查看当前数据库进程的连接数select count(*) from v$process;--2.查询数据库当前会话的连接数select count(*) from v$session;--3.查看数据库设置的最大连接数和最大session数量select value from v$parameter where name ='processes'; --4.修改连接数alter system set processes = 300 scope = spfile;--5.重启oracl原创 2021-04-28 11:19:04 · 392 阅读 · 0 评论 -
gbase 连接数据库
1.gbase客户端gbase data studio2.gbase数据源#数据库驱动spring.datasource.driver-class-name=com.informix.jdbc.IfxDriver#数据源地址spring.datasource.url=jdbc:informix-sqli://10.2.41.173:9088/jmgc_tycj:informixserver=gbaseserver;NEWCODESET=UTF8,zh_cn.UTF8,57372;CLIENT_原创 2021-04-27 16:19:43 · 4501 阅读 · 0 评论 -
gbase建表语句
CREATE TABLE mztj:fs_img_bd ( b_key LVARCHAR(255) NOT NULL, b_content BLOB, b_extention LVARCHAR(255), updatetime DATE, PRIMARY KEY (b_key) CONSTRAINT u815_801) in datadbs1 ;CREATE TABLE mztj:des_sys_formdefine ( fm_key NVARCHAR(160) NOT NULL,原创 2021-04-27 14:17:46 · 2106 阅读 · 0 评论