mysql
wang王le乐ping平博客
这个作者很懒,什么都没留下…
展开
-
MYSQL创建存储过程,遍历查询表数据,将满足条件的数据插入另一张表中
存储过程实现要求:1、遍历 t_qlrinfo表数据 ,获取bsm,qxdm,fwqbm,ywh,qlbsm;2、将数据与t_tb_dyxx关联,若存在满足条件的数据,则将 t_qlrinfo表的bsm插入T_TMP_QLRXX_BSM表中。原创 2022-06-16 11:15:13 · 2552 阅读 · 0 评论 -
mysql执行脚本提示锁表:java.sql.SQLException: Lock wait timeout exceeded; try restarting transaction
具体错误信息为:: Lock wait timeout exceeded; try restarting transaction原因,锁表了,需要kill掉.show processlist; -- 找到对应的用户,然后看哪个语句,找到对应的 IDID=1121543 SELECT * FROM information_schema.INNODB_TRX; -- 执行该条语句,trx_mysql_thread_id字段,也是对应的ID,应该是和上面的show processlist ...原创 2022-04-18 09:20:06 · 932 阅读 · 0 评论 -
MySql Workbench设置执行sql脚本的快捷键为F5
设置执行sql脚本的快捷键需要修改配置文件:MySql Workbench的安装目录: C:\Program Files\MySQL\MySQL Workbench 6.3\data(本地的安装路径,实际情况看个人的)修改data文件夹下的main_menu.xml文件:打开main_menu.xml文件,搜索 com.mysql.wb.menu.query.exec然后将 <value type="string" key="shortcut">Modifier+Shif原创 2022-03-23 14:56:16 · 2000 阅读 · 0 评论 -
mysql报错:Error Code: 1175. You are using safe update mode and you tried to update a table without a
mysql在update更新的时候报如下错误:> Error Code: 1175. You are using safe update mode and you tried to update a table without a WHERE that uses a KEY column To disable safe mode, toggle the option in Preferences -> SQL Editor and reconnect. 0.000 sec报错原因:现在是原创 2022-03-23 14:03:30 · 13161 阅读 · 0 评论 -
MySql insert时报错: Duplicate entry ‘1‘ for key ‘PRIMARY‘
报这个错的原因是主键重复了,可以查看一下表的主键。处理方式:如果主键的字段一定要插入,就把主键关掉;如果主键字段需要递增插入,就先看看主键是否设置了自动递增,如果设置了,插入的脚本里面就不用谢主键字段。注:如果你看的表没有主键,但是还是报上面的错,那就说明你看错表了!!!!!!!!!哈哈哈...原创 2022-03-23 13:54:21 · 3326 阅读 · 0 评论 -
mysql -获取一个表的所有字段,并用逗号拼接的成一列
需要获取一个表的所有字段,然后select 查询获取字段方式:SELECT GROUP_CONCAT(COLUMN_NAME SEPARATOR ",") FROM information_schema.COLUMNSWHERE TABLE_SCHEMA = 'data_temp' AND TABLE_NAME = 'TEMP_TDCRXX_XZ';将标红的部分改动就行其中 TEMP_TDCRXX_XZ 是表名 ; TABLE_SCHEMA 是数据库名...原创 2021-11-19 17:10:28 · 1152 阅读 · 1 评论 -
mysql -用 listagg within group函数, 获取的字段乱码
刚开始的listagg(name,',') within GROUP (order by bsm) as name_new :获取的 name_new 乱码了。处理方式: 加上to_char,就可以解决listagg(to_char(name),',') within GROUP (order by bsm) as name_new原创 2021-11-19 16:58:46 · 1591 阅读 · 0 评论 -
mysql-按照某个字段分组,删除重复的记录,报错You can‘t specify target table ‘xx‘ for update in FROM clause
原脚本是(只要有重复的,保留最大BSM的那个,其他的删除):DELETE FROM TEMP_ndmx_DELETE WHERE BSM not IN(SELECT max(BSM) FROM TEMP_ndmx_DELETE GROUP BY HH HAVING count(1)>1) ;因为 mysql不支持这种删除 查询同一张表的操作,解决办法就是 把要删除的数据查询出来做为一个第三方表,然后筛选删除:保留最大BSM的那个,其他的删除:delete from TEMP_ndm..原创 2021-11-17 16:34:15 · 657 阅读 · 0 评论 -
MYSQL-truncate table时,报错 Got error 168 from storage engine‘ on query.
报错很大可能就是 磁盘空间不够了,要加空间了原创 2021-11-17 14:52:18 · 1993 阅读 · 0 评论 -
如何将mysql数据库迁移到oracle数据库中(使用navicat premium)
需要将本机的mysql数据导入到本机的oracle数据库中准备:1、navicat premium2、mysql3、oracle步骤:1、首先在oracle中建立一个空用户,然后在navicat中建立该用户的一个连接(本地ORACLE新建的用户为KCDA,实例是ORCL)2、在navicat中建立mysql的连接,找到需要迁移的数据库(本地是school)右击,选择‘数据传输’3、在常规界面选择目标oracle的连接,以及oracle用户,在高级界面可以选择遇到错误继续,默认这里是不勾原创 2020-09-21 11:24:55 · 2602 阅读 · 0 评论 -
执行命令mysql -u root -p报错ERROR 2003 (HY000): Can‘t connect to MySQL server on ‘localhost‘ (10061)
报错是因为服务没启动或者 服务没了(其实安装过了,不知道为啥没了,还要重新安装)报错的东西就下面的截图:解决方法:1、win + r 键,输入services.msc,打开服务,看看里面有没有mysql,有的话重启一下就行2、我本地是没有mysql的,所以要重新安装一下3、搜索cmd.exe或命令提示符,然后以管理员身份运行,输入安装命令mysqld -install(不以管理员身份运行会报错:Install/Remove of the Service Denied)普通用户报错:管理原创 2020-07-01 13:55:26 · 823 阅读 · 0 评论 -
mysql 启动提示:错误2系统找不到指定文件;(本地计算机上的mysql服务启动后停止,某些服务在未由其他服务或程序使用时将自动停止)
今天启动mysql时报错:错误2系统找不到指定文件。 前几天还好好的,不知道是不是哪里改动过了。去注册表:计算机\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services下面发现没有mysql疑似mysql服务安装有问题,没办法只能先去重新安装服务:1、通过管理员身份运行命令提示符(一定要通过管理员身份运行):2、然后输入cmd,输入sc delete mysql (删除服务),如果服务有问题,应该会提示没有服务的,所以是正常的。3、打开原创 2020-06-17 10:13:45 · 19997 阅读 · 2 评论 -
plsql链接远程数据库时,报错 ora-12638 身份证明检索失败
解决办法如下:1、打开oracle客户端的 Net Manager :2、然后按 本地 -> 概要文件 -> Oracle高级安全性 -> 验证,将’所选方法’中的 “NTS” 移动到’可用方法’ 中,保存所做修改。 然后将plsql关掉重新打开输入连接就行。 注:plsql如果还在打开状态,需要关掉重新打开,输入连接。...原创 2020-05-25 14:09:19 · 653 阅读 · 1 评论 -
SQL语句创建视图为什么用order by不能排序
很多地方都没解释清楚这个问题,有代表性的就是这个 博客 。论坛 上有人解释了,但是年代久远,我这里把它捞出来。答主是 这位 。内容如下:创建排序视图的企图本身就是错误的,因为视图表示一个表,而表是不会对行排序的。众所周知,在SQL Server 2000中追求排序视图的开发人员会利用貌似系统漏洞的一个技巧。利用这个漏洞可以...转载 2020-04-28 15:21:03 · 3332 阅读 · 0 评论 -
cmd如何设置为utf-8编码
CHCP是MD DOS中的命令,用来显示或设置活动代码页编号的。一般默认都是936(GBK)现在要弄成 65001 utf-8。。输入chcp 65001,回车,就进入UTF-8模式了。进入模式后这个界面不要关闭,如果关闭再打开,又是gbk的了。备注:网上说属性”选项”标签页下方显示”当前代码页”的编码. 选择”字体”标签页, 把字体设置为Lucia C...原创 2019-07-09 13:56:56 · 1354 阅读 · 0 评论 -
mysql表中删除重复记录方法
最高效的删除重复记录方法 (使用ROWID)例子:CREATE TABLE EMP(ID NUMBER(10),NAME VARCHAR2(233))INSERT INTO EMP(ID,NAME) VALUES(1,'张三');INSERT INTO EMP(ID,NAME) VALUES(2,'张三');INSERT INTO EMP(ID,NAME) VALUES(1,'原创 2018-02-02 10:10:41 · 245 阅读 · 0 评论 -
添加字段,查询用户下所有表名以及对应条数
--查询某用户下所有表名以及对应的条数,可以加条数的判断条件,比如大于1000条数的表select 'SELECT * FROM '||t.table_name||';',t.num_rows from user_tables t WHERE t.num_rows>1000 ;--查询JJ_SJZL用户下所有表名SELECT TABLE_NAME FROM ALL_TABLES W...原创 2018-02-05 17:21:28 · 396 阅读 · 0 评论 -
mysql实现函数,能够根据权利人的编号查出权利人的名称
--函数 函数就是一个有返回值的过程 --定义一个函数,这个函数能够根据权利人的编号查出权利人的名称CREATE OR REPLACE FUNCTION MYFUN(YBSM QLR.BSM%TYPE) RETURN VARCHAR2AS RSAL VARCHAR2(255);BEGIN SELECT QLRMC INTO RSAL FROM QLR WHERE原创 2018-02-06 15:18:51 · 313 阅读 · 0 评论 -
mysql如何设置窗口列表默认显示-即关闭打开后窗口还在
首先去'工具'里 ,把'窗口列表'打开,放到左边或者你想放的位置:然后点开'窗口',里面有个'保存版面',点击即可:原创 2018-04-23 13:30:10 · 1554 阅读 · 0 评论 -
oracle创建索引会降低更新的效率?
需要看创建索引的字段 是在 WHERE条件后面充当条件, 还是索引字段就为更新字段 :比如UPDATE 表 SET A = 1 WHERE B = 2如果 B 列有索引,那么提高效率。如果 A 列有索引,那么降低效率。因为:更新的列上建有索引,数据库不但要更新表里的数据,而且要更新相应的索引。所以这个索引就会降低update执行的效率。...原创 2018-06-11 15:32:41 · 4242 阅读 · 0 评论 -
查询用户下所有的表并统计各表中的量
SELECT 'SELECT * FROM'||TABLE_NAME||';',NUM_ROWS FROM ALL_TABLES WHERE OWNER='JJ_SJZL'; 注意:OWNER='ABC' ; 引号里面的用户要用大写原创 2018-06-07 14:52:23 · 1858 阅读 · 0 评论 -
oracle脚本 :位数不够用0填充
select rpad('字段名',5,'0') from dual; 这样就可以了注:'字段名''为待补字符;5表示补齐后的总字符长度;0表示不足时补什么字符,比如想补A ,把0改成A就好rpad是右侧补0 (right),左侧补0是 lpad(left)举例:表 HH 中有字段 ZDDM, FD , FD_ZDSELECT rpad(ZDDM,5,'0'...原创 2018-09-13 13:30:29 · 965 阅读 · 0 评论 -
数据泵expdp导出数据,如何排除掉某一张表
今天需要用数据泵导出数据,但是一张查档日志文件太大,不需要导出,表名是 QL_RES,即要排除掉QL_RES导出脚本:expdp user/user@bdc1029 directory=DANGAN_YW exclude=table:in('QL_RES') dumpfile=STATE_20181122.dmp logfile=STATE_1122.log schemas=user ...原创 2018-11-01 18:07:23 · 8252 阅读 · 0 评论 -
java- Navicat连接mysql出现2003——can't connect to mysql server on localhost(10061)
我这边电脑出现这个原因,有点蛋疼,竟然是服务没启动,哈哈哈哈。 快捷键 :win+R ,运行栏输入:services.msc 打开服务,然后将mysql的服务启动 启动服务之后,就好了: ...原创 2018-12-26 16:53:54 · 207 阅读 · 0 评论 -
如何设置MYSQL的执行快捷键
1.在C:\Program Files\MySQL\MySql Workbench\data\的安装路径下找到main_menu.xml这个文件。本地安装在C盘,安装路径根据读者自己的来(如果不知道安装路径,可以搜索MySql Workbench来确定)2.打开main_menu.xml文件并搜索com.mysql.wb.menu.query.exec 找到配置信息,将快捷键设置为F...原创 2019-07-08 10:05:02 · 3012 阅读 · 0 评论 -
MYSQL执行delete 报错Error Code: 1175. You are using safe update mode and you tried to update a table
原因是默认安装的MYSQL更新或者删除时需要加条件where和限制limit,确保安全。。EDIT->PERFERENCES->SQL EDITOR下面把勾去掉就可以了原创 2019-07-08 16:55:18 · 502 阅读 · 0 评论 -
执行mysql修改字段长度,报错 1142 - command denied to user 'bdcycsl'@'localhost' for table 'user'
运行环境:mysql本地建立连接206服务器有bdcycsl用户,本地用户root执行修改表字段长度报错:alter table bdcycsl.DY modify column fj varchar(2000);报错提示:权限问题刚开始我有个疑问:我是在bdcycsl用户下面执行的脚本,为什么提示我本地无权限? 'bdcycsl'@'localhost'怎么是@local...原创 2019-07-09 11:32:50 · 1551 阅读 · 0 评论 -
创建触发器,使主键ID递增
--创建表 CREATE TABLE V_TEMP(ID NUMBER(10),NAME VARCHAR2(100));SELECT * FROM V_TEMP; --创建序列 CREATE SEQUENCE SEQ_IDMINVALUE 1 --最小值MAXVALUE 99999999 --最大值START WITH 1 --从哪个数开始INCR原创 2018-01-31 17:17:07 · 1099 阅读 · 0 评论