我是 Oracle 表單的新手。我已將表單連接到資料庫。然后創建資料塊選擇資料塊向導。我選擇了我的資料庫表 ORDERS。我在 sqlplus 的這個 ORDERS 表中插入了值。創建 ORDERS 資料塊后,我通過瀏覽器運行表單,單擊選單上的執行查詢,但它沒有從我的資料庫表中獲取資料。它說,FRM-40350 Query Caused No REcords to be retrieved 。但是在 sqlplus 中,我檢查了成功創建的行和列是否填寫了值,并且我的申請表已連接到我的資料庫。那為什么我的執行查詢不起作用?我怎樣才能解決這個問題?
uj5u.com熱心網友回復:
如果您在 SQLPlus 和 Forms 中都連接到同一個用戶(您可能是,否則 Forms 將看不到該表并且您將無法在其上建立資料塊),您可能在插入后沒有COMMIT SQLPlus 中的行。
您發布的代碼應該是固定的(無效的資料型別,缺少列名,不要將字串插入 DATE 資料型別列):
SQL> CREATE TABLE ORDERS(
2 order_id NUMBER(20),
3 customer_id NUMBER(20),
4 order_date DATE, -- NUMBER(20), --> date, not number
5 order_status VARCHAR2(20),
6 order_mode VARCHAR2 (200),
7 SALES_REP_ID NUMBER (20) );
Table created.
SQL> INSERT INTO orders (
2 order_id,
3 customer_id,
4 order_date,
5 order_status,
6 order_mode,
7 sales_rep_id
8 ) VALUES (
9 0001,
10 01,
11 date '2008-02-11', -- not '11-FEB-2008', it is a STRING
12 '5',
13 'direct',
14 158
15 );
1 row created.
這就是你所缺少的:
SQL> COMMIT;
Commit complete.
SQL>
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/428091.html
