A. 關於plsql中的rollback to 的問題
rollback to .. 只能用在EXCEPTION
塊中 rollback;可以回滾整個事務可以放在任何地方
你上面寫的沒意義啊,插入了又馬上回滾
回滾還不在異常塊里 那程序還得接著走又插入又回滾???呵呵所以報錯啊
如果insert沒成功肯定跑到異常塊中程序不會再往下走
B. oracle資料庫中數據回滾的概念
朋友:
oracle中有兩樣東西是用來記錄歷史的
一、重做日誌 REDO(作用就是當你8點做了很多事情,到10點由於資料庫8點到10點操作的某個文件壞了,那麼8點到10點的的東西全都不見了,但是REDO還在。你就可以用REDO來做重做你8點到10點所做的事,REDO就是記錄了這樣的事!)
二、回滾段 UNDO (作用就是當你後悔做了某些事之後就可以回到以前,但是在人間可是沒有後悔要賣的哦。如你無意刪除一個表,你就可以用rollback命令來回滾,它利用的就是oracle 的撤消表空間記錄的內容。當然這個表空間滿了的時候也就不能回滾到它沒記錄的內容了。)
C. 什麼是回滾操作
是對沒有提交的事務而又寫入數據文件而言的,把沒有提交的數據進行回滾。如果回滾段不存在沒有提交的數據則會根據redo log的內容在前滾階段生成回滾段。
D. 什麼是數據回滾
即撤銷對數據的改動,不保存到資料庫.
一般是在發生錯誤的時候調用rollback(),這樣做是為了保證數據的一致性,要不都成功,要不都失敗,以免在資料庫中寫入垃圾數據。
E. 資料庫回滾
沒有commit不不是說數據沒有更新到數據文件,而只是說沒有確定最終的修改,但數據可能已經寫到資料庫中了,這時就需要執行回滾,利用undo日誌把數據恢復成執行前的狀態。
F. 如何將Oracle資料庫回滾至一個日期
可以這樣做:
alter table 表名 enable row movement;
flashback table 表名 to timestamp to_timestamp('2011-03-04 05:00:00','yyyy-mm-dd HH24:MI:SS');
以上就是需要回滾到某一日期的方法!
G. SQL存儲過程,如何回滾啊
當 SET XACT_ABORT 為 ON 時,如果執行 Transact-SQL 語句產生運行時錯誤,則整個事務將終止並回滾。
當 SET XACT_ABORT 為 OFF 時,有時只回滾產生錯誤的 Transact-SQL 語句,而事務將繼續進行處理。如果錯誤很嚴重,那麼即使 SET XACT_ABORT 為 OFF,也可能回滾整個事務。OFF 是默認設置。
編譯錯誤(如語法錯誤)不受 SET XACT_ABORT 的影響。
對於大多數 OLE DB 提供程序(包括 SQL Server),必須將隱式或顯示事務中的數據修改語句中的 XACT_ABORT 設置為 ON。唯一不需要該選項的情況是在提供程序支持嵌套事務時。有關詳細信息,請參閱 分布式查詢和分布式事務。
SET XACT_ABORT 的設置是在執行或運行時設置,而不是在分析時設置。
示例
下列代碼示例導致在含有其他 Transact-SQL 語句的事務中發生外鍵沖突錯誤。在第一個語句集中產生錯誤,但其他語句均成功執行且事務成功提交。在第二個語句集中,將 SET XACT_ABORT 設置為 ON。這導致語句錯誤使批處理終止,並使事務回滾。
復制代碼
USE AdventureWorks;
GO
IF OBJECT_ID(N't2', N'U') IS NOT NULL
DROP TABLE t2;
GO
IF OBJECT_ID(N't1', N'U') IS NOT NULL
DROP TABLE t1;
GO
CREATE TABLE t1
(a INT NOT NULL PRIMARY KEY);
CREATE TABLE t2
(a INT NOT NULL REFERENCES t1(a));
GO
INSERT INTO t1 VALUES (1);
INSERT INTO t1 VALUES (3);
INSERT INTO t1 VALUES (4);
INSERT INTO t1 VALUES (6);
GO
SET XACT_ABORT OFF;
GO
BEGIN TRANSACTION;
INSERT INTO t2 VALUES (1);
INSERT INTO t2 VALUES (2); -- Foreign key error.
INSERT INTO t2 VALUES (3);
COMMIT TRANSACTION;
GO
SET XACT_ABORT ON;
GO
BEGIN TRANSACTION;
INSERT INTO t2 VALUES (4);
INSERT INTO t2 VALUES (5); -- Foreign key error.
INSERT INTO t2 VALUES (6);
COMMIT TRANSACTION;
GO
-- SELECT shows only keys 1 and 3 added.
-- Key 2 insert failed and was rolled back, but
-- XACT_ABORT was OFF and rest of transaction
-- succeeded.
-- Key 5 insert error with XACT_ABORT ON caused
-- all of the second transaction to roll back.
SELECT *
FROM t2;
GO
H. return 什麼情況下要加to,什麼情況下不用加~~~~~~~~~~~不要太復雜 康薩米大
return有兩種意思1.返回,當做返回講時,是不及物動詞,不及物動詞不能直接跟賓語,return to landon。而renturn landon是錯誤的。 但可以直接跟副詞,比如 return home(home 是個副詞,所以不用加to,這一情況可以推廣到所有不及物動詞)2.歸還,當歸還講,是及物動詞,可以直接跟賓語,類似give back,但跟人時,常用語句為retrunsomething to somebody。當返回時一般要加to(跟副詞時,不用加),當歸還時不用加to(如果要還給某人,要用to sb)。拓展資料return to =go back,但也有些區別的:return to中,return是動詞,加to表示回到哪裡(動作),如果return後面不加to,則只能用在here, there等詞前。back to中,back不是動詞,加to只表示方向,前面必須有go, come等動詞,才能填在橫線處。而單單一個back前面沒有動詞,後面沒有to就更不能使句子正確了。can和be able to的區別:can 和be able to 都可以表示能力.can泛指一般的能力,而且只有兩種形式,即:can, could.be able to 則主要指具體做到了某件事的能力,其形式主要是靠be 發生變化,所以形式比can 多.可以說:I can swim. I am able toswim. 但是不能說:All the people could escape from the big fire intime. 只能說:All the people were able to escape from the fire intime.英語中,根據是否可以直接跟賓語,動詞可分為及物動詞和不及物動詞兩種。在字典中,標有vt.的詞是及物動詞,標有vi.的詞是不及物動詞,及物動詞後面可以直接跟有動作的賓語(即賓語)。所謂「及物性」和「和諧」具有「跟隨、達到、聯系」的含義。傳遞性意味著你需要用「傳遞性」來完成一個動作。這個動作有一個對象,這個對象就是要添加到它後面的對象,也就是一般意義上的對象。一般情況下,帶賓語的動詞可以直接加在後面,是被動形式。而不及物動詞沒有被動語態,其行為也沒有賓語,只是表達一種特定的狀態。不能直接加賓語,但要加介詞。你可以在及物動詞後直接添加一個賓語,但不能在不及物動詞後直接添加賓語。一般來說,你應該先加一個介詞,再加一個賓語。事實上,許多動詞既是及物動詞,也是不及物動詞。及物動詞是指可以把名詞、代詞和動名詞作為賓語的動詞。