真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

oracle怎么建方案 如何創(chuàng)建oracle實(shí)例

請問如何給oracle數(shù)據(jù)庫創(chuàng)建一個(gè)用戶,該用戶只有查詢權(quán)限,沒有寫缺

DBA用CREATE USER語句創(chuàng)建用戶格式:CREATE USER userIDENTIFIED BY password范例:CREATE USER scottIDENTIFIED BY tiger使用系統(tǒng)權(quán)限一旦一個(gè)用戶被創(chuàng)建,DBA能夠授予指定的系統(tǒng)權(quán)限給一個(gè)用戶格式:GRANT privileg [,privilege...]TO user [,user |role ,PUBLIC..];應(yīng)用程序的開發(fā)者,例如,可能有下面典型的用戶權(quán)限CREATE SESSIOIN 連接到數(shù)據(jù)庫CREATE TABLE 在用戶的方案中創(chuàng)建表CREATE SEQUENCE 在用戶的方案中創(chuàng)建序列CREATE VIEW 在用戶的方案中創(chuàng)視圖CREATE PROCEDURE在用戶的方案中創(chuàng)建存儲(chǔ)過程,函數(shù)或包授予系統(tǒng)權(quán)限D(zhuǎn)BA能夠授予用戶指定的系統(tǒng)權(quán)限GRANT create session,create table, create sequence,create viewTO scott;創(chuàng)建角色并且授予權(quán)限給角色示例1、創(chuàng)建角色CREATE ROLE manager;2、授予權(quán)限給一個(gè)角色GRANT create table,create view TO manager;3、授予一個(gè)角色給用戶GRANT manager TO DEHAAN,KOCHHAR;

專注于為中小企業(yè)提供網(wǎng)站制作、成都網(wǎng)站設(shè)計(jì)服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)安仁免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了上千多家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。

Oracle如何創(chuàng)建存儲(chǔ)過程和如何調(diào)用存儲(chǔ)過程

【delphi+oracle報(bào)表解決方案(一)】delphi中調(diào)用oracle的存儲(chǔ)過程(分帶返回游標(biāo),不返回值兩種)

關(guān)鍵字: delphi ,oracle存儲(chǔ)過程,游標(biāo),返回?cái)?shù)據(jù)集,報(bào)表注:delphi 6+ oracle 8.1.6一.創(chuàng)建包與包體1.附:建表aaclass為下面作測試用create table aaclass(CID VARCHAR2(50), CNAME VARCHAR2(50), pnumber NUMBER(10,0) );INSERT INTO aaclass values('c1', 'cn1', 10 ) ;

INSERT INTO aaclass values('c2', 'cn2', 40 ) ;

INSERT INTO aaclass values('c1', 'cn3', 30 ) ;

commit;2.建包:CREATE OR REPLACE PACKAGE PKG_JCCTEST1

AS type rc_class is ref cursor;

--求p1,p2的和與差,返回的多個(gè)值通過游標(biāo)返回

procedure GetSubAndSum2(p1 number,p2 number ,

ResultCursor out rc_class);

--查詢滿足條件的數(shù)據(jù)集,返回?cái)?shù)據(jù)集通過游標(biāo)返回

procedure GetClass2(a in number,ResultCursor out rc_class ) ; --往表中插一條記錄,不返回結(jié)果集時(shí),本人用AdoQuery調(diào)用(adodataset好象要求必須返回結(jié)果集)

procedure InsertClass( p_cid varchar2 ,p_cname varchar2 ,

p_pnumber number) ;

end PKG_JCCTEST1; 3.建包體CREATE OR REPLACE PACKAGE BODY PKG_JCCTEST1

ASprocedure GetSubAndSum2(p1 number,p2 number ,

ResultCursor out rc_class)

IS

BEGIN

open ResultCursor for

select p1-p2 as "sum", p1+p2 as "sub" from dual;

END ;

procedure GetClass2(a in number,ResultCursor out rc_class )

is

begin open ResultCursor for

select aaclass.* from aaclass where pnumber a;end ;procedure InsertClass( p_cid varchar2 ,p_cname varchar2 ,

p_pnumber number)

is

begin

insert into aaclass values(p_cid,p_cname,p_pnumber) ;

-- commit;

end ; 二.在delphi中利用AdoDataSet調(diào)用上述第一個(gè)存儲(chǔ)過程

