使用綁定變量的一點(diǎn)總結(jié)_第1頁
使用綁定變量的一點(diǎn)總結(jié)_第2頁
使用綁定變量的一點(diǎn)總結(jié)_第3頁
使用綁定變量的一點(diǎn)總結(jié)_第4頁
使用綁定變量的一點(diǎn)總結(jié)_第5頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

二、綁定變量的使用

1、在SQLPlus中使用綁定變量SQL>variableenonumber;

-->使用variable定義變量

SQL>exec:eno:=7788;

SQL>selectename,job,salfromempwhereempno=:eno;

ENAME

JOB

SAL

-----------------------------

SCOTT

ANALYST

3000

2、PL/SQL塊中使用綁定變量下面的pl/sql代碼中,Oracle實(shí)現(xiàn)自動(dòng)變量自動(dòng)綁定,執(zhí)行了30次的insert操作,但oracle認(rèn)為每次執(zhí)行的語句都是一樣的

/**************************************************/

/*Author:RobinsonCheng

*/

/*Blog:

/robinson_0612

*/

/*MSN:

robinson_0612@

*/

/*QQ:

645746311

*/

/**************************************************/

SQL>begin

-->執(zhí)行pl/sql代碼,向表t中插入30條記錄

2

foriin1..30loop

3

insertintotvalues(i,i*2);

4

endloop;

5

commit;

6

end;

7

/

PL/SQLproceduresuccessfullycompleted.

3、在存儲(chǔ)過程或包中使用綁定變量-->存儲(chǔ)過程和保重,對(duì)參數(shù)的傳遞即是使用自動(dòng)綁定變量來實(shí)現(xiàn),因此編程人員無須操心綁定變量問題,如下例所示:

SQL>createorreplaceprocedureins_t(p_idinnumber,p_valueinnumber)-->創(chuàng)建一個(gè)過程用于向表t插入記錄

2

as

3

begin

4

insertintotvalues(p_id,p_value);

5

commit;

6

end;

7

/

Procedurecreated.

4、在動(dòng)態(tài)SQL中是使用綁定變量

-->動(dòng)態(tài)SQL中不能自動(dòng)使用綁定變量,需要手動(dòng)設(shè)定綁定變量

SQL>begin

2

foriin1..30loop

3

executeimmediate'insertintotvalues(:1,:2)'usingi,i+i-2;

-->動(dòng)態(tài)SQL使用綁定變量,該語句將執(zhí)行30次

4

endloop;

5

commit;

6

end;

7

/

PL/SQLproceduresuccessfullycompleted.

ORACLE綁定變量用法總結(jié)分類:

OracleDev2009-11-0621:31

14726人閱讀

評(píng)論(4)

\o"收藏"收藏

\o"舉報(bào)"舉報(bào)oraclesqlparsingstringinsertapplication之前對(duì)ORACLE中的變量一直沒個(gè)太清楚的認(rèn)識(shí),比如說使用:、&、&&、DEIFINE、VARIABLE……等等。今天正好閑下來,上網(wǎng)搜了搜相關(guān)的文章,匯總了一下,貼在這里,方便學(xué)習(xí)。

==================================================================================

在oracle

中,對(duì)于一個(gè)提交的sql語句,存在兩種可選的解析過程,

一種叫做硬解析,一種叫做軟解析.一個(gè)硬解析需要經(jīng)解析,制定執(zhí)行路徑,優(yōu)化訪問計(jì)劃等許多的步驟.硬解釋不僅僅耗費(fèi)大量的cpu,更重要的是會(huì)占據(jù)重要的們閂(latch)資源,嚴(yán)重的影響系統(tǒng)的規(guī)模的擴(kuò)大(即限制了系統(tǒng)的并發(fā)行),而且引起的問題不能通過增加內(nèi)存條和cpu的數(shù)量來解決。之所以這樣是因?yàn)殚T閂是為了順序訪問以及修改一些內(nèi)存區(qū)域而設(shè)置的,這些內(nèi)存區(qū)域是不能被同時(shí)修改。當(dāng)一個(gè)sql語句提交后,oracle會(huì)首先檢查一下共享緩沖池(sharedpool)里有沒有與之完全相同的語句,如果有的話只須執(zhí)行軟分析即可,否則就得進(jìn)行硬分析。

