當前位置:首頁 » 編程語言 » oraclesqlusing
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

oraclesqlusing

發布時間: 2022-02-08 21:30:20

A. oracle中動態sql中的using、into各是什麼作用通俗地講,別用書面語

using 指的是where條件中的變數
into 指的是要獲取的數據變數
比如說
V_SQL_T := 'SELECT SUM(QTY), SUM(COST * QTY)
FROM SALES
WHERE SALE_DATE = :1';

EXECUTE IMMEDIATE V_SQL_T
INTO T_QTY, T_AMT
USING D_SALESDATE;
上面INTO就是要sum(qty)和sum(cost*qty)賦值到t_qty和t_amt兩個變數,using就是把d_salesdate變數代入:1作為條件

B. 怎樣使用sqlplus連接oracle11g資料庫

oracle認證2種方式:
1本機認證, windows(administrator), unix(root) 用戶的前提下,
你可以直接, sqlplus /as systdba 就可以直接連了

2用戶名密碼驗證
確保你的tnsnames.ora的配置是正確的, 配置的示例alias會被用來使用連接資料庫
sqlplus username/password@db_alias_name 這樣就可以連接並使用了.

C. oracle資料庫 關聯更新的SQL怎麼寫

merge into A
using B
on (A.dm=b.dm)
when matched then
update set a.dmmc=b.dmmc
;
用oracle當然用oracle特有的函數效率高,merge專用

D. sql怎樣跨資料庫查詢oracle

假定您現在擁有一個以Microsoft.NET為架構的網路訂購系統,但是品管維護系統卻仍然使用一套舊式的Oracle資料庫應用程序。當您的顧客在產品保固期間下了產品更換之類的訂單,則該筆訂單將不收取任何費用。此時您需要從Oracle資料庫得到實時的查詢結果。借著建立連結伺服器的方式(linkedServer),您將可以從SQLServer實時查詢出位於Oracle資料庫的顧客資料,找出誰是您既有的客戶。
當您的資料分散在不同的SQLServer資料庫時,藉由連結伺服器可讓您執行跨伺服器之分布式查詢。當所有的資料庫伺服器都是SQLServer,則連結伺服器的設定十分容易,而且在SQLServer線上手冊中就涵蓋了您所需要了解的所有事項。然而,當部分資料是放在Oracle資料庫伺服器的時候,這就可能帶給您許多挑戰。舉例來說,光是設定連結伺服器就不是一件容易的事。您必須了解到:即是您要在SQLServer的EnterpriseManager設定一個Oracle連結伺服器,這台SQLServer對Oracle來說就是一個客戶端。所以您必須在SQLServer所在的伺服器成功地安裝並組態Oracle之客戶端軟體。因為Oracle提供的產品只支持Oracle8以後的資料庫,所以我假設您正在使用的都是Oracle8以後的資料庫。在OracleNet8函式庫則提供了SQLServer所需要的客戶端軟體。
設定連接伺服器時是利用Microsoft所提供的OLEDB ProviderforOracle,使用的Oracle網路函式庫為SQL*Net2.3.3.0.4或是以後的版本,不過這是Oracle7.3資料庫所提供的。換句話說,要設定Oracle資料庫為SQLServer的連接伺服器時,Oracle資料庫只要是7.3.3.4以後的版本,並搭配適當的SQL*Net或是Net8函式庫即可。
在Oracle資料庫中,一個schema即代表著SQLServer專家們所熟知的單一資料庫(譯者注2)。連接至Oracle資料庫時,您必須提供schema名稱、密碼以及主機聯機字元串(hoststring)。每一個特定的Oracle帳戶都擁有一個Oracleschema,而且只能有一個schema。所以schema名稱其實就等於該schema擁有者的帳戶名稱。您可以查詢Oracle的資料字典(Datadictionary)以得到更多有關schema的內容。
至於Oracle聯機字元串又可稱為服務名稱(servicename)或是系統識別資料(SystenIdentifier,SID)。我們所謂的SQLServer資料庫個體(instance)在Oracle則稱為資料庫(database)。所以安裝OracleServer時,安裝程序OracleUniversalInstaller(為一個圖形介面之安裝程序,與SQLServer的Setup程序類似)將會詢問您SID名稱為何,以作為Oracle資料庫之名稱。
這個部分原作者所提到schema的解釋有點問題。Oracleschema可視為同一個使用者所擁有的所有資料庫對象(schemaobjects)之集合。舉例來說,使用者scott所建立的EMPtable其完整名稱為SCOTT.EMP,而SCOTT就是EMP的schema名稱。所以schemaname其實就是一個Oracle資料庫之使用者帳號。但是絕對不能拿來跟資料庫相提並論!因為SQLServer的資料庫架構包含了datafiles與logfiles,但是Oracle的schemaobjects只存在於tablespace中。為了避免部分讀者產生混淆,特此說明。