1.利用AdoConnection1連接數(shù)據(jù)庫(驅(qū)動(dòng)為 oracle Provider for OLE DB),

**并在連接字符串中加入這一節(jié): PLSQLRSet=1; 如下所示:

Provider=OraOLEDB.Oracle.1;Password=KXD;Persist Security Info=True;User ID=KXD;Data Source=TEST3;PLSQLRSet=12.在窗體上加AdoDataSet1 指明連接為上述AdoConnection1,下面可以放一個(gè)按鈕,單擊按鈕就能調(diào)用第一步中創(chuàng)建的包過程,并返回?cái)?shù)據(jù)集。代碼如下所示:

procedure TForm1.Button1Click(Sender: TObject);

var

AResult , BResult : integer;

begin

ADODataSet1.Close ;

ADODataSet1.CommandType := cmdText ;

ADODataSet1.Parameters.Clear ; //***利用call方法調(diào)用oracle過程時(shí),參數(shù)必須由?來傳, 即使你要傳的參數(shù)為常理

//輸出游標(biāo)的參數(shù)不需要指定!!!!!!,本來此函數(shù)帶三個(gè)參數(shù),我們這里只需要傳兩個(gè)參數(shù).

ADODataSet1.CommandText := '{call PKG_JCCTEST1.GetSubAndSum2(?,?)}' ; //***C 順序有關(guān),createparam必須放在commandtext賦值語句之后. // 創(chuàng)建第一個(gè)參數(shù),對應(yīng)call中的第一個(gè)?,ftinteger為類型,10為長度,45為傳入的實(shí)參值

ADODataSet1.Parameters.CreateParameter('p1',ftinteger,pdinput,10,45);

//創(chuàng)建第二個(gè)參數(shù),根據(jù)createparameter的順序 自動(dòng)與call中的第二個(gè)參數(shù)對應(yīng)

ADODataSet1.Parameters.CreateParameter('p2',ftinteger,pdinput,10,4); //下面調(diào)用ADODataSet1 的open方法,返回?cái)?shù)據(jù)集(對應(yīng)包過程的游標(biāo))

ADODataSet1.Open ; //根據(jù)存儲(chǔ)過程,數(shù)據(jù)集只有一條記錄,所以不需要用while do 來遍歷數(shù)據(jù)集,直接取數(shù)據(jù)了 //此處的字段名根據(jù)包過程中的返回游標(biāo) 對應(yīng)的字段名來取

//定義的存儲(chǔ)過程返回游標(biāo)如: open ResultCursor for

// select p1-p2 as "sum", p1+p2 as "sub" from dual;

//把對應(yīng)的字段值取出來即可

AResult := ADODataSet1.Fields.FieldByName('sub').Value ;

BResult := ADODataSet1.Fields.FieldByName('sum').Value ; //顯示結(jié)果

showmessage(inttostr(AResult)) ;

showmessage(inttostr(BResult)) ;end;

三.在delphi中利用AdoDataSet調(diào)用上述第二個(gè)存儲(chǔ)過程

還是利用上述的AdoDataSet1來調(diào)用第二個(gè)存儲(chǔ)過程,無需任何改動(dòng),加第二個(gè)按鈕,單擊時(shí)代碼如下:procedure TForm1.Button2Click(Sender: TObject);

begin

ADODataSet1.Close ;

ADODataSet1.CommandType := cmdText ;

ADODataSet1.Parameters.Clear ; //***利用call方法調(diào)用oracle過程時(shí),參數(shù)必須由?來傳, 即使你要傳的參數(shù)為常理

//輸出游標(biāo)的參數(shù)不需要指定!!!!!!,本來此函數(shù)帶兩個(gè)參數(shù),我們這里只需要傳一個(gè)參數(shù).

ADODataSet1.CommandText := '{call PKG_JCCTEST1.GetClass2(?)}' ; //***C 順序有關(guān),createparam必須放在commandtext賦值語句之后. // 創(chuàng)建第一個(gè)參數(shù),對應(yīng)call中的第一個(gè)?,ftinteger為類型,10為長度,20為傳入的實(shí)參值

ADODataSet1.Parameters.CreateParameter('p1',ftinteger,pdinput,10,20);

//下面調(diào)用ADODataSet1 的open方法,返回?cái)?shù)據(jù)集(對應(yīng)包過程的游標(biāo))

