GVKun编程网logo

sql 查询报错:[Err] ORA-00913: too many values(general sql error ora-03114)

15

本文将为您提供关于sql查询报错:[Err]ORA-00913:toomanyvalues的详细介绍,我们还将为您解释generalsqlerrorora-03114的相关知识,同时,我们还将为您提供

本文将为您提供关于sql 查询报错:[Err] ORA-00913: too many values的详细介绍,我们还将为您解释general sql error ora-03114的相关知识,同时,我们还将为您提供关于Android 报错:error: too many padding sections on bottom border、centos7.1系统报错:Error: Too many open files、ERROR 1366 (HY000): Incorrect string value: ''\xE9\x83\x91\xE5\xB7\x9E'' for column ''aa...、ERROR 1366 (HY000): Incorrect string value:MySQL 数据库、表的字符集为 GBK的实用信息。

本文目录一览:

sql 查询报错:[Err] ORA-00913: too many values(general sql error ora-03114)

sql 查询报错:[Err] ORA-00913: too many values(general sql error ora-03114)

 查询 sql:

SELECT * from T_QL_CASE q 
where q.CASE_OID IN(
select f.CASE_OID,f.FINAL_STATUS 
from T_QL_CASE_APPROVAL_FINAL f 
where FINAL_STATUS=''2'' 
OR  FINAL_STATUS=''33'' 
OR  FINAL_STATUS=''43'' 
OR  FINAL_STATUS=''34'' 
OR  FINAL_STATUS=''5'');

问题原因:

SELECT * from T_QL_CASE q 
where q.CASE_OID IN(
select f.CASE_OID,f.FINAL_STATUS 
from T_QL_CASE_APPROVAL_FINAL f 
where FINAL_STATUS=''2'' 
OR  FINAL_STATUS=''33'' 
OR  FINAL_STATUS=''43'' 
OR  FINAL_STATUS=''34'' 
OR  FINAL_STATUS=''5'');

两个红色的地方,where 后面的列数应该和 in (select cloum1,clounm2) 中 select 的列数相同。

 

当 INSERT 报这个错误时,一般是插入数据的列数不一致。

 

原sql:
insert into abc.employees select * from employees where employee_id=100; 
报错:
Error starting at line 1 in command:
insert into abc.employees select * from employees where employee_id=100; 

Error at Command Line:1 Column:25
Error report:
SQL Error: ORA-00913: too many values
00913. 00000 -  "too many values"
*Cause:    
*Action:



解决办法:::

应按如下所示指定列名称
insert into abc.employees (col1,col2) 
select col1,col2 from employees where employee_id=100; 



如果employees有112列(原文如此!)尝试在下面运行以选择比较两个表的列
select * 
from ALL_TAB_COLUMNS ATC1
left join ALL_TAB_COLUMNS ATC2 on ATC1.COLUMN_NAME = ATC1.COLUMN_NAME 
                               and  ATC1.owner = UPPER(''2nd owner'')
where ATC1.owner = UPPER(''abc'')
and ATC2.COLUMN_NAME is null
AND ATC1.TABLE_NAME = ''employees''
然后您应该将表升级为具有相同的结构

 

Android 报错:error: too many padding sections on bottom border

Android 报错:error: too many padding sections on bottom border

一、发生错误

【我以为我做了一张完美的.9图片,没想到.9图片还需要画左边和上边,尴尬···】

 

二、解决方法

 .9图片造成错误

【具体内容】

最后修改.9图为

 

总结

以上是小编为你收集整理的Android 报错:error: too many padding sections on bottom border全部内容。

如果觉得小编网站内容还不错,欢迎将小编网站推荐给好友。

centos7.1系统报错:Error: Too many open files

centos7.1系统报错:Error: Too many open files

描述:今天早上使用root用户界面式登录centos7.1那台机器时,第一步通过windows连接认证是通过的,但是在centos7.1那台机器输入密码打开桌面时,一直登录不上,后来想重启一下远程小工具xrdp,在执行:[root@dc /]# systemctl restart xrdp.service 时报错:Error: Too many open files。

问题解决步骤:

1.查看进程打开文件数量:

lsof -n | awk ''{print$2}'' | sort|uniq -c | sort -nr| more
其中第一行是打开的文件句柄数量,第二行是进程号