E. visual studio怎樣調用oracle資料庫 using kenly.dbframework.gateway

您將有機會應用在三個上機操作實踐中學到的內容,難度從相對簡單逐漸演變到復雜。如果您已經熟悉使用 Visual Studio 2005/2008 構建 Oracle 資料庫的 .NET 應用程序,則會發現使用 Visual Studio 2010 的體驗非常類似。

F. 求助,oracle資料庫,在表空間里建了個表,插入一條數據,十多分鍾都執行不完。

這樣:
insert into TABLE_WZ_TYPE
select 1,'備品備件',null,'100','0',0,'0','0','0','100',to_date('2013-7-29','yyyy-mm-dd'),to_date('2013-7-29','yyyy-mm-dd'),'1',null,null)
from al;

G. Oracle,ql/sql 和公司資料庫之間的聯系

1、pl/sql developer是另外一個公司開發的工具,主要用於開發、調試oracle資料庫。本地建好ORACLE資料庫後,然後這個工具就可以連接ORACLE資料庫了(輸入資料庫用戶名,密碼)。

2、先安裝ORACLE資料庫軟體,然後在創建資料庫,然後應用程序連接到資料庫就可以往資料庫寫數據了,現在這個資料庫就是公司資料庫了

首先在你的本地電腦安裝OARCLE資料庫軟體,然後創建資料庫,然後PL/SQL是來開發資料庫的,比如建表、寫存儲過程等等,還可以插數據、刪數據等。資料庫開發完成後,就可以往資料庫里存數據了,也就成了你說的公司資料庫

H. 如何在Oracle資料庫中使用USING關鍵字簡化連接

在資料庫中, 常用的一個流水編號通常會使用 identity 欄位來進行設置, 這種編號的好處是一定不會重覆, 而且一定是唯一的, 這對table中的唯一值特性很重要, 通常用來做客戶編號, 訂單編號等功能, 以下介紹關於此種欄位常用方式及相關技術.
CREATE TABLE procts (id int IDENTITY PRIMARY KEY, proct varchar(40))

取得identity值:
因為 identity 特性, 所以在 insert into 該 table 時, 不能指定該 identity 欄位值, 僅能指定其他欄位值, 而 identity 由資料庫維護, 所以一般要在 insert 後取得該 identity 欄位值, 則通常使用下面方式:

利用全局變數 @@identity 來取得最後影響的 insert 後產生的 identity 值, 如此一來便能方便地使用 identity 欄位.

若要啟用識別插入(identity insert)時, 也就是如空缺號要指定 identity 欄位值時, 或者是處理資料表整理或備出時, 會用到的方式:
set identity_insert procts on
insert into procts (id, proct)values(12, 'screwdriver')
要注意的地方是可以 insert 空缺號, 也可以加至最後, 但系統會自動更新 identity 至最大值, 要注意一旦啟用 identity_insert 時, 就一定要給定 identity 值, 另外並不能 update 該 identity 欄位值, 也就是說 identity_insert 該 identity 欄位僅 for insert, 不能 update.

查詢目前 identity 值:
有時我們需要查詢目前 table 中該 identity 欄位最大值是多少時, 可以利用 dbcc 指令, 如下:
dbcc checkident('proct', NORESEED)
可以獲得目前最大值的結果.

重設目前最大 identity 值:
一樣利用 dbcc 指令, 如下:
dbcc checkident('proct',RESEED,100)
如此一來, 便能將目前的最大 identity 值指向100, 當然若故意設比目前最大值小時, 系統仍會接受, 但若 identity 遇上重覆資料時(如將 identity 設為 primary key時), 將會發生重大問題, 該 table 變成無法 insert 資料, 因為會發生 primary key violation, 解決方法當然就是將目前的 identity 修復, 直接使用
dbcc checkident('procts', RESEED)

dbcc checkident('procts')

I. Oracle 的sql 查詢語句求解

圖表的結構看不清楚,4個表是用什麽欄位關聯的?

J. 如何創建從SQL到Oracle的DBlink

1、利用Net Manager創建服務,具體步驟如下圖片所示:

打開Oracle安裝客戶端的時候所裝好的Net Manager

注意在上圖中,from的後面,table的名字要在前面加上linked server的名字,然後後面有兩個小點,再然後才是oracle中用戶的名字,最後就是表的名字了。其中特別需要注意的時候,用戶的名字和表的名字都是要全部大寫的。

關於第二步中,在SQL可視化工具中的操作也可以通過以下SQL來進行:

EXEC master.dbo.sp_addlinkedserver @server = N'link_peter_oracle',

@srvproct = N'peter_oracle', @provider = N'MSDAORA', @datasrc = N'peter_oracle',

@provstr = N'User ID=scott;Password=tiger'

--其中@srvproct、@datasrc寫實例名;@provstr為oracle的用戶名和密碼