ADODataSet1.Open ; while not ADODataSet1.Eof do

begin

showmessage('CID : '+string(ADODataSet1.FieldByName('CID').Value) +

'--CNAME :' + string(ADODataSet1.FieldByName('CNAME').Value) +

'--PNUMBER :' + string(ADODataSet1.FieldByName('PNUMBER').Value)

) ;

ADODataSet1.Next ;

end ;

end; 四 利用adoquery調(diào)用第三個(gè)過程,不返回?cái)?shù)據(jù)集的procedure TForm1.Button3Click(Sender: TObject);

begin

AdoQuery1.Close ;

AdoQuery1.Parameters.Clear ; AdoQuery1.SQL.Clear ; AdoQuery1.SQL.Add('{call PKG_JCCTEST1.GetSubAndSum2(?,?)}') ;

AdoQuery1.Parameters.CreateParameter('P1',ftstring,pdinput, 50,'c11') ;

AdoQuery1.Parameters.CreateParameter('P2',ftstring,pdinput, 50,'cn11') ;

AdoQuery1.Parameters.CreateParameter('P3',ftinteger,pdinput, 50,25) ; AdoQuery1.ExecSQL ;

end;

五 利用adoquery調(diào)用第一個(gè)過程,返回?cái)?shù)據(jù)集的.

procedure TForm1.Button4Click(Sender: TObject);

begin

AdoQuery1.Close ;

AdoQuery1.Parameters.Clear ; AdoQuery1.SQL.Clear ; AdoQuery1.SQL.Add('{call PKG_JCCTEST1.GetSubAndSum2(?,?)}') ;

AdoQuery1.Parameters.CreateParameter('P1',ftinteger,pdinput, 50,25) ;

AdoQuery1.Parameters.CreateParameter('P2',ftinteger,pdinput, 50,22) ; AdoQuery1.Open ; Showmessage(string( AdoQuery1.FieldByName('sub').Value)+'-'+

string( AdoQuery1.FieldByName('sum').Value));

end;六.關(guān)于三層體系的此類問題兩層的解決了,三層類似.

中間層用tadodataset 或tadoquery (+tdatasetprovider),中間層的adoconnection的連接字符串加上plsqlRset=1;

客戶端用clientdataset ,大同小異,舉例如下: begin

//調(diào)用相應(yīng)的過程

ClientDataSet1.Close ;

ClientDataSet1.Params.Clear ; ClientDataSet1.CommandText := '{call PackageName.ProcedureName(?,?)}' ;

ClientDataSet1.Params.CreateParam(ftInteger , 'ParamName1', ptInput) ;

ClientDataSet1.Open ;

end ;

本文來自CSDN博客,轉(zhuǎn)載請標(biāo)明出處:

oracle如何創(chuàng)建只讀用戶

只給用戶create session權(quán)限, 如果用戶需要查詢什么表, 直接賦予查詢權(quán)限即可:

grant select on your_table_name to username。

Oracle Database,又名Oracle RDBMS,或簡稱Oracle。是甲骨文公司的一款關(guān)系數(shù)據(jù)庫管理系統(tǒng)。它是在數(shù)據(jù)庫領(lǐng)域一直處于領(lǐng)先地位的產(chǎn)品??梢哉fOracle數(shù)據(jù)庫系統(tǒng)是目前世界上流行的關(guān)系數(shù)據(jù)庫管理系統(tǒng),系統(tǒng)可移植性好、使用方便、功能強(qiáng),適用于各類大、中、小、微機(jī)環(huán)境。它是一種高效率、可靠性好的 適應(yīng)高吞吐量的數(shù)據(jù)庫解決方案。

ORACLE數(shù)據(jù)庫系統(tǒng)是美國ORACLE公司(甲骨文)提供的以分布式數(shù)據(jù)庫為核心的一組軟件產(chǎn)品,是目前最流行的客戶/服務(wù)器(CLIENT/SERVER)或B/S體系結(jié)構(gòu)的數(shù)據(jù)庫之一。比如SilverStream就是基于數(shù)據(jù)庫的一種中間件。ORACLE數(shù)據(jù)庫是目前世界上使用最為廣泛的數(shù)據(jù)庫管理系統(tǒng),作為一個(gè)通用的數(shù)據(jù)庫系統(tǒng),它具有完整的數(shù)據(jù)管理功能;作為一個(gè)關(guān)系數(shù)據(jù)庫,它是一個(gè)完備關(guān)系的產(chǎn)品;作為分布式數(shù)據(jù)庫它實(shí)現(xiàn)了分布式處理功能。但它的所有知識,只要在一種機(jī)型上學(xué)習(xí)了ORACLE知識,便能在各種類型的機(jī)器上使用它。

