




已閱讀5頁,還剩91頁未讀, 繼續免費閱讀
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
使用 Oracle 移植工作臺從 Microsoft SQL Server 移植到 Oracle 數據庫 10g 目的本模塊介紹了如何使用 Oracle 移植工作臺從 Microsoft SQL Server 數據庫移植到 Oracle 數據庫 10g。所需時間 大約 2 個小時 主題本教程將討論下列主題:概述 情景前提條件 安裝和配置 Oracle 移植工作臺 創建源模型創建 Oracle 模型自定義 Oracle 模型將表空間、用戶以及用戶表移植到目標數據庫中將數據移植到目標數據庫中將其余模式對象移植到目標數據庫中驗證成功移植了存儲過程和觸發器生成和查看 Oracle 移植工作臺報告總結 概述Oracle 移植工作臺是什么?Oracle 移植工作臺是一種簡化從第三方數據庫系統到 Oracle 平臺(Oracle9i 和 Oracle 數據庫 10g)移植過程的工具。Oracle 移植工作臺在集成環境中移植整個數據庫模式(包括觸發器和存儲過程)。 通過 Oracle 移植工作臺,您可以: 使用向導和腳本在各個階段進行移植 使用聯機捕獲或脫機捕獲檢索源數據庫信息 自定義信息庫中的 Work In Progress 數據庫對象 分析存儲過程、觸發器以及視圖,并將它們轉換為 Oracle PL/SQL 通過報告和消息監視移植的狀態。 Oracle 移植工作臺從源數據庫庫(如 SQL Server)提取信息,并創建 Oracle 目標數據庫。為了移植不同的源數據庫,Oracle 移植工作臺針對其所能移植的每一個數據庫使用專門的插件。通過脫機捕獲方法,Oracle 移植工作臺從源數據庫檢索元數據,并將它們存儲到您載入到工作臺信息庫的一組文件中。工作臺信息庫是 Oracle 數據庫中的一組表,包含有關移植的所有信息。工作臺信息庫由源模型(表示源數據庫)和 Oracle 模型(表示 Oracle 數據庫)組成。您可以在工作臺信息庫對源模型和 Oracle 模型進行修改,而不會影響生產環境。 情景在本教程中,您要將 SQL Server 2000(源數據庫)中的 HR 數據庫移植到 Oracle 數據庫 10g(目標數據庫)中。本教程為您提供脫機捕獲文件,這些文件是從 Microsoft SQL Server 2000 源數據庫中提取的元數據。創建和自定義源模型和 Oracle 模型后,您可以移植模式對象并使用 SQL*Loader 腳本移植表數據。 前提條件開始本教程之前,您應該:1.在 Windows 資源管理器中,導航到 DVD 中的 Oracle_Migration_Workbench 文件夾,將 omwb_windows.zip 解壓縮到本地驅動器上的文件夾中(如 c:omwb)。2.取消 offline_capture 子文件夾中文件的只讀屬性。 i) 定位 offline_capture_files 子文件夾,右鍵單擊并選擇屬性。ii) 在“屬性”中,取消選擇“只讀”并單擊應用。iii) 接受默認選項“將更改應用于該文件夾、子文件夾及文件”,然后單擊確定。 iv) 單擊確定。 3.訪問 Oracle 數據庫 10g 第 2 版數據庫。 4.將 VMware Workstation 中的共享文件夾 vmware_shared 設置為主機文件夾中的 c:vmware_shared。 安裝和配置 Oracle 移植工作臺 開始使用 Oracle 移植工作臺之前,您將在目標數據庫中安裝工具、創建信息庫以及創建用戶及相關的表空間。安裝 Oracle 移植工作臺創建 Oracle 移植工作臺信息庫在目標 Oracle 數據庫中創建 omwb_user在目標 Oracle 數據庫中創建 sa 表空間安裝 Oracle 移植工作臺執行以下步驟:1.導航到 c:omwb 文件夾,雙擊 omwb_w2k.zip 將文件解壓縮到 c:omwb 文件夾中。注意:創建了一個 omwb 子文件夾(如 c:omwbOmwb)。2.復制 c:omwbSQLServer2K.jar 文件并將其粘貼到 c:omwbOmwbplugins 中。 返回主題創建工作臺信息庫執行以下步驟:1.要啟動 Oracle 移植工作臺,打開命令提示符窗口并輸入:cd c:omwbOmwbbinomwb.bat2.打開 Oracle Workbench Repository Login 窗口。選擇 Default Repository 并單擊 OK。 3.首次登錄 Oracle 移植工作臺時,將出現一個彈出窗口,提示信息庫不存在。單擊 Yes 創建信息庫。 4.Create Migration Repository 窗口顯示創建信息庫的進度。出現 Repository successfully created. 消息時,單擊 Close。 5.在 Select Migration Source 窗口中,單擊 OK 選擇 Microsoft SQL Server 2000 PlugIn。 6.打開兩個窗口:Oracle Migration Workbench 和 Capture Wizard:歡迎。在 Capture Wizard 中單擊 Cancel:歡迎窗口。 返回主題在目標 Oracle 數據庫中創建 omwb_user執行以下步驟:1.如果還未創建該用戶,登錄運行 VMWARE、作為 oracle/oracle 的 Linux 操作系統。打開一個終端窗口,然后輸入以下命令:cd /home/oracle/wkdirsqlplus sys/oracle as sysdba2.執行 c_omwb_user.sql 腳本,在 Oracle 數據庫中創建 Oracle 移植工作臺用戶。start c_omwb_user該腳本執行以下語句:drop user omwb_user cascade;CREATE USER omwb_user IDENTIFIED BY omwb_user;GRANT CONNECT, RESOURCE, CREATE PUBLIC SYNONYM TO omwb_user WITH ADMIN OPTION; GRANT ALTER ANY ROLE, ALTER ANY SEQUENCE, ALTER ANY TABLE, ALTER TABLESPACE, ALTER ANY TRIGGER, COMMENT ANY TABLE, CREATE ANY SEQUENCE,CREATE ANY TABLE, CREATE ANY TRIGGER, CREATE ROLE, CREATE TABLESPACE,CREATE USER, DROP ANY SEQUENCE, DROP ANY TABLE, DROP ANY TRIGGER, DROP TABLESPACE,DROP USER, DROP ANY ROLE, GRANT ANY ROLE, INSERT ANY TABLE, SELECT ANY TABLE,UPDATE ANY TABLE TO omwb_user;GRANT create view to omwb_user with admin option;返回主題在目標數據庫中創建 SA 表空間執行以下步驟:1.在運行 VMWare 的 Linux 操作系統中,單擊桌面上的 Enterprise Manager Database Console 圖標,啟動企業管理器數據庫控制臺。 2.在 Enterprise Manager Database Control Login 頁面中,輸入以下信息: Username:sys Password:oracle Connect As:sysdba 單擊 Login。 3.在 Home 頁面中單擊 Administration 選項卡。 4.在 Storage 標題下面,單擊 Tablespaces 鏈接。 5.單擊 Create 按鈕。6.在 General 選項卡中,輸入表空間名:sa 并單擊頁面底部的 Add 按鈕。 7.在 Add Datafile 頁面中,將 File Size 設置為 30 MB,然后單擊 Continue 按鈕。 8.在 General 選項卡中,單擊 OK 創建表空間。 9.注意:已創建 SA 表空間。該表空間將用于存儲所移植的對象。 VCFEDSXCFGVB10.單擊 Cluster Database:RACDB 鏈接返回到 Administration 頁面。 返回主題創建源模型 現在,您將使用脫機捕獲文件創建源模型、檢查日志文件以及自定義源模型。使用脫機捕獲文件創建源模型檢查日志文件 自定義源模型 返回主題列表使用脫機捕獲文件創建源模型 要使用脫機捕獲文件在工作臺信息庫中創建源模型,執行以下步驟:1.在 Oracle Migration Workbench 窗口中,選擇 Action Capture Source Database。 2.檢查 Welcome 頁面并單擊 Next。3.在 Source Model Load Details 頁面中,選擇 Offline Source Model Load 并單擊 Next。4.單擊 Load。 出現 Select Root Directory 頁面。5.導航到 c:omwboffline_capture_files 目錄,然后單擊 OK。6.加載元數據文件列表。單擊 Next。 7.在 Data Type Mappings 頁面中,檢查數據類型映射。單擊 Next。 8.在 Create Oracle Model 頁面中選擇 No,以使您可以首先瀏覽和自定義源模型。單擊 Next。9.在 Summary 頁面中,單擊 Finish。 10.出現 Loading Source Model 窗口,同時顯示各種消息。在 Loading Source Model 彈出消息窗口中,單擊 OK。 11.檢查日志消息,單擊 OK 關閉 Loading Source Model 彈出消息窗口。 返回主題 檢查日志文件 要檢查日志文件,執行以下步驟:1.要更改日志顯示設置,在 Oracle Migration Workbench 窗口中選擇 Tools Options。 2.單擊 Logging 選項卡。 3.取消選擇以下選項: Informational Messages Summary Messages Debug Messages。 單擊 OK。 4.選擇 Tools Log Window 再次檢查日志消息。5.Log 窗口內容更改,僅顯示錯誤和警告。關閉窗口。 6.在窗口的左側面板中,展開以下節點:Databases hr。 7. 注意源模型中以下數量的數據庫對象: 8 個表 4 個存儲過程 2 個觸發器 返回主題 自定義源模型您將通過刪除不移植到 Oracle 數據庫中的 MS SQL Server 管理組來自定義源模型。執行以下步驟: 1.展開 Groups/Users 節點。 2.選擇 db_owner 節點以上的所有組(使用單擊和按住 shift 單擊),然后選擇 Object Delete。 3.單擊 Yes 確認刪除 7 個選定項目。 4.再次展開這些節點:Databases hr Groups/Users。 5.選擇 db_securityadmin 角色,右鍵單擊并選擇 Delete。 6.單擊 Yes 確認刪除。7.導航到 Databases hr Groups/Users db_owner 并單擊 dbo。在窗口右側,您看到該角色被指派給 sa 登錄。移植用戶時,Oracle 移植工作臺將創建相應的 sa 用戶帳戶。 返回主題創建 Oracle 模型 創建 Oracle 模型為觸發器解決分析器錯誤 解決存儲過程的分析器錯誤 重新創建 Oracle 模型 返回主題列表創建 Oracle 模型執行以下步驟: 1.選擇 Action Create the Oracle Model。 2.單擊 Yes 確認要創建 Oracle 模型。出現帶有許多消息的 Creating Oracle Model 窗口。 3.完成 Oracle 模型時,注意有 4 個錯誤。您將在以下后續步驟中解決這些分析器錯誤。單擊 OK。 4.注意,在 Oracle 模型中不創建以下對象: SECURE_EMPLOYEES 觸發器 EXAMPLE3 存儲過程。 再次單擊 OK 關閉 Creating Oracle Model 窗口。返回主題 為觸發器解決分析器錯誤執行以下步驟解決 SECURE_EMPLOYEES 觸發器的分析器錯誤:1.從菜單中選擇 Tools Log Window。 2.雙擊 SECURE_EMPLOYEES 觸發器的第一個錯誤。打開 SECURE_EMPLOYEES 窗口,光標位于該錯誤之上。 3.執行以下操作: 在 INSTEAD OF 前面輸入 -(2 個連字符) 在單詞 FOR 前面刪除注釋符號 -(2 個連字符)。 單擊 OK。 4.要重新分析 SECURE_EMPLOYEES 觸發器,在 SQL Server 2000 Source Model 選項卡中導航到 Databases hr Triggers。 5右鍵單擊 SECURE_EMPLOYEES 并選擇 Parse。 6.顯示一個成功消息。單擊 OK。 7.單擊 Oracle Model 選項卡。8.展開 Users sa Triggers。驗證 SECURE_EMPLOYEES 現在已經成為 Oracle 模型的一部分。 返回主題 解決存儲過程的分析器錯誤 執行以下步驟解決示例 example3 存儲過程觸發器的分析器錯誤:1.單擊 SQL Server 2000 Source Model 選項卡。2.展開 Databases hr Stored Procedures。單擊 example3。3.在窗口右側的 General 選項卡中,注意單詞 ERROR 用作 SELECT 語句的列名。這是對分析器具有特殊含義的保留字。單擊 Parse Options 選項卡。 4.選中 Allow Reserved Words in table names 復選框并單擊 Apply。選中該選項后,分析器將把單詞 ERROR 看成為一個對象名,而不是其中一個特殊關鍵字。 5.要重新分析該對象,在窗口的右側面板上,右鍵單擊 example3 并選擇 Parse。 6.單擊 OK 確認成功消息。 7.單擊 Oracle Model 選項卡。8.展開 Users sa Stored Procedures。驗證確實已在 Oracle 模型中創建了 EXAMPLE3。 9.關閉 Oracle Migration Workbench Log 窗口。返回主題重新創建 Oracle 模型 既然已經解決了分析器錯誤,則可以執行以下步驟重新創建 Oracle 模型: 1.選擇 Action Create Oracle Model 2.單擊 Yes 確認要重新創建 Oracle 模型。 3.出現帶有許多消息的 Creating Oracle Model 窗口。完成創建 Oracle 模型時,您將注意到不再有錯誤。單擊 OK。 4.單擊 OK 關閉 Creating Oracle Model 窗口。 返回主題自定義 Oracle 模型 現在,在將這些對象移植到目標數據庫之前,將自定義 Oracle 模型。更改數據類型映射刪除 HR 表空間使用 Tablespace Discoverer 導入現有的表空間信息 返回主題列表更改數據類型映射 EMPLOYEES 表中的 TS_CREATED 列存儲日期時間,而不僅僅是日期信息。要更改該列的數據類型映射,執行以下步驟:1.在 Oracle 模型中,展開 Users sa Tables 并選擇 EMPLOYEES 表。2.在窗口右側的 General 選項卡中,向下滾動到 TS_CREATED 列,將 Type 從 DATE 更改為 TIMESTAMP,然后單擊 Apply。 返回主題刪除 HR 表空間 創建 Oracle 模型時,Oracle 移植工作臺將自動生成默認的表空間(如 HR)。但是,由于您已經在目標數據庫中創建了 SA 表空間,因此您不需要該 HR 表空間。建議首先創建目標表空間,以確保您可以控制數據文件的大小。要刪除 Oracle 模型的 HR 表空間,執行以下操作: 1.在 Oracle 模型中,導航到 Tablespaces HR。 2.單擊 Yes 保存更改。 3.右鍵單擊 HR 表空間,選擇 Delete。 4.單擊 Yes 確認刪除。 返回主題使用 Tablespace Discoverer 導入現有的表空間信息 要使用表空間發現器從目標數據庫中導入現有的信息,執行以下步驟: 1.從菜單中選擇 Tools Tablespace Discoverer。2.在 Tablespace Discoverer 窗口中,輸入以下信息并單擊 Connect。 Username:omwb_user Password:omwb_user Hostname: 1 Port: 1521 SID:RACDB1 3.在 Tablespace Discoverer 窗口中從目標數據庫中檢索表空間信息之后,將以下表空間分配給 Oracle 模型,然后單擊 Apply。 默認表空間:SA 索引表空間:SA 臨時表空間:TEMP 4.在 Oracle Model 選項卡中,展開 Tablespaces 節點,驗證已將 SA 和 TEMP 表空間的元數據導入到 Oracle 模型中。 返回主題將表空間、用戶以及用戶表移植到目標數據庫中Oracle 已經就緒,可以移植到目標數據庫中。您將在 Oracle 移植工作臺中直接連接,將模式對象(尤其是表空間)、用戶以及用戶表移植到目標數據庫中。執行以下步驟: 1.從菜單中選擇 Action Migrate to Oracle。 2.在 Migration Wizard 中:歡迎窗口,單擊 Next。 3.在 Destination Database Details 窗口中,輸入以下信息并單擊 Next 連接到目標數據庫: Username:omwb_user Password:omwb_user Host: 1 Port: 1521 SID:RACDB1 4.Migration Wizard 檢測到這是首次將數據庫對象移植到目標數據庫中。單擊 Next:5.Migration Wizard 通知您將基于脫機源模型加載進行移植。閱讀該信息,然后單擊 Next。6.在 Select Schema Objects to Migrate 窗口中,單擊 sa Tables2.選擇所有表,再從右鍵單擊彈出的菜單中選擇 Generate SQL*Loader Scripts。3.單擊 Yes 確認。4.在 Oracle Migration Window 彈出消息中,注意 SQL*Loader 腳本的位置 c:omwbOmwbsqlloader_scriptsSQLServer2K 并單擊 OK.。 5.在 Windows 資源管理器中,將文件從 c:omwbdata_files 復制到 c:omwbOmwbsqlloader_scriptsSQLServer2KOracle 目錄。SQL*Loader 將使用這些文件將數據加載到目標數據庫中的表中。 6.使用記事本打開位于 c:omwbOmwbsqlloader_scriptsSQLServer2KOracle 目錄中的 sql_load_script.sh。 7.通過替換設置用于 Linux 的 NLS_TIMESTAMP_FORMAT 環境變量的第二行,修改 sql_load_script.sh 文件。要按照 EMPLOYEES 表中 TS_CREATED 列的正確格式加載數據,就必須進行該設置。注意,確保使用 export 替換 # SET,并使用單引號封閉 Mon dd YYYY HH:mi:ss:ffAM,如以下部分前后所示: 之前:export NLS_DATE_FORMAT=Mon dd YYYY HH:mi:ssAM# SET NLS_TIMESTAMP_FORMAT=Mon dd YYYY HH:mi:ss:ffAM# SET NLS_LANGUAGE= 之后:export NLS_DATE_FORMAT=Mon dd YYYY HH:mi:ssAMexport NLS_TIMESTAMP_FORMAT=Mon dd YYYY HH:mi:ss:ffAM# SET NLS_LANGUAGE= 保存文件。 8.將 TO_DATE() 函數添加到 START_DATE 和 END_DATE 列中,從而將輸入字符串轉換為日期格式,以這種方式修改 JOB_HISTORY.ctl 文件,如以下部分前后所示: 之前:(EMPLOYEE_ID,START_DATE,END_DATE,JOB_ID DECODE(:JOB_ID, CHR(00), , :JOB_ID),DEPARTMENT_ID)之后:(EMPLOYEE_ID,START_DATE TO_DATE(:START_DATE,MON DD YYYY HH:MI:SSAM),END_DATE TO_DATE(:END_DATE,MON DD YYYY HH:MI:SSAM),JOB_ID DECODE(:JOB_ID, CHR(00), , :JOB_ID),DEPARTMENT_ID) 提示:直接在記事本中復制和粘貼文本。保存文件。 9.將 TO_DATE() 函數添加到 HIRE_DATE 列中,將輸入字符串轉換為日期格式,修改 EMPLOYEES.ctl 文件,如以下部分前后所示: 之前:PHONE_NUMBER DECODE(:PHONE_NUMBER, CHR(00), , :PHONE_NUMBER),HIRE_DATE,JOB_ID DECODE(:JOB_ID, CHR(00), , :JOB_ID),之后:PHONE_NUMBER DECODE(:PHONE_NUMBER, CHR(00), , :PHONE_NUMBER),HIRE_DATE TO_DATE(:HIRE_DATE,MON DD YYYY HH:MI:SSAM),JOB_ID DECODE(:JOB_ID, CHR(00), , :JOB_ID),提示:直接在記事本中復制和粘貼文本。保存文件并退出記事本。 10.您需要在 Linux 操作系統中運行 SQL*Loader 腳本。VMWare 共享的中間文件夾已經配置到 c:vmware_shared,您可以使用該文件夾在 Windows 操作系統和 Linux 操作系統之間轉換文件。在 Windows 資源瀏覽器中,將 c:omwbOmwbsqlloader_scriptsSQLServer2K 中的 Oracle 文件夾及其內容復制到 c:vmware_shared 文件夾中。 注意:SQL*Loader 腳本已經位于 Linux 操作系統的 /home/oracle/wkdir/omwb 目錄中。您也可以忽略第 10 - 12 步,直接開始第 13 步,來運行 SQL*Loader 腳本。 11.在 Linux 操作系統中,打開終端窗口輸入以下命令,將 SQL*Loader 腳本移至 Oracle 移植工作臺的工作目錄: cd /mnt/hgfs/vmware_shared/oraclels:cp * /home/oracle/wkdir/omwb/.12. 要執行 SQL*Loader 腳本,執行以下命令:cd /home/oracle/wkdir/omwblschmod 777 sql_load_script.sh./sql_load_script.sh13.通過計算每個表中的行來驗證加載操作。輸入以下命令:cd .sqlplus sa/oracle 14.在 SQL*Plus 中輸入以下命令:start count_rows該腳本執行以下語句:set heading offselect Basictable:|count(*) from sa.basictable;select Countries:| count(*) from sa.countries;select Departments:| count(*) from sa.departments;select Employees:| count(*) from sa.employees;select Job History:| count(*) from sa.job_history;select Jobs:| count(*) from ;select Locations:| count(*) from sa.locations;select Regions:| count(*) from sa.regions;set heading on您應該在每個表中插入以下數量的行: Basictable: 0 Countries: 25 Departments: 27 Employees: 107 Job History: 10 Jobs: 19 Locations: 23 Regions: 4 返回主題列表 將其余模式對象移植到目標數據庫中執行以下步驟: 1.在 SQL*Plus 中輸入以下命令,批準 sa 用戶擁有創建視圖的權限:connect sys/oracle as sysdba;grant create any view to sa;2.在 Oracle 移植工作臺中的菜單中選擇 Action Migrate to Oracle。3.Migration Wizard:出現歡迎頁面。單擊 Next。4.出現 Destination Database Details 頁面。輸入以下登錄信息并單擊 Next: Username:owmb_user Password:omwb_user Host: 1 Port: 1521 SID:RACDB1 5. 注意:移植向導可以識別以前移植的表空間、用戶以及用戶表。保持默認選定的 No 并單擊 Next。 6.在以前的任務中,您僅使用 SQL*Loader 移植表。單擊 Next。 7.單擊 Next 接受移植其余的所有模式對象。8.單擊 Summary 頁面上的 Finish 。 9.單擊 OK 確認完成移植。注意沒有錯誤或者警告。 10.如果看到錯誤 Failed to create syno
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 濰坊學院《食品酶學》2023-2024學年第二學期期末試卷
- 模電 7-信號的運算和處理學習資料
- 江蘇省蘇州市常熟一中達標名校2025屆第二學期期末統一考試(數學試題理)試題含解析
- 六安職業技術學院《西方文化與近代中國》2023-2024學年第一學期期末試卷
- 南通職業大學《行為矯正》2023-2024學年第一學期期末試卷
- 遼寧傳媒學院《分析代數方法選講》2023-2024學年第一學期期末試卷
- 二零二五廣告合同范例大全
- 展會知識產權保護合同范例
- 委托代理采購協議書二零二五年
- 房地產項目顧問合同書二零二五年
- 二年級下冊科學不斷發展的人工產品鄂教版課件
- 小學部編版六年級下冊道德與法治《4、地球-我們的家園》第一課時說課稿
- DB11T 1340-2022 居住建筑節能工程施工質量驗收規程
- 保險市場調查與分析實訓三任務一2.3.1任務一運用Excel整理市場調查問卷數據
- 中央空調(多聯機)施工方案
- PKPM磚混結構抗震及其他計算全攻略
- “育鯤”輪轉葉式舵機工作原理和電氣控制以及故障分析
- 流動資金自動測算表(內自帶計算公式)
- 最新.爾雅批判與創意思考--馮林答案
- 宿州光伏玻璃項目可行性研究報告(范文模板)
- 10KV變電站施工方案
評論
0/150
提交評論