sql
凉云半
你说,寒庐煮酒,雪落梅章。后来,君在沧海,我在潇湘。
展开
-
oracle中的分号;和左斜杠/
在PL/SQL中执行单个语句我们经常使用;但是在执行一些批量脚本或者代码块的时候尽管已经使用了;但是执行还是报错,这个时候就需要使用/来执行代码块。注意在一个脚本中每一个begin end之间都需要一个/每个单个语句后面有一个/末尾语句可以没有。/的用法,在PLSQL中代替;在末尾标识sql语句的结束。/在末尾可以出发代码块执行。原创 2023-11-06 10:03:25 · 495 阅读 · 0 评论 -
Navicat导入xlsx文件提示无法打开文件
今天使用navicat导入xlsx文件提示文件无法打开,然后以为是文件的问题,但是从表中导出的xlsx再导入还是提示无法打开。因为使用的navicat版本比较旧且没有激活,以为是navicat的问题,后来查了下,应该是navicat和xlsx软件不兼容,最大的可能是64和32位之间的不兼容。比价简单的解决办法,下载安装以下驱动就可以了。正常情况下出现xlsx的sheet表供选择就是打开文件成功了。原创 2023-01-10 09:42:56 · 2197 阅读 · 0 评论 -
在crontab中找不到sqlplus命令
linux中编写好的脚本,在本地是用sh运行是成功的,但是设置了crontab 中使用sh运行,系统提示找不到sqlplus命令,原因是在crontab中没有环境变量需要进行引入。由于生产环境管理员将sqlplus工具配置在/etc/profile 下。所以在脚本开始位置添加:source /etc/profile.运行会提示成功如果家目录中的.bash_profile有配置的话,引入这个文件也可以source /home/weblogic/.bash_profile (home/weblogic/ 是当前原创 2022-06-01 15:10:27 · 1975 阅读 · 0 评论 -
sqlplus 远程取数不能出现空行和不能关闭回显问题
第一次使用sqlplus命令编写linux脚本,远程取oracle数据库查询结果,新手遇到的问题1.返回查询结果固定行数后出现空格,解决办法:增加set termout off 或者set term off2.使用sh test.sh的方式运行脚本 设置了set term off 和set termout off 仍然有回显:解决方法:sqlplus -s 用户名/密码@IP端口/数据库名 <<EOF>>log.txt增加重定向>>log.txt 可以原创 2022-05-31 11:50:42 · 595 阅读 · 0 评论 -
mysql7以下处理json字段
今天要处理mysql中json字段,提取里面的关键信息,但是使用的mysql7以下版本没有json_extract()函数,生产环境又没办法随意创建函数。最后总结了处理办法使用双层SUBSTRING_INDEX获取需要的字段,在使用TRIM去掉双引号1、字符串拆分: SUBSTRING_INDEX(str, delim, count)str 需要拆分的字符串delim 分隔符,通过某字符进行拆分count 当 count 为正数,取第 n 个分隔符之前的所有字符;...原创 2022-05-06 14:25:21 · 681 阅读 · 0 评论 -
数据库中的时间格式
oracle数据库中的类似时间格式 ,想按照时间排序进行查询to_char(query_time,'yyyyMMdd')=‘20160904’这样就可以了原创 2022-02-09 14:15:15 · 563 阅读 · 0 评论 -
ORA-08002: 序列 SEQ_XXX.CURRVAL 尚未在此会话中定义
监控系统搬迁服务器后机具状态获取不到了,查看日志是外键冲突select SEQ_XXXX.currval from dual查看当前CURRVAL,结果报错先执行语句select SEQ_XXXX.nextval from dual,后在执行select SEQ_XXXX.currval from dual可以成功获取到值,和数据表中的值对比,发现数据库中的自增序列值大于currvalsequence是序列号生成器,可以为表中的行自动生成序列号,产生一组等间隔的数值(类型为数字)。其原创 2021-10-11 13:50:39 · 3128 阅读 · 0 评论 -
数据字典生成SQL语句
–将当前用户下所有表信息生成在一张表中,可以导出excel后拆分处理SELECTA.TABLE_NAME AS “表名”,A.COLUMN_NAME AS “字段名称”,B.COMMENTS AS “字段描述”,A.DATA_TYPE as 字段类型,REPLACE(DECODE(A.CHAR_LENGTH,0,DECODE(A.DATA_SCALE,NULL,A.DATA_TYPE,A.DATA_PRECISION||’,’||A.DATA_SCALE),A.CHAR_LENGTH),’,0’原创 2021-05-18 16:21:42 · 275 阅读 · 0 评论 -
PL/SQL中的注释符
1.单行:–注释12.多行:/*注释2*/3.设置快捷键的方法配置—首选项----按键配置原创 2021-05-18 15:40:12 · 865 阅读 · 0 评论 -
sql中replace 和decode的用法
语法replace ( string_expression , string_pattern , string_replacement )replace(String,from_str,to_str) 即:将String中所有出现的from_str替换为to_str。decode(value,if1,then1,if2,then2,if3,then3,…,else)decode(条件,值1,返回值1,值2,返回值2,…值n,返回值n,缺省值)...原创 2021-05-18 15:18:21 · 321 阅读 · 0 评论 -
ORACLE中的USER,ALL,DBA
DBA_意为DBA拥有的或可以访问的所有的对象(前提是用户为dba)。ALL_意为某一用户拥有的或可以访问的所有的对象。USER_意为某一用户所拥有的所有的对象。权限: dba_ > all_ > user_select * from user_tables; //查看用户下所有表select * from user_tab_columns;//查看用户表所有字段select * from user_tab_comments;//查看用户表注释select * from u...原创 2021-05-18 14:09:47 · 980 阅读 · 0 评论 -
数据库中To_date()、to_char()、substr()对时间处理
To_date()、to_char()、substr()对时间处理YYYY、YYY、YY 分别代表4位、3位、2位的数字年 YEAR 年的拼写 MM 数字月 MONTH 月的全拼 MON 月的缩写 DD 数字日 DAY 星期的全拼 DY 星期的缩写 AM 表示上午或者下午 HH24、HH12 12小时制或24小时制 MI 分钟 SS 秒钟一、to_date()(时间格式Y原创 2020-09-02 10:59:24 · 4574 阅读 · 1 评论