备注:很具进程号,可以查看

ps -aef | grep 20156

可以看到具体是哪个进程打开了这么多文件

2.把这个进程kill掉,如果有多个进程都打开了很多文件,就把这些进行都kill掉。

kill  进程号

如:kill 20156

然后等一分钟左右,再登录就可以了。

ERROR 1366 (HY000): Incorrect string value: ''\xE9\x83\x91\xE5\xB7\x9E'' for column ''aa...

ERROR 1366 (HY000): Incorrect string value: ''\xE9\x83\x91\xE5\xB7\x9E'' for column ''aa...

ERROR 1366 (HY000): Incorrect string value: ''\xE9\x83\x91\xE5\xB7\x9E'' for column ''aa'' at row 1
创建表之后不能插入中文字符?为啥呢?
了解字符集的重要性。它必须在建库之前要确定好,恢复备份时也需要注意

mysql> use test
Database changed
mysql> create table zgy(aa char(20));
Query OK, 0 rows affected (0.01 sec)

mysql> insert into zgy values(''zgzg'');
Query OK, 1 row affected (0.01 sec)

mysql> insert into zgy values(''郑州'');
ERROR 1366 (HY000): Incorrect string value: ''\xE9\x83\x91\xE5\xB7\x9E'' for column ''aa'' at row 1
mysql> show variables like ''%char%'';
+--------------------------+----------------------------------+
| Variable_name | Value |
+--------------------------+----------------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | latin1 |
| character_set_system | utf8 |
| character_sets_dir | /usr/local/mysql/share/charsets/ |
+--------------------------+----------------------------------+
8 rows in set (0.00 sec)

这部分已执行

set character_set_client=utf8;
set character_set_connection=utf8;
set character_set_database=utf8;
set character_set_results=utf8;
set character_set_server=utf8;
set character_set_system=utf8;
set collation_connection=utf8;
set collation_database=utf8;
set collation_server=utf8;
set character_set_server=utf8;

mysql> show variables like''%char%'';
+--------------------------+----------------------------------+
| Variable_name | Value |
+--------------------------+----------------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/local/mysql/share/charsets/ |
+--------------------------+----------------------------------+
8 rows in set (0.00 sec)

仍然报错?
mysql> insert into zgy values(''郑州'');
ERROR 1366 (HY000): Incorrect string value: ''\xE9\x83\x91\xE5\xB7\x9E'' for column ''aa'' at row 1

这时候只是将DB的改成utf8了,而zgy表是之前创建的

mysql> alter database test character set utf8;
Query OK, 1 row affected (0.00 sec)

mysql> show create database test;
+----------+---------------------------------------------------------------+
| Database | Create Database |
+----------+---------------------------------------------------------------+
| test | CREATE DATABASE `test` /*!40100 DEFAULT CHARACTER SET utf8 */ |
+----------+---------------------------------------------------------------+
1 row in set (0.00 sec)

mysql> show create table zgy;
+-------+------------------------------------------------------------------------------------------+
| Table | Create Table |
+-------+------------------------------------------------------------------------------------------+
| zgy | CREATE TABLE `zgy` (
`aa` char(20) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1 |
+-------+------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)

改变表的字符集,发现还不行
mysql> alter table zgy character set utf8;
Query OK, 0 rows affected (0.00 sec)
Records: 0 Duplicates: 0 Warnings: 0

mysql> insert into zgy values(''郑州'');
ERROR 1366 (HY000): Incorrect string value: ''\xE9\x83\x91\xE5\xB7\x9E'' for column ''aa'' at row 1
mysql>
mysql> show create table zgy;
+-------+-------------------------------------------------------------------------------------------------------------+
| Table | Create Table |
+-------+-------------------------------------------------------------------------------------------------------------+
| zgy | CREATE TABLE `zgy` (
`aa` char(20) CHARACTER SET latin1 DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8 |
+-------+-------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)

修改字段的字符集
创建库时默认已经指定了表和字段等对象的字符集
mysql> alter table zgy aa char(20) CHARACTER SET utf8;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''aa char(20) CHARACTER SET utf8'' at line 1
mysql> ALTER TABLE zgy CHANGE aa aa char(20) CHARACTER SET utf8;
Query OK, 2 rows affected (0.02 sec)
Records: 2 Duplicates: 0 Warnings: 0

