Oracle PL/SQL ORA-00947 Not Enough Values Error Oracle PL / SQL-00947 Ora Tak Cukup Nilai Kesalahan
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. Dalam Oracle Database, berikut pesan error yang mungkin muncul ketika salah pernyataan SQL digunakan dalam SQL Plus atau di mana saja yang mengirimkan SQL query ke database seperti prosedur disimpan atau program eksternal.
PL/SQL: SQL Statement ignored PL / SQL: SQL Statement diabaikan
PL/SQL: ORA-00947: not enough values PL / SQL: Ora-00947: tidak cukup nilai-nilai
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. Alasan Ora-00947 kesalahan adalah ketika sebuah pernyataan SQL memerlukan dua set nilai, misalnya jumlah kolom jumlah dan nilai yang ditetapkan dalam SQL harus sama jumlahnya. But the second part of the query which is column values contains fewer items than the first part which is the number of columns. Tetapi kedua bagian dari permintaan yang kolom nilai berisi item yang lebih sedikit dibandingkan dengan bagian yang pertama adalah jumlah kolom. 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. Mei kesalahan terjadi di semua jenis statemen SQL - Insert, Update atau Pilih - dan juga dapat terjadi dalam WHERE atau HAVING ayat di mana sebuah nested sub-SELECT kembali terlalu sedikit kolom. If the SQL does not specify columns, it means that the values entered are less that the columns existed in the table in database. Jika SQL tidak menentukan kolom, berarti bahwa nilai-nilai yang dimasukkan kurang kolom yang ada dalam tabel pada database.
For example, the ORA-00947 error will be returned if you try to execute the following SQL statements: Misalnya, Ora-00947 kesalahan akan kembali jika Anda mencoba untuk menjalankan statemen SQL berikut:
INSERT INTO Customers (Customer_ID, Customer_Name, Birthday) VALUES ('1′, 'My Customer'); INSERT INTO Pelanggan (Customer_ID, Customer_Name, Birthday) NILAI ('1 ',' Saya Pelanggan ');
or atau
SELECT * FROM Customers WHERE (Customer_ID, Customer_Name) IN (SELECT Customer_ID FROM Orders); SELECT * FROM Pelanggan WHERE (Customer_ID, Customer_Name) IN (SELECT Customer_ID DARI Orders);
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. Untuk memecahkan masalah dan memperbaiki masalah, pastikan jumlah nilai yang diberikan pada kolom bagian nilai sama pada kolom yang ditentukan, atau jumlah kolom dalam tabel, dan mengganti pernyataan SQL untuk membuat mereka sama.
You can either reduce the number of columns, or increase the number of values provided to the column to make the SQL statement equaled. Anda dapat mengurangi jumlah kolom, atau meningkatkan jumlah nilai yang diberikan kepada kolom untuk membuat statemen SQL equaled. This applies to the nested SQL statements with HAVING or WHERE clause too. Hal ini berlaku untuk pernyataan yang nested SQL dengan klausa WHERE atau HAVING juga. For example, the correct SQL statements should be like the following: Misalnya, statemen SQL yang benar harus seperti berikut ini:
INSERT INTO Customers (Customer_ID, Customer_Name, Birthday) VALUES ('1′, 'My Customer', '08/08/1988′); INSERT INTO Pelanggan (Customer_ID, Customer_Name, Birthday) NILAI ('1 ',' Saya Pelanggan ','08 / 08/1988');
or atau
INSERT INTO Customers (Customer_ID, Customer_Name) VALUES ('1′, 'My Customer'); INSERT INTO Pelanggan (Customer_ID, Customer_Name) NILAI ('1 ',' Saya Pelanggan ');
or atau
SELECT * FROM Customers WHERE (Customer_ID, Customer_Name) IN (SELECT Customer_ID, Customer_Name FROM Orders); SELECT * FROM Pelanggan WHERE (Customer_ID, Customer_Name) IN (SELECT Customer_ID, DARI Customer_Name Orders);
or atau
SELECT * FROM Customers WHERE (Customer_ID) IN (SELECT Customer_ID FROM Orders); SELECT * FROM Pelanggan WHERE (Customer_ID) IN (SELECT Customer_ID DARI Orders);
IMPORTANT : The page is machine translated and provided "as is" without warranty. PENTING: Halaman yang diterjemahkan mesin dan diberikan "sebagaimana adanya" tanpa jaminan. Machine translation may be difficult to understand. Mesin terjemahan mungkin sulit dimengerti. Please refer to Silakan merujuk ke original English article artikel asli Inggris whenever possible. bila memungkinkan.
Related Articles Artikel Terkait
- ORA-00942 Table or View Does Not Exist Oracle Error Ora-00942 Lihat Tabel atau Tidak Exist Oracle Error
- ORA-02449 Oracle Drop Table Error Ora-02449 Oracle Drop Tabel Kesalahan
- Easily Duplicate, Copy or Backup Tables in Oracle, PostgreSQL, DB2 and SQLite with Create Table As SQL Gandakan mudah, Salin atau Cadangan Tabel di Oracle, PostgreSQL, DB2 dan SQLite dengan Membuat Tabel Sebagai SQL
- Oracle ORA-14074 Create or Add New Partition Fails Error Oracle Ora-14074 Buat atau Tambah Baru Partisi gagal Kesalahan
- Create, Add or Split Oracle Database Partition Fails with ORA-14080 Error Membuat, Tambah atau Split Oracle Database Partisi gagal dengan Ora-14080 Kesalahan
- Oracle EXP-00091 Error When Export Database Oracle EXP-00091 Kesalahan Ketika Ekspor Database
- ORA-25153 Temporary Tablespace is Empty Error in Oracle Ora-25153 Temporary Tablespace adalah kosong Kesalahan dalam Oracle
- Oracle ORA-01658 Unable to Create INITIAL Extent for Segment in Tablespace Error Oracle Ora-01658 Tidak dapat Buat Luas awal untuk Segmen dalam Tablespace Kesalahan
- Oracle Database Import Error 3113/3114 Oracle Database Impor Kesalahan 3113/3114
- IMP-00013 Oracle Import Error IMP-00013 Oracle Impor Kesalahan









