而唯一使得oracle

能夠重復(fù)利用執(zhí)行計(jì)劃的方法就是采用綁定變量。綁定變量的實(shí)質(zhì)就是用于替代sql語句中的常量的替代變量。綁定變量能夠使得每次提交的sql語句都完全一樣。

1.sqlplus中如何使用綁定變量,可以通過variable來定義[c-sharp]

\o"viewplain"viewplain\o"copy"copySQL>

select

*

from

tt

where

id=1;

ID

NAME

----------

----------------------------------------

1

test

SQL>

select

*

from

tt

where

id=2;

ID

NAME

----------

----------------------------------------

2

test

SQL>

variable

i

number;

SQL>

exec

:i

:=1;

PL/SQL

過程已成功完成。

SQL>

select

*from

tt

where

id=:i;

ID

NAME

----------

----------------------------------------

1

test

SQL>

exec

:i

:=2;

PL/SQL

過程已成功完成。

SQL>

select

*from

tt

where

id=:i;

ID

NAME

----------

----------------------------------------

2

test

SQL>

print

i;

I

----------

2

SQL>

select

sql_text,parse_calls

from

v$sql

where

sql_text

like

'select

*

from

t

t

where

id=%';

SQL_TEXT

PARSE_CALLS

------------------------------------------------------------

-----------

select

*

from

tt

where

id=2

1

select

*

from

tt

where

id=1

1

select

*

from

tt

where

id=:i

2

SQL>

從上面試驗(yàn)發(fā)現(xiàn)綁定變量i的使用使查詢id=1和id=2的sqlselect*fromttwhereid=:i得以重復(fù)

使用,從而避免了hardparse,這里的PARSE_CALLS=2包括了一次softparse2.前兩天看到有人在pub上問在sqlplus中通過define和variable定義的變量的區(qū)別。其實(shí)define定義的我

理解不是變量而是字符常量,通過define定義之后,在通過&或者&&引用的時(shí)候不需要輸入了,僅此而已。

oracle在執(zhí)行的時(shí)候自動(dòng)用值進(jìn)行了替換;而variable定義的是綁定變量,上面已經(jīng)提到。[c-sharp]

\o"viewplain"viewplain\o"copy"copyC:>sqlplus

xys/manager

SQL*Plus:

Release

.0

-

Production

on

星期二

4月

1

14:03:00

2008

Copyright

(c)

1982,

2007,

Oracle.

All

rights

reserved.

連接到:

Oracle

Database

11g

Enterprise

Edition

Release

.0

-

Production

With

the

Partitioning,

OLAP,

Data

Mining

and

Real

Application

Testing

options

SQL>

define

DEFINE

_DATE

=

"01-4月

-08"

(CHAR)

DEFINE

_CONNECT_IDENTIFIER

=

"db11"

(CHAR)

DEFINE

_USER

=

"XYS"

(CHAR)

DEFINE

_PRIVILEGE

=

""

(CHAR)

DEFINE

_SQLPLUS_RELEASE

=

"1101000600"

(CHAR)

DEFINE

_EDITOR

=

"Notepad"

(CHAR)

DEFINE

_O_VERSION

=

"Oracle

Database

11g

Enterprise

Edition

Release

11.1.0.

6.0

-

Production

With

the

Partitioning,

OLAP,

Data

Mining

and

Real

Application

Testing

options"

(

CHAR)

DEFINE

_O_RELEASE

=

"1101000600"

(CHAR)

SQL>

select

*from

tt;

ID

NAME

----------

----------

1

a

2

a

3

"abc"

SQL>

define

a

SP2-0135:

符號(hào)

a

未定義

SQL>

define

a=1

SQL>

define

DEFINE

_DATE

=

"01-4月

-08"

(CHAR)

DEFINE

_CONNECT_IDENTIFIER

=

"db11"

(CHAR)

DEFINE

_USER

=

"XYS"

(CHAR)

DEFINE

_PRIVILEGE

=

""

(CHAR)

DEFINE

_SQLPLUS_RELEASE

=

"1101000600"

(CHAR)

DEFINE

_EDITOR

=

"Notepad"

(CHAR)

DEFINE

_O_VERSION

=

"Oracle

Database

11g

Enterprise

Edition

Release

11.1.0.