mysql> show create table zgy;
+-------+----------------------------------------------------------------------------------------+
| Table | Create Table |
+-------+----------------------------------------------------------------------------------------+
| zgy | CREATE TABLE `zgy` (
`aa` char(20) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8 |
+-------+----------------------------------------------------------------------------------------+
1 row in set (0.00 sec)

mysql> insert into zgy values(''郑州'');
Query OK, 1 row affected (0.01 sec)

mysql> insert into zgy values(''深圳'');
Query OK, 1 row affected (0.00 sec)

mysql> select * from zgy;
+--------------+
| aa |
+--------------+
| zgzg |
| asasas121212 |
| 郑州 |
| 深圳 |
+--------------+
4 rows in set (0.00 sec)

小常识:
看到是gbk和latin1说明不支持中文,所以需要修改字符类型
在latin1中,每个字符只有一个字节长。在utf8中,一个字符可以由多个字节组成。因此,utf8具有比latin1更多的字符(并且它们具有的字符不一定由相同的字节/字节序列表示)。但是我们的中文汉字是要2个字节还是3个字节哦,所有latin1就不能存储汉字啦。

优点:一劳永逸,在创建数据库时就设置为utf8格式,以后再次数据库下创建表时以及添加表数据时都不用担心中文字符问题。
CREATE database testdb DEFAULT CHARACTER SET utf8;

一些关于查看和修改字符集的MySQL知识:
查看mysql的字符集:show variables where Variable_name like ''%char%'';
查看某一个数据库字符集:show create database enterprises;(注:enterprises为数据库)
查看某一个数据表字符集:show create table employees;(注:employees为数据表)

修改mysql的字符集
set character_set_client=utf8;
set character_set_connection=utf8;
set character_set_database=utf8;
set character_set_results=utf8;
set character_set_server=utf8;
set character_set_system=utf8;
set collation_connection=utf8;
set collation_database=utf8;
set collation_server=utf8;

修改数据库enterprises的字符集:
alter database enterprises character set utf8

修改数据表employees的字符集:
alter table employees character set utf8

修改字段的字符集
alter table employees change name name char(10) character set utf-8;

ERROR 1366 (HY000): Incorrect string value:MySQL 数据库、表的字符集为 GBK

ERROR 1366 (HY000): Incorrect string value:MySQL 数据库、表的字符集为 GBK

mysql> update userinfo set MEDIASOURCE = ''CS02 - 北京 '' where IMPORTNO = ''IMP201640613101206'';
ERROR 1366 (HY000): Incorrect string value: ''\x91'' for column ''MEDIASOURCE'' at row 1

mysql> show variables like ''%char%'';
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | gbk |
| character_set_connection | gbk |
| character_set_database | gbk |
| character_set_filesystem | binary |
| character_set_results | gbk |
| character_set_server | gbk |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.00 sec)

mysql> set character_set_client =utf8;
Query OK, 0 rows affected (0.00 sec)

mysql> set character_set_server =utf8;
Query OK, 0 rows affected (0.00 sec)

mysql> show variables like ''%char%'';
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | utf8 |
| character_set_connection | gbk |
| character_set_database | gbk |
| character_set_filesystem | binary |
| character_set_results | gbk |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.00 sec)

mysql> update userinfo set MEDIASOURCE = ''CS02 - 北京 '' where IMPORTNO = ''IMP201640613101206'';
Query OK, 169 rows affected (0.03 sec)
Rows matched: 169 Changed: 169 Warnings: 0

今天关于sql 查询报错:[Err] ORA-00913: too many valuesgeneral sql error ora-03114的介绍到此结束,谢谢您的阅读,有关Android 报错:error: too many padding sections on bottom border、centos7.1系统报错:Error: Too many open files、ERROR 1366 (HY000): Incorrect string value: ''\xE9\x83\x91\xE5\xB7\x9E'' for column ''aa...、ERROR 1366 (HY000): Incorrect string value:MySQL 数据库、表的字符集为 GBK等更多相关知识的信息可以在本站进行查询。

本文标签: