oracle中sql
❶ oracle中怎樣執行.sql文件
建議使用plsql工具來連接Oracle資料庫進行表操作,這樣很方便的,就像使用sqlserver一樣方便
❷ oracle 中的 sql語句查詢
select
lpad('
',(level-1)*3)||ename
from
emp
start
with
ename='smith'
connect
by
prior
empno=mgr
;
select
ename
from
emp
start
with
ename='scott'
connect
by
prior
mgr=empno
order
by
level
desc
;
select
lpad('
',(level-1)*3)||ename
from
emp
start
with
mgr
is
null
connect
by
prior
empno=mgr
;
你問的是oracle中層次樹狀查詢,start
with
。。
connect
by
用法。
start
with
指明樹的起點。至於是找上級還是下級(也就是你問的),關鍵就在於prior的用
法。prior的意思是前一個。
比如:start
with
ename='smith'
connect
by
prior
empno=mgr
;
的意思:ename='smith'表示樹的起點,即第一行
connect
by
prior
empno=mgr
表示上一行員工的編號是當前行的管理者,即找smith的下屬。
start
with
ename='scott'樹的起點,即第一行
connect
by
prior
mgr=empno
表示上一行員工的管理員編號是當前員工的編號,即找scott的上級及間接上級。
❸ 怎麼在Oracle中寫執行sql的sql語句
我已經開始學ORACLE
但是上面大哥的回答我還沒有看懂
我直接在青蛙裡面執行語句execute
immediate('select
*
from
表')
是不行的:
PLS-00201:
識別字
'IMMEDIATE'
必須被宣告
PL/SQL:
Statement
ignored
看你好像是在存儲過程裡面實現的哦,沒有試。
❹ ORACLE中SQL語句最大長度是多少
自己測試吧,
select '1' union
select '1' union
select '1' union
select '1' union
select '1' union
復制多些就知道了。。。
❺ 在ORACLE 中怎麼查看SQL 執行日誌
1、首先打開oracle sql developer工具,沒有此工具的可以去網路瀏覽器下載安裝即可,滑鼠點擊查看菜單。
❻ ORACLE 和 SQL區別
這兩種資料庫在不同方面都有著很大的區別,以下是具體的區別:
1.開放性: 1. SQL Server 只能在windows上運行,沒有絲毫的開放性,操作系統的系統的穩定對資料庫是十分重要的。Windows9X系列產品是偏重於桌面應用,NT server只適合中小型企業。而且windows平台的可靠性,安全性和伸縮性是非常有限的。它不象unix那樣久經考驗,尤其是在處理大資料庫。 2. Oracle 能在所有主流平台上運行(包括 windows)。完全支持所有的工業標准。採用完全開放策略。可以使客戶選擇最適合的解決方案。對開發商全力支持。
2.可伸縮性:並行性 1. SQL server 並行實施和共存模型並不成熟,很難處理日益增多的用戶數和數據卷,伸縮性有限。 2. Oracle 並行伺服器通過使一組結點共享同一簇中的工作來擴展windownt的能力,提供高可用性和高伸縮性的簇的解決方案。如果windowsNT不能滿足需要,用戶可以把資料庫移到UNIX中。Oracle的並行伺服器對各種UNIX平台的集群機制都有著相當高的集成度。
3.性能: 1. SQL Server 多用戶時性能不佳 2. Oracle 性能最高, 保持開放平台下的TPC-D和TPC-C的世界記錄。
4.客戶端支持及應用模式 :1. SQL Server C/S結構,只支持windows客戶,可以用ADO、DAO、OLEDB、ODBC連接。 2. Oracle 多層次網路計算,支持多種工業標准,可以用ODBC、JDBC、OCI等網路客戶連接。
5.操作簡便性: 1. SQL Server 操作簡單,但只有圖形界面。 2. Oracle 較復雜,同時提供GUI和命令行,在windowsNT和unix下操作相同。
6.使用風險性 :1. SQL server 完全重寫的代碼,經歷了長期的測試,不斷延遲,許多功能需要時間來證明。並不十分兼容。 2. Oracle 長時間的開發經驗,完全向下兼容。得到廣泛的應用。完全沒有風險。
7.價格:ORACLE貴過SQLSRVER
❼ 關於ORACLE中SQL操作,請大家把下面語句的意思給我詳細的解釋下,謝謝
||是SQL連接符。
chr(13)char(10)是回車換行。
select
table_name
from
user_tables;是查詢user下的所有表。
drop
table
table_name;是刪除表。
整句話的意思就是刪除user下的所有表。
下一句同理,刪除的是user下的所有視圖。
❽ Oracle中怎樣一次執行多條sql語句
有時我們需要一次性執行多條sql語句,而用來更新的sql是根據實際情況用代碼拼出來的
解決方案是把sql拼成下面這種形式:
begin
update TB_VG set seq = 1, vessel_id = 'Jin14', vessel_type = 'TRACK' where batch_number = '20837' and train_id = '0233086';
update TB_VG set seq = 2, vessel_id = 'Jin14', vessel_type = 'TRACK' where batch_number = '20992' and train_id = '0233110';
end;
總結如下:
以begin開始,以end;結尾(end後的分號不能省),中間的每個sql語句要以分號;結尾
在實際編碼中,發現即使這樣也會有錯誤發生,把sql語句中的換行符替換成空格就可以了
比較穩妥的編碼方式是:
1、以正常的方式編寫sql,根據閱讀與編寫的需要,中間肯定會有換行符
2、在執行之前進行替換:strSql = strSql.Replace("r\n", " ").Replace('\n', ' ');
如果不採用這種方式,可能的異常有:
ORA-00933: SQL 命令未正確結束(如果sql沒有以分號結尾)
ORA-00911: 無效字元(如果未加begin 和 end)
ORA-06550: 第x行, 第xxx列: PLS-00103: 出現符號 "end-of-file"在需要下列之一時:......(如果end後面沒有;分號)
ORA-06550: 第x行, 第xxx列: PLS-00103: 出現符號 ""在需要下列之一時:......(語句之間有換行符)