6.0

-

Production

With

the

Partitioning,

OLAP,

Data

Mining

and

Real

Application

Testing

options"

(CHAR)

DEFINE

_O_RELEASE

=

"1101000600"

(CHAR)

DEFINE

A

=

"1"

(CHAR)

--通過上面顯示define定義的應(yīng)該是字符(串)常量。

SQL>

select

*

from

tt

where

id=&a;

原值

1:

select

*

from

tt

where

id=&a

新值

1:

select

*

from

tt

where

id=1

ID

NAME

----------

----------

1

a

SQL>

select

*

from

tt

where

id=&&a;

原值

1:

select

*

from

tt

where

id=&&a

新值

1:

select

*

from

tt

where

id=1

ID

NAME

----------

----------

1

a

SQL>

define

b='a';

SQL>

define

DEFINE

_DATE

=

"01-4月

-08"

(CHAR)

DEFINE

_CONNECT_IDENTIFIER

=

"db11"

(CHAR)

DEFINE

_USER

=

"XYS"

(CHAR)

DEFINE

_PRIVILEGE

=

""

(CHAR)

DEFINE

_SQLPLUS_RELEASE

=

"1101000600"

(CHAR)

DEFINE

_EDITOR

=

"Notepad"

(CHAR)

DEFINE

_O_VERSION

=

"Oracle

Database

11g

Enterprise

Edition

Release

11.1.0.

6.0

-

Production

With

the

Partitioning,

OLAP,

Data

Mining

and

Real

Application

Testing

options"

(

CHAR)

DEFINE

_O_RELEASE

=

"1101000600"

(CHAR)

DEFINE

A

=

"1"

(CHAR)

DEFINE

B

=

"a"

(CHAR)

--如果是字符類型那么在引用時(shí)別忘了加上單引號(hào),另外通過define定義之后在引用時(shí)不需要輸入了。

SQL>

select

*

from

tt

where

name=&&b;

原值

1:

select

*

from

tt

where

name=&&b

新值

1:

select

*

from

tt

where

name=a

select

*

from

tt

where

name=a

*

1

行出現(xiàn)錯(cuò)誤:

ORA-00904:

"A":

標(biāo)識(shí)符無效

SQL>

select

*

from

tt

where

name='&&b';

原值

1:

select

*

from

tt

where

name='&&b'

新值

1:

select

*

from

tt

where

name='a'

ID

NAME

----------

----------

1

a

2

a

SQL>

select

*

from

tt

where

name='&b';

原值

1:

select

*

from

tt

where

name='&b'

新值

1:

select

*

from

tt

where

name='a'

ID

NAME

----------

----------

1

a

2

a

--執(zhí)行sql時(shí)進(jìn)行了替換

SQL>

select

sql_text

from

v$sql

where

sql_text

like

'select

*

from

tt

where

name

=%';

SQL_TEXT

--------------------------------------------------------------------------------

select

*

from

tt

where

name=1

select

*

from

tt

where

name='a'

SQL>

3.oracle在解析sql時(shí)會(huì)把plsql中定義的變量轉(zhuǎn)為為綁定變量[c-sharp]

\o"viewplain"viewplain\o"copy"copySQL>

create

table

tt(id

int

,

name

varchar2(10));

表已創(chuàng)建。

SQL>

alter

session

set

sql_trace=true;

會(huì)話已更改。

SQL>

declare

2

begin

3

for

i

in

1..100

loop

4

insert

into

tt

values(i,'test');

5

end

loop;

6

commit;

7

end;

8

/

PL/SQL

過程已成功完成。

SQL>

alter

session

set

sql_trace=false;

--trace

file:

=====================

PARSING

IN

CURSOR

#3

len=90

dep=0

uid=31

oct=47

lid=31

tim=7109565004

hv=962259239

ad='668ec528'

declare

begin

for

i

in

1..100

loop

insert

into

tt

values(i,'test');

end

loop;

commit;

end;

END

OF

STMT

PARSE

#3:c=15625,e=5678,p=0,cr=3,cu=0,mis=1,r=0,dep=0,og=1,tim=7109564996

=====================

PARSING

IN

CURSOR

#5

len=34

dep=1

uid=31

oct=2

lid=31

tim=7109565520

hv=1299226876

ad='66869934'