Oracle數(shù)據(jù)庫最新版本為Oracle Database 12c。Oracle數(shù)據(jù)庫12c?引入了一個(gè)新的多承租方架構(gòu),使用該架構(gòu)可輕松部署和管理數(shù)據(jù)庫云。此外,一些創(chuàng)新特性可最大限度地提高資源使用率和靈活性,如Oracle Multitenant可快速整合多個(gè)數(shù)據(jù)庫,而Automatic Data Optimization和Heat Map能以更高的密度壓縮數(shù)據(jù)和對數(shù)據(jù)分層。這些獨(dú)一無二的技術(shù)進(jìn)步再加上在可用性、安全性和大數(shù)據(jù)支持方面的主要增強(qiáng),使得Oracle數(shù)據(jù)庫12c?成為私有云和公有云部署的理想平臺(tái)。

ORACLE數(shù)據(jù)庫系統(tǒng)是美國ORACLE公司(甲骨文)提供的以分布式數(shù)據(jù)庫為核心的一組軟件產(chǎn)品,是目前最流行的客戶/服務(wù)器(CLIENT/SERVER)或B/S體系結(jié)構(gòu)的數(shù)據(jù)庫之一。比如SilverStream就是基于數(shù)據(jù)庫的一種中間件。ORACLE數(shù)據(jù)庫是目前世界上使用最為廣泛的數(shù)據(jù)庫管理系統(tǒng),作為一個(gè)通用的數(shù)據(jù)庫系統(tǒng),它具有完整的數(shù)據(jù)管理功能;作為一個(gè)關(guān)系數(shù)據(jù)庫,它是一個(gè)完備關(guān)系的產(chǎn)品;作為分布式數(shù)據(jù)庫它實(shí)現(xiàn)了分布式處理功能。但它的所有知識,只要在一種機(jī)型上學(xué)習(xí)了ORACLE知識,便能在各種類型的機(jī)器上使用它。

Oracle數(shù)據(jù)庫最新版本為Oracle Database 12c。Oracle數(shù)據(jù)庫12c?引入了一個(gè)新的多承租方架構(gòu),使用該架構(gòu)可輕松部署和管理數(shù)據(jù)庫云。此外,一些創(chuàng)新特性可最大限度地提高資源使用率和靈活性,如Oracle Multitenant可快速整合多個(gè)數(shù)據(jù)庫,而Automatic Data Optimization和Heat Map能以更高的密度壓縮數(shù)據(jù)和對數(shù)據(jù)分層。這些獨(dú)一無二的技術(shù)進(jìn)步再加上在可用性、安全性和大數(shù)據(jù)支持方面的主要增強(qiáng),使得Oracle數(shù)據(jù)庫12c?成為私有云和公有云部署的理想平臺(tái)。

開發(fā)工具:Navicat for Oracle是一套專為Oracle設(shè)計(jì)的強(qiáng)大數(shù)據(jù)庫管理及開發(fā)工具。它可以用于任何版本的Oracle數(shù)據(jù)庫,并支援大部份Oracle的功能,包括觸發(fā)器、索引、檢視等。

·Toad for Oracle是一款老牌的Oracle開發(fā)管理工具,比任何一款Oracle開發(fā)管理工具功能更多,并針對使用者不同的角色有多個(gè)分支版本。版本包括:Toad DBA Suite for Oracle是一款專門為Oracle DBA管理Oracle數(shù)據(jù)庫工具, Toad Development Suite for Oracle是一款專門為Oracle開發(fā)工具, Toad DBA Suite for Oracle – Exadata Edition是一款專門為Oracle Exadata一體服務(wù)器及Oracle數(shù)據(jù)庫管理工具, Toad DBA Suite for Oracle - RAC Edition是一款專門為Oracle搭建集群RAC的DBA管理工具。


網(wǎng)站欄目:oracle怎么建方案 如何創(chuàng)建oracle實(shí)例
文章源于:http://weahome.cn/article/hgisjd.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部