Oracle PL/SQL ORA-00947 Not Enough Values Error Oracle PL / SQL ORA-00947 não basta valores erro
In Oracle database, the following error message may appear when an incorrect SQL statement is used, in SQL Plus or in anywhere that send SQL queries to the databases such as stored procedure or external programs. No banco de dados Oracle, a seguinte mensagem de erro pode aparecer quando um comando SQL incorreto é utilizado, no SQL Plus ou em qualquer lugar que enviar consultas SQL para as bases de dados tais como o procedimento armazenado ou programas externos.
PL/SQL: SQL Statement ignored PL / SQL: SQL ignorada
PL/SQL: ORA-00947: not enough values PL / SQL: ORA-00947: não basta valores
The reason for ORA-00947 error is when a SQL statement requires two sets of value, ie number of number of columns and its value that are specified in the SQL to be equal in number. A razão para ORA-00947 erro é quando um comando SQL exige dois conjuntos de valor, ou seja, número de série de colunas eo seu valor que estão especificadas no SQL a ser em número igual. But the second part of the query which is column values contains fewer items than the first part which is the number of columns. Mas a segunda parte da pergunta que é coluna contém valores menos itens do que a primeira parte que é o número de colunas. The error may happens in all kind of SQL statements - Insert, Update or Select - and it can also occur in a WHERE or HAVING clause in which a nested sub-SELECT returns too few columns. O erro pode acontecer em todo o tipo de instruções SQL - Inserir, Atualizar ou Selecione - e ele também pode ocorrer em uma cláusula WHERE ou HAVING em que um sub-SELECT aninhada volta muito poucas colunas. If the SQL does not specify columns, it means that the values entered are less that the columns existed in the table in database. Se o SQL não especifica colunas, que significa que os valores inscritos são menos que as colunas existia na tabela do banco de dados.
For example, the ORA-00947 error will be returned if you try to execute the following SQL statements: Por exemplo, as ORA-00947 erro será retornado se você tentar executar os seguintes comandos SQL:
INSERT INTO Customers (Customer_ID, Customer_Name, Birthday) VALUES (’1′, ‘My Customer’); INSERT INTO Clientes (Customer_ID, Customer_Name, Aniversário) VALUES ('1 ',' My Cliente ');
or ou
SELECT * FROM Customers WHERE (Customer_ID, Customer_Name) IN (SELECT Customer_ID FROM Orders); SELECT * FROM Clientes WHERE (Customer_ID, Customer_Name) IN (SELECT Customer_ID de encomendas);
To solve the error and correct the problem, check that the number of values provided in the column values part is equal that the columns specified, or the number of columns in table, and change the SQL statement to make them equal. Para resolver o erro e corrigir o problema, verifique se o número de valores fornecidos na coluna valores iguais parte é que as colunas especificado, ou o número de colunas na tabela, e mudar o comando SQL para torná-las iguais.
You can either reduce the number of columns, or increase the number of values provided to the column to make the SQL statement equaled. Você pode reduzir o número de colunas, ou aumentar o número de valores fornecidos para a coluna para fazer a declaração SQL equaled. This applies to the nested SQL statements with HAVING or WHERE clause too. Isto é válido para os comandos SQL aninhados com TENDO ou WHERE também. For example, the correct SQL statements should be like the following: Por exemplo, a correcta instruções SQL como deve ser a seguinte:
INSERT INTO Customers (Customer_ID, Customer_Name, Birthday) VALUES (’1′, ‘My Customer’, ‘08/08/1988′); INSERT INTO Clientes (Customer_ID, Customer_Name, Aniversário) VALUES ('1 ',' O meu cliente ','08 / 08/1988');
or ou
INSERT INTO Customers (Customer_ID, Customer_Name) VALUES (’1′, ‘My Customer’); INSERT INTO Clientes (Customer_ID, Customer_Name) VALUES ('1 ',' My Cliente ');
or ou
SELECT * FROM Customers WHERE (Customer_ID, Customer_Name) IN (SELECT Customer_ID, Customer_Name FROM Orders); SELECT * FROM Clientes WHERE (Customer_ID, Customer_Name) IN (SELECT Customer_ID, Customer_Name de encomendas);
or ou
SELECT * FROM Customers WHERE (Customer_ID) IN (SELECT Customer_ID FROM Orders); SELECT * FROM Clientes WHERE (Customer_ID) IN (SELECT Customer_ID de encomendas);
IMPORTANT : This is a machine translated page which is provided "as is" without warranty. IMPORTANTE: Esta é uma página traduzida máquina que é fornecida "como está" sem garantia. Machine translation may be difficult to understand. A tradução automática pode ser difícil de compreender. Please refer to Por favor, consulte a original English article Inglês original article whenever possible. sempre que possível.
Share and contribute or get technical support and help at Compartilhe e contribuir ou obter suporte técnico e ajudar a My Digital Life Forums Minha vida digital Fóruns .
Related Articles Artigos relacionados
- Oracle Database Import Error 3113/3114 Banco de dados Oracle importação erro 3113/3114
- Create, Add or Split Oracle Database Partition Fails with ORA-14080 Error Criar, Adicionar ou Split Oracle Database Partição falhe com Erro ORA-14080
- ORA-00942 Table or View Does Not Exist Oracle Error ORA-00942 Ver tabela ou não existe erro Oracle
- ORA-02449 Oracle Drop Table Error ORA-02449 Oracle gota tabela erro
- Oracle ORA-01658 Unable to Create INITIAL Extent for Segment in Tablespace Error Oracle ORA-01658 Não foi possível criar INICIAL Extensão para o segmento no tablespace Erro
- ORA-01502 Oracle Index in Unusable State ORA-01502 Oracle Índice inutilizáveis no Estado
- Manual and Clean Uninstall Oracle for Windows Manual limpo e desinstalação Oracle para Windows
- Oracle ORA-14074 Create or Add New Partition Fails Error Oracle ORA-14074 criar ou adicionar novas partições falhar erro
- How to Rename or Move Oracle Tablespace Datafile to Another Location Como mudar o nome ou mover Oracle tablespace Datafile para outro local
- How to Escape Characters in Oracle PL/SQL Queries Como escapar caracteres em Oracle PL / SQL queries
