INSERT

INTO

TT

VALUES(:B1

,'test')

END

OF

STMT

PARSE

#5:c=0,e=226,p=0,cr=0,cu=0,mis=1,r=0,dep=1,og=1,tim=7109565513

=====================

另外從hardparse的數(shù)據(jù)量上其實(shí)也可以大致猜測oracle會(huì)把plsql中定義的變量轉(zhuǎn)換為綁定變量處理[c-sharp]

\o"viewplain"viewplain\o"copy"copySQL>

connect

/as

sysdba

已連接。

SQL>

shutdown

immediate

數(shù)據(jù)庫已經(jīng)關(guān)閉。

已經(jīng)卸載數(shù)據(jù)庫。

ORACLE

例程已經(jīng)關(guān)閉。

SQL>

startup

ORACLE

例程已經(jīng)啟動(dòng)。

Total

System

Global

Area

167772160

bytes

Fixed

Size

1247900

bytes

Variable

Size

67110244

bytes

Database

Buffers

96468992

bytes

Redo

Buffers

2945024

bytes

數(shù)據(jù)庫裝載完畢。

數(shù)據(jù)庫已經(jīng)打開。

SQL>

connect

xys/manager

已連接。

SQL>

drop

table

tt;

表已刪除。

SQL>

create

table

tt(id

int

,

name

varchar2(10));

表已創(chuàng)建。

SQL>

col

name

format

a30

SQL>

select

a.*,

2

from

v$sesstat

a

,

v$statname

b

3

where

a.statistic#=b.statistic#

4

and

a.sid=(select

distinct

sid

from

v$mystat)

5

and

like

'%parse%';

SID

STATISTIC#

VALUE

NAME

----------

----------

----------

------------------------------

159

328

39

parse

time

cpu

159

329

74

parse

time

elapsed

159

330

339

parse

count

(total)

159

331

165

parse

count

(hard)

159

332

0

parse

count

(failures)

SQL>

declare

2

begin

3

for

i

in

1..100

loop

4

insert

into

tt

values(i,'test');

5

end

loop;

6

commit;

7

end;

8

/

PL/SQL

過程已成功完成。

SQL>

select

a.*,

2

from

v$sesstat

a

,

v$statname

b

3

where

a.statistic#=b.statistic#

4

and

a.sid=(select

distinct

sid

from

v$mystat)

5

and

like

'%parse%'

6

/

SID

STATISTIC#

VALUE

NAME

----------

----------

----------

------------------------------

159

328

39

parse

time

cpu

159

329

74

parse

time

elapsed

159

330

345

parse

count

(total)

159

331

167

parse

count

(hard)

159

332

0

parse

count

(failures)

SQL>

這里發(fā)現(xiàn)hardparse只增加了2,如果沒有使用綁定變量的話,相信hardparse會(huì)更多4.過程中的參數(shù)會(huì)自動(dòng)轉(zhuǎn)化為綁定變量[c-sharp]

\o"viewplain"viewplain\o"copy"copySQL>

edit

已寫入

file

afiedt.buf

1

create

or

replace

procedure

proc_test(p_id

int,

p_name

varchar2)

2

is

3

begin

4

insert

into

tt

values(p_id

,

p_name);

5

commit;

6*

end;

SQL>

/

過程已創(chuàng)建。

SQL>

alter

session

set

sql_trace=true;

會(huì)話已更改。

SQL>

exec

proc_test(200,'test');

PL/SQL

過程已成功完成。

SQL>

alter

session

set

sql_trace=false;

會(huì)話已更改。

--trace

file:

alter

session

set

sql_trace=true

END

OF

STMT

EXEC

#3:c=0,e=749,p=0,cr=0,cu=0,mis=1,r=0,dep=0,og=1,tim=7393908487

=====================

PARSING

IN

CURSOR

#1

len=35

dep=0

uid=31

oct=47

lid=31

tim=7403000735

hv=526484776

ad='6687b0b8'

BEGIN

proc_test(200,'test');

END;

END

OF

STMT

PARSE

#1:c=0,e=2584,p=0,cr=0,cu=0,mis=1,r=0,dep=0,og=1,tim=7403000727

=====================

PARSING

IN

CURSOR

#6

len=33

dep=1

uid=31

oct=2

lid=31

