![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据库
文章平均质量分 51
数据库技术
安潞
这个作者很懒,什么都没留下…
展开
-
Oracle 奇数偶数
等于1为奇数,等于0为偶数。原创 2023-12-03 19:06:31 · 224 阅读 · 0 评论 -
Oracle 取上一个月的第一天与最后一天
上一个月的第一天:SELECT to_char(trunc(add_months(SYSDATE,-1),'mm'),'yyyy-mm-dd') FROM dual;上一个月的最后一天:SELECT to_char(last_day(add_months(sysdate,-1)), 'yyyy-mm-dd') FROM dual;原创 2023-12-03 18:59:46 · 509 阅读 · 0 评论 -
Oracle 中if/else功能的实现的3种写法
1、标准sql规范一、单个IF1、if a=... then.........end if;二、多个IFif a=.. then......elsif a=.. then....end if;表示如果value等于if1时,DECODE函数的结果返回then1,...,如果不等于任何一个if值,则返回else。3、ELSE 为除此之外的默认情况,类似于高级语言程序中switch case的default,可以不加。原创 2023-12-03 18:59:02 · 5598 阅读 · 0 评论 -
Oracle 查询为数字的列
select * from 表 where not regexp_like(列名,'^[[:digit:]]+$');原创 2023-12-03 18:58:20 · 100 阅读 · 0 评论 -
Oracle XE 卸载
隔开的,删除时注意。建议:删除 PATH 环境变量中关于 Oracle 的值时,将该值全部拷贝到文本编辑器中,找到 对应的 Oracle 的值,删除后,再拷贝修改的串,粘贴到 PATH 环境变量中,这样相对而言比 较安全。9.删除开始菜单下 oracle 项,如: C:\Documents and Settings\All Users\「开始」菜单\程序\Oracle - Ora10g 不同的安装这个目录稍有不同。删除该 oracle 目录,该目录下注册着 Oracle 数据库的软件安装信息。原创 2023-12-03 18:57:00 · 234 阅读 · 0 评论 -
oracle 排序的时候能否指定某个特定的值排在最后
ORDER BY DECODE(cjdm,'J1','1','J3','2','J4','3','J5','4','JB','5','JT','6','TD','7','SH','8',cjdm)原创 2023-12-03 18:55:20 · 292 阅读 · 0 评论 -
Oracle 分组后整条数据获取
select a.* from a, (select fid,max(time) time from a group by fid) b where a.fid=b.fid and a.time=b.time原创 2023-12-03 18:47:02 · 78 阅读 · 0 评论 -
BAT 根据输入不同,执行不同的sql文件
set /p var="请输入数字:[1]处理计件数据,[2]处理交流机车数据:"echo 输入错误!原创 2023-12-03 18:46:27 · 83 阅读 · 0 评论 -
oracle与Sqlserver跨库查询
EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname = N'别名', @locallogin = NULL , @useself= N'False', @rmtuser = N'模式名', @rmtpassword = N'密码'EXEC master.dbo.sp_addlinkedserver @server = N'别名', @srvproduct=N'库名',@provider=N'MSDAORA', @datasrc=N'TNS名'原创 2023-12-03 18:37:53 · 797 阅读 · 0 评论 -
ORACLE 建立自增序列
maxvalue ---最大值,可对maxvalue设置任意正整数值。---定义发生什么时间时激发触发器,这里定义为在对tb_code表进行插入之前激发触发器。cache 10 ---CACHE(缓冲)定义存放序列的内存块的大小,默认为20。start with 11---从第11条记录开始,当表中没有记录,则从1开始。increment by 1---增量值为1,每次自增1。---查询序列当中nextval返回的值并返回给序列。minvalue 1 ---最小值为1。原创 2023-11-30 21:57:52 · 142 阅读 · 0 评论 -
Oracle:ORA-00604: 递归 SQL 级别 1 出现错误
TO_CHAR(ROUND((D.TOT_GROOTTE_MB - F.TOTAL_BYTES) / D.TOT_GROOTTE_MB * 100,2),'990.99') "使用比",表名 表空间大小(M) 已使用空间(M) 使用比 空闲空间(M) 最大块(M)D.TOT_GROOTTE_MB - F.TOTAL_BYTES "已使用空间(M)",D.TOT_GROOTTE_MB "表空间大小(M)",F.TOTAL_BYTES "空闲空间(M)",原创 2023-11-30 21:54:20 · 4513 阅读 · 0 评论 -
Oracle的备份DMP导入其他表空间的办法
即:tablespace EXP_TSPACE替换为:tablespace IMP_TSPACE。我们在导入一个Oracle备份的数据文件(*.dmp)到另外一个数据库的用户下时,如果需要更换表空间,可以采用下几个办法。你会发现,在使用imp命令导入时,导入的表还是建立在EXP_TSPACE表空间上。原因是:导入的数据库也存在EXP_TSPACE表空间,同时IMP_SPACE也存在该表空间的使用权限。导入用户名:IMP_USER 表空间为:IMP_TSPACE。identified by "密码"原创 2023-11-30 21:53:45 · 711 阅读 · 0 评论 -
oracle 增加表空间的四种方法
可以设置为自动增长ALTER DATABASE DATAFILE 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\EDWTEST\APP03.DBF'原创 2023-11-30 21:52:08 · 4551 阅读 · 0 评论 -
Oracle数据库生成UUID
数据类型是 raw(16) 有32个字符。原创 2023-11-30 21:51:36 · 385 阅读 · 0 评论 -
MySQL用命令创建MySQL数据库
首先打开DOS窗口,然后进入目录mysql\bin,再键入命令mysql -u root -p,回车后提示你输密码.注意用户名前可以有空格也可以没有空格,但是密码前必须没有空格,否则让你重新输入密码.insert into teacher values('','jack','飞数科技2','2005-12-23');如果你在mysql提示符键入上面的命令也可以,但不方便调试。insert into teacher values('','allen','飞数科技1','2005-10-10');原创 2023-11-30 21:50:29 · 307 阅读 · 0 评论 -
SQLServer错误:15023(创建对于用户失败)——孤立用户故障排除
SQL Server中“登录”与“用户”的区别,“登录”用于用户身份验证,而数据库“用户”帐户用于数据库访问和权限验证。其中Northwind为存在孤立用户的数据库,update_one是存储过程的参数,表示只处理一个用户,前一个test是“用户”,后一个test是“登录”,其中Northwind为存在孤立用户的数据库,update_one是存储过程的参数,表示只处理一个用户,前一个test是“用户”,后一个test是“登录”,原来该数据的所有者是test,执行sp_changedbowner 'sa'。原创 2023-11-30 21:46:14 · 1032 阅读 · 0 评论 -
MySQL 绿色版的安装步骤
由于工作需要最近要开始研究MySQL了(看来学习都是逼出来的),本人对mysql没有研究,可以说一个小白。下面就从安装开始吧,虽然网上关于这方面的东西很多,还是需要自己把操作过程写下来。原创 2023-11-30 21:44:54 · 87 阅读 · 0 评论 -
SQL 常用SQL 语句
1、创建数据库,删除数据库2、备份sql server--- 创建 备份数据的 deviceUSE master--- 开始 备份3、说明:创建新表--根据已有的表创建新表:A:create table tab_new like tab_old (使用旧表创建新表)4、说明:删除新表5、说明:增加一个列注:列增加后将不能删除。DB2中列加上后数据类型也不能改变,唯一能改变的是增加varchar类型的长度。6、添加主键和删除主键。原创 2023-11-30 21:44:20 · 45 阅读 · 0 评论 -
ORACLEORA-01652无法通过128(在表空间TEMP中)扩展temp段剖析解决
排序等操作使用的临时段,使用完成后会被标记为空闲,表示可以重用,占用的空间不会立即释放,有时候临时表空间会变得非常大,此时可以通过收缩临时表空间来释放没有使用的空间。问了同事,写这个sql语句的小伙伴已经离职半年了,所以无人懂这个复杂的sql的业务逻辑了,暂时优化sql的建议是无法去做了。(2)一个性能非常差的笛卡尔积的带全表扫描的sql占用的资源超过了temp的表空间大小。例如,我想删除临时表空间下的某个文件,那么我们有两种方式删除临时表空间的数据文件。(1)oracle的temp临时表空间太小了;原创 2023-11-29 22:27:51 · 2527 阅读 · 0 评论 -
Oracle 限制超级管理员用户远程登录
非oracle安装用户本机sqlplus “sys/change_on_install as sysdba”无法登录。非oracle安装用户本机sqlplus “sys/change_on_install as sysdba”无法登录。非oracle安装用户本机sqlplus “sys/change_on_install as sysdba”能登录。非oracle安装用户本机sqlplus “sys/change_on_install as sysdba”能登录。sysdba”无法登录。原创 2023-11-29 21:27:29 · 197 阅读 · 0 评论 -
SQLSERVER 存储过程基本语法
insert into #DU_User1 (ID,Oid,[Login],Rtx,Name,[Password],State) values (100,2,'LS','0000','临时','321','特殊');select @msg = N'姓名从“' + Deleted.Name + N'”修改为“' + Inserted.Name + '”' from Inserted,Deleted。2. 限制少,可以执行对数据库表的操作,可以返回数据集。--从ST_User查询数据,填充至新生成的临时表。原创 2023-11-29 21:26:57 · 276 阅读 · 0 评论 -
SQLServer DELETE语句与REFERENCE约束冲突
语句与 reference 约束"FK_subplan_job_id"冲突。该冲突发生于数据库"msdb",表"dbo.sysmaintplan_subplans", column 'job_id'。在SQL Server 2008上删除已运行维护计划后,维护计划job没有自动删除掉,手工再删除维护计划job,提示删除失败。以上这4张表有着PK和FK的关联关系,在删除作业时,就容易因为发生FK的冲突而导致失败。3.sysmaintplan_subplans(记录维护计划的子计划信息);原创 2023-11-29 21:26:25 · 567 阅读 · 0 评论 -
Oracle-ora00376
2.如果数据文件只是offline,则只需要把数据文件脱机即可;ORA-01110: 数据文件 4: 'D:\APP\WJ\ORADATA\ORCL11G\USERS01.DBF'线程 1 序列 4 的归档日志已作为文件 D:\WJARC00004_0853710748.001 存在于磁盘上。1.既然数据文件不能访问,首先要检查数据文件状态以及数据文件是否在磁盘上.发现数据文件4脱机,数据文件12是recover状态。把数据文件12联机,再检查数据文件12状态。介质恢复完成, 用时: 00:00:04。原创 2023-11-29 21:25:15 · 356 阅读 · 1 评论 -
SQLServer迁移数据至Oracle
在SQLServer服务器本地使用CMD里的BCP命令,IP地址是SQLServer服务器地址,-U用户,-P密码。参考:https://www.cnblogs.com/fishparadise/p/9406943.html。三:使用sqldeveloper工具迁移(整库迁移),参考下方连接。3)使用sqlldr命令把数据导入到Oracle中。使用Navicat的导入数据,把csv导入即可。在SQLServer中导出数据为csv,注意,命令中的D盘不能使用C盘。二:大数据量(百万以上)原创 2023-11-29 21:23:22 · 390 阅读 · 0 评论 -
MySQL-Linux开放root远程权限
报错:error no. 1045 access denied for user 'root'@'x.x.x.x' (using password:YES)或者:1045 - Access denied for user 'root'@'x.x.x.x'(using password:YES)授权:GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456'登录到mysql主机:mysql -u root -p。原创 2023-11-29 21:15:58 · 156 阅读 · 0 评论 -
sqlserver列分割转多行一列转多行
len(a.name) - len(replace(a.name, ',', ''))+1 as rs,--人数。len(a.name) - len(replace(a.name, ',', '')) as dhs,--有多少个逗号。3.也可以把某个需要均分的字段平均分--------------------1.测试数据---------------------------2.转换-----------------------------select 2,'小红,小绿,小明',17。转载 2023-04-14 18:34:56 · 590 阅读 · 0 评论 -
MYSQL 忘记密码的解决方法
方法一:方法二:原创 2023-04-12 16:16:05 · 85 阅读 · 0 评论 -
Oracle-处理百万级以上的数据查询提高效率的办法
然 而,如果在编译时建立访问计划,变量的值还是未知的,因而无法作为索引选择的输入项。14.并不是所有索引对查询都有效,SQL是根据表中数据来进行查询优化的,当索引列有大量数据重复时,SQL查询可能不会去利用索引,如一表中有字段 sex,male、female几乎各一半,那么即使在sex上建了索引也对查询效率起不了作用。11.在使用索引字段作为条件时,如果该索引是复合索引,那么必须使用到该索引中的第一个字段作为条件时才能保证系统使用该索引,否则该索引将不会被使 用,并且应尽可能的让字段顺序与索引顺序相一致。原创 2023-04-07 13:20:24 · 2879 阅读 · 0 评论 -
Oracle-存储过程编译卡死的解决方法
SELECT SID,SERIAL#,PADDR FROM V$SESSION WHERE SID='刚才查到的SID';4:alter system kill session 'sid值,serial#值' immediate;注意:CRM_LASTCHGINFO_DAY为存储过程的名称。注意:CRM_LASTCHGINFO_DAY为存储过程的名称。1:查V$DB_OBJECT_CACHE。3:查sid,serial#2:按对象查出sid的值。发现locks=2,原创 2023-04-07 13:22:16 · 980 阅读 · 0 评论 -
MSSQL-时间格式
select CONVERT(varchar(10),GETDATE(),120) --2017-05-12select CONVERT(varchar(20),GETDATE(),121) --2017-05-12 00:00:00select CONVERT(varchar(12) , getdate(), 111 ) 2004/09/12select CONVERT(varchar(12) , getdate(), 112 ) 20040912select CONVERT(varchar(12) ,原创 2023-04-07 13:21:16 · 217 阅读 · 0 评论 -
SQL Server 定时向mysql推送数据
一 首先,这个操作其实只是分成了两部分,第一部分是在mssql建立mysql链接,使用链接服务器,第二部分是在mssql代理添加代理作业即可。这时候截至,很多资料就认为可以进行mssql得配置工作了,但是这里少了关键的一步,在我在多台服务器上经验没有这一步都是不能成功得,在下图中红线框起来的两个DNS都需要进行配置,并且配置得参数必须一致,否则是无法进行链接得,大家也可以尝试一下自己得是否需要。vc_redist(X86)-----MYSQL ODBC(X86)------新建ODBC(X86)原创 2023-04-07 12:57:19 · 720 阅读 · 0 评论 -
sqlserver列分割转多行一列转多行
1.测试数据---------------------------create table CS ( id integer, name varchar(100), je numeric(18,2))insert into CS (id, name,je )select 1,'小红,小明',10union allselect 2,'小红',10union allselect 2,'小红,小黄,小绿',18union allselect 2,'小红,小绿',18union allselect 2,'小红,转载 2022-06-14 14:20:28 · 736 阅读 · 0 评论 -
MySQL 字符串聚合连接
原句 select user_id, user_name from income_tl; 聚合连接select user_id, group_concat(user_name order by user_name desc separator '|') sum_string from income_tl group by user_id;原文:tangtong1原创 2020-11-24 16:39:08 · 533 阅读 · 0 评论