tim=7403001293

hv=2874748229

ad='668e9cd8'

INSERT

INTO

TT

VALUES(:B2

,

:B1

)

END

OF

STMT

PARSE

#6:c=0,e=246,p=0,cr=0,cu=0,mis=1,r=0,dep=1,og=1,tim=7403001286

=====================

另外也可以直觀的觀察:[c-sharp]

\o"viewplain"viewplain\o"copy"copySQL>

exec

proc_test(200,'test');

PL/SQL

過程已成功完成。

SQL>

select

sql_text

from

v$sql

where

sql_text

like

'%proc_test%';

SQL_TEXT

--------------------------------------------------------------------------------

BEGIN

proc_test(200,'test');

END;

SQL>

在sqlplus里執(zhí)行過程不能觀察出來

下面在plsqldeveloper執(zhí)行一次過程之后再來看執(zhí)行的情況[c-sharp]

\o"viewplain"viewplain\o"copy"copySQL>

select

sql_text

from

v$sql

where

sql_text

like

'%proc_test%';

SQL_TEXT

--------------------------------------------------------------------------------

begin

--

Call

the

procedure

proc_test(p_id

=>:p_id,

p_name

=>:p_name);

end;

SQL>

很顯然oracle在執(zhí)行過程時(shí)把參數(shù)轉(zhuǎn)化為綁定變量了,其實(shí)從plsqldeveloper中執(zhí)行過程時(shí)的語法就能

看出來:[c-sharp]

\o"viewplain"viewplain\o"copy"copybegin

--

Call

the

procedure

proc_test(p_id

=>

:p_id,

p_name

=>

:p_name);

end;

在輸入?yún)?shù)列表框上面的執(zhí)行語法就是這樣的。5.在動(dòng)態(tài)sql中使用綁定變量,動(dòng)態(tài)sql中使用綁定變量非常明顯也容易理解,下面給出2個(gè)簡單的例子[c-sharp]

\o"viewplain"viewplain\o"copy"copySQL>

set

serveroutput

on

SQL>

declare

2

v_string

varchar2(100);

3

v_id

tt.id%type

;

4

v_name

%type

;

5

begin

6

v_string:='select

*

from

tt

where

id=:v_id';

7

execute

immediate

v_string

into

v_id

,

v_name

using

&a;

8

dbms_output.put_line(v_id||'

'||v_name)

;

9

end;

10

/

輸入

a

的值:

1

原值

7:

execute

immediate

v_string

into

v_id

,

v_name

using

&a;

新值

7:

execute

immediate

v_string

into

v_id

,

v_name

using

1;

1

test

PL/SQL

過程已成功完成。

SQL>

declare

2

v_string

varchar2(100);

3

v_id

tt.id%type;

4

v_name

%type

;

5

begin

6

v_string:='insert

into

tt

values(:id,:name)';

7

execute

immediate

v_string

using

&id,&name

;

8

end;

9

/

輸入

id

的值:

1000

輸入

name

的值:

'test'

原值

7:

execute

immediate

v_string

using

&id,&name

;

新值

7:

execute

immediate

v_string

using

1000,'test'

;

PL/SQL

過程已成功完成。

SQL>

select

*

from

tt

where

id=1000;

ID

NAME

----------

----------

1000

test

SQL>

=============================下面加上一些其他變量的使用方法=========================

eg001(&替換變量)[c-sharp]

\o"viewplain"viewplain\o"copy"copySQL>

select

xh,xm

from

system.xs

where

zym='&zym';

輸入

zym

的值:

計(jì)算機(jī)

原值

1:

select

xh,xm

from

system.xs

where

zym='&zym'

新值

1:

select

xh,xm

from

system.xs

where

zym='計(jì)算機(jī)'

XH

XM

------

--------

061101

王林

061102

程明

061103

王燕

061104

韋嚴(yán)平

061106

李方方

061107

李明

061108

林一帆

061109

張強(qiáng)民

061110

張蔚

061111

趙琳

061113

嚴(yán)紅

已選擇11行。

SQL>

edit

已寫入

file

afiedt.buf

1

select

xh

學(xué)號(hào),xm

姓名,avg(cj)

as

平均成績

2*

from

system.xs_xkb

group

by

xh,xm

SQL>

/

學(xué)號(hào)

姓名

平均成績

------

--------

----------

061103

王燕

71

061210

李紅慶

76

061110

張蔚

91.3333333

061220

吳薇華

82

061104

韋嚴(yán)平

79.6666667

061101

王林

78

061204

馬林林

91

061106

李方方

72

061218

孫研

70

061102

程明

78

061241

羅林琳

90

學(xué)號(hào)

姓名

平均成績

------

--------

----------

061111

趙琳

80.5

061109

張強(qiáng)民

76.5

061216

孫祥欣

81

061221

劉燕敏

79

已選擇15行。

SQL>

select

*

from

system.xs_xkb

where

cj>=&cj;

/*替換變量可以使用WHERE子句;ORDER

BY子句;列表達(dá)式;表名;整個(gè)SELECT語句*/

輸入

cj

的值:

90

原值

1:

select

*

from

system.xs_xkb

where

cj>=&cj

新值

1:

select

*

from

system.xs_xkb

where

cj>=90

SQL>

select

xs.xh,&name,kcm,&column

2

from

system.xs,&kc,system.xs_kc

3

where

xs.xh=xs_kc.xh

and

&condition

4

and

kcm=&kcm

5

order

by

&

column;

輸入

name

的值:

xm

輸入

column

的值:

cj

原值

1:

select

xs.xh,&name,kcm,&column

新值

1:

select

xs.xh,xm,kcm,cj

輸入

kc

的值:

system.kc

原值

2:

from

system.xs,&kc,system.xs_kc

新值

2:

from

system.xs,system.kc,system.xs_kc

輸入

condition

的值:

kc.kch=xs_kc.kch

原值

3:

where

xs.xh=xs_kc.xh

and

&condition

新值

3:

where

xs.xh=xs_kc.xh

and

kc.kch=xs_kc.kch

輸入

kcm

的值:

'離散數(shù)學(xué)'

原值

4:

and

kcm=&kcm

新值

4:

and

kcm='離散數(shù)學(xué)'

輸入

column

的值:

cj

原值

5:

order

by

&

column

新值

5:

order

by

cj

XH

XM

KCM

CJ

------

--------

----------------

----------

061104

韋嚴(yán)平

離散數(shù)學(xué)

65

061109

張強(qiáng)民

離散數(shù)學(xué)

70

061101

王林

離散數(shù)學(xué)

76

061102

程明

離散數(shù)學(xué)

78

061106

李方方

離散數(shù)學(xué)

80

061103

王燕

離散數(shù)學(xué)

81

061110

張蔚

離散數(shù)學(xué)

89

eg002(&&替換變量)[c-sharp]

\o"viewplain"viewplain\o"copy"copy--&&替換變量系統(tǒng)一直用同一個(gè)值處理,清除用undefine

變量名清除

SQL>

edit

已寫入

file

afiedt.buf

1

select

xs.xh,&name,kcm,&&column

/*清除替換變量(undefine

column)*/

2

from

system.xs,&kc,system.xs_kc

3

where

xs.xh=xs_kc.xh

and

&condition

4

and

kcm=&kcm

5*

order

by

&column

SQL>

/

輸入

name

的值:

xm

輸入

column

的值:

cj

原值

1:

select

xs.xh,&name,kcm,&&column

新值

1:

select

xs.xh,xm,kcm,cj

輸入

kc

的值:

system.kc

原值

2:

from

system.xs,&kc,system.xs_kc

新值

2:

from

system.xs,system.kc,system.xs_kc

輸入

condition

的值:

kc.kch=xs_kc.kch

原值

3:

where

xs.xh=xs_kc.xh

and

&condition

新值

3:

where

xs.xh=xs_kc.xh

and

kc.kch=xs_kc.kch

輸入

kcm

的值:

'離散數(shù)學(xué)'

原值

4:

and

kcm=&kcm

新值

4:

and

kcm='離散數(shù)學(xué)'

原值

5:

order

by

&column

/*使用&&替換變量的好處,相同變量只輸?shù)谝淮尉蚈K*/

新值

5:

order

by

cj

XH

XM

KCM

CJ

------

--------

----------------

----------

061104

韋嚴(yán)平

離散數(shù)學(xué)

65

061109

張強(qiáng)民

離散數(shù)學(xué)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論