在线精品亚洲一区二区绿巨人,亚洲精品456在线播放,337P日本欧洲亚洲大胆色噜噜,十八禁无码免费网站

北京松源偉立科技有限公司

咨詢熱線:158-0117-0786
咨詢直線:158-0117-0786
公司傳真:
公司網(wǎng)址: dicasdavida.com
公司地址:北京市朝陽區(qū)區(qū)芍藥居北里
首頁  ?   知識庫  ?  用友T3   ?  用友通Sql表數(shù)據(jù)操作

用友通Sql表數(shù)據(jù)操作

來源:原創(chuàng) 發(fā)布時間:2017-03-21 16:12:45
Sql表數(shù)據(jù)操作

表數(shù)據(jù)操作包括數(shù)據(jù)的插入、修改和刪除。
一、插入數(shù)據(jù) 

在向表中添加數(shù)據(jù)時應(yīng)該注意兩點:第一是用戶權(quán)限,只有sysadmin角包成員、數(shù)據(jù)庫和數(shù)據(jù)庫對象所有者及其授權(quán)用戶才有權(quán)限向表中添加數(shù)據(jù);第二是數(shù)據(jù)格式,對于不同的數(shù)據(jù)類型,插入數(shù)據(jù)的格式也不一樣,應(yīng)嚴(yán)格遵守它們各自的格式要求。

Transact-SQL語言中用INSERT語句向表或視圖中插入新的數(shù)據(jù)行。INSERT語句的語法格式為:

INSERT [INTO] table_source

{[column_list]

VALUES ({DEFAULT | constant_expression} [,…n])

|DEFAULT VALUES

|select_statement

|execute_statement

}

}

其中,column_list參數(shù)為新插入數(shù)據(jù)行中一列或多列列名列表,它說明INSERT 語句只為指定列插入數(shù)據(jù)。在給表或視中部分列插入數(shù)據(jù)時,必須使用列名列表方式指出這部分列名。其余未指定列的列值要根據(jù)它們的默認(rèn)值和空值屬性情況而定,它們有以下幾種可能取值:

(1)對于timestamp列或具有IDENTITY屬性列,它們的列值由SQL Server計算后自動賦值。

(2)如果這些列有默認(rèn)值或關(guān)聯(lián)有默認(rèn)數(shù)據(jù)庫對象,插入新列時,它們的值為默認(rèn)值。

(3)當(dāng)這些列沒有默認(rèn)值設(shè)置時,但它們允許空值時,該列值為空。

(4)當(dāng)這些列既沒有默認(rèn)值設(shè)置,也不允許空值時,SQL Server在執(zhí)行INSERT 語句時將產(chǎn)生錯誤,

導(dǎo)致插入操作失敗。

當(dāng)未指定column_list 參數(shù)時,為各列所提供的數(shù)據(jù)順序應(yīng)嚴(yán)格按照表中各列的定義順序,而使用column_list參數(shù)則可以調(diào)整向表中所插入數(shù)據(jù)的列順序,只要VALUES子句所提供的數(shù)據(jù)順序與column_list參數(shù)中指定的列順序相同即可。

VALUES子句為新插入行中column_list 參數(shù)所指定列提供數(shù)據(jù),這些數(shù)據(jù)可以以常量表達(dá)式形式提供,或使用DEFAULT關(guān)鍵字說明向列中插入其默認(rèn)值。

DEFAULT VALUES說明向表中所有列插入其默認(rèn)值。對于具有INDENTITY 屬性或timestamp 數(shù)據(jù)類型列,系統(tǒng)將自動插入下一個適當(dāng)值。對于沒有設(shè)置默認(rèn)值的列,如果它們允許空值,SQL Server將插入null,否則返回一錯誤消息。

select_statement是標(biāo)準(zhǔn)的數(shù)據(jù)庫查詢語句,它是SQL Server為INSERT語句所提供的又一種數(shù)據(jù)插入方式。INSERT語句將select_statement子句所返回的結(jié)果集合數(shù)據(jù)插入到指定表中。查詢語句結(jié)果集合每行中的數(shù)據(jù)數(shù)量、 數(shù)據(jù)類型和排列順序也必須與表中所定義列或 column_list 參數(shù)中指定列的數(shù)量、數(shù)據(jù)類型和排列順序完全相同。

SQL Server為INSERT語句提供的第四種數(shù)據(jù)插入方式是通過執(zhí)行系統(tǒng)存儲過程,其數(shù)據(jù)來自于過程執(zhí)行后所產(chǎn)生的結(jié)果集合。所執(zhí)行的過程可以為存儲過程、系統(tǒng)存儲過程或擴(kuò)展存儲過程,它們既可以為本地存儲過程,又可以是遠(yuǎn)程服務(wù)器上的存儲過程,只要用戶具有它們的執(zhí)行權(quán)限即可。有關(guān)存儲過程請參閱對應(yīng)的內(nèi)容。

table_source說明INSERT語句插入數(shù)據(jù)時所操作的表或視圖,其語法格式可簡單書寫為:

{table_name [[AS] table_alias]

| view_name [[AS] table_alias]

}

table_name和view_name說明被插入數(shù)據(jù)的表或視圖名稱,table_alias參數(shù)為表或視圖設(shè)置別名。

使用別名有兩方面原因:第一、當(dāng)表或視圖名稱較長時,使用別名可以簡化書寫工作;第二,在自連接或子查詢中,使用別名可以區(qū)別同一個表或視圖。

在向表中插入數(shù)據(jù)時, 如果所插入的數(shù)據(jù)與約束或規(guī)則的要求沖突, 或是它們的數(shù)據(jù)類型不兼容時,將導(dǎo)致INSERT 語句執(zhí)行失敗。當(dāng)使用SELECT或EXECUTE子句向表中一次插入多行數(shù)據(jù)時,如果其中有任一行數(shù)據(jù)有誤,它將導(dǎo)致整個插入操作失敗,使SQL Server停止所有數(shù)據(jù)行的插入操作。

例一、使用數(shù)值列表方式( 假定 usertable 表中只定義了name、age和sex字段,且name、sex均char類型,age為int類型)。

INSERT usertable

VALUES (\'張三\',\'女\',18)

例二、使用列名列表方式

INSERT usertable (age,name)

VALUES (18,\'張三\')

例三、在數(shù)值列表中,還可以將變量的值插入到表中。在使用變量為列提供數(shù)據(jù)時,應(yīng)保證變量的數(shù)據(jù)類型與列數(shù)據(jù)類型相同,或是可以自動將它們轉(zhuǎn)換為相同的數(shù)據(jù)類型。例如:

DECLARE @name char(16)

SET @name=\'張三\'

INSERT usertable

VALUES (@name,DEFAULT,20)

本例中Asp中是這樣的:

dim name

name="張三"

sqlstr="INSERT usertable VALUES (\'"&name&"\',\'女\',20)"

……



例四、將SELECT子句的所返回的結(jié)果集合插入到表中。例如:

INSERT usertable (name,sex,age)

SELECT \'s\'+name,sex,age

FROM usertable

WHERE name like \'張%%\'


二、修改數(shù)據(jù) 

Transact-SQL中的UPDATE語句用于修改表中數(shù)據(jù),該語句的語法格式為:

UPDATE ()

SET (

column_name={expression | DEFAULT }

| @variable = expression

} [,…n]

[FROM

{

| (select_statement) [AS] table_alias [,…m]) ]

}

[,…n]

]

[WHERE



| CURRENT OF ({[GLOBAL] cursor_name } | cursor_variable_name} }

]

別看寫了一大堆,最常用的只是下列格式:

UPDATE table_name

SET column_name1=variable1,column_name2=variable2

WHERE search_conditions

其中table_or_view參數(shù)指出待修改的表或視圖名稱,其格式與INSERT語句中該參數(shù)的格式相同。

SET子句指出表中被修改的列或變量,以及它們的新值。column_name為被修改的列名,@variable為一個已經(jīng)聲明的局部變量名稱,它們修改后的值由expression表達(dá)式提供,或使用DEFAULT關(guān)鍵字將默認(rèn)值賦給指定列。

FROM子句引出另一個表,它為UPDATE語句的數(shù)據(jù)修改操作提供條件。

WHERE子句中的search_conditions 參數(shù)說明UPDATE語句的修改條件,它指出表或視圖中的哪些行需要修改。省略WHERE子句時,說明對指定的表或視圖中的所有行進(jìn)行修改?。。?!

WHERE子句中的CURRENT OF說明在游標(biāo)的當(dāng)前位置處執(zhí)行修改操作,游標(biāo)由curror_name 或游標(biāo)變量cursor_variable_name指定。

UPDATE不能修改具有IDENTITY屬性列的列值。

例一、將usertable表中所有人員的性別改為\'男\(zhòng)'

UPDATE usertable

SET sex=\'男\(zhòng)'



例二、將性別為null的所有人員的性別改成\'男\(zhòng)'

UPDATE usertable

SET sex=\'男\(zhòng)'

WHERE sex IS NUL
例三、將所有姓名為null的人員的姓名改為\'張三\'、性別改為\'女\',年齡改為18

UPDATE usertable

SET name=\'張三\',sex=\'女\',age=18

WHERE name IS NULL


三、刪除數(shù)據(jù) 

Transact-SQL中,DELETE和TRUNCATE TABLE語句均可以刪除表中的數(shù)據(jù)。DELETE語句的語法格式為:

DELETE

{table_name | view_name}

首頁  |   知識庫  |   軟件產(chǎn)品  |   新聞動態(tài)  |   成功案例  |   解決方案  |   產(chǎn)品下載  |   關(guān)于我們  |   聯(lián)系我們
版權(quán)所有:北京松源偉立科技有限公司   公司地址:北京市朝陽區(qū)區(qū)芍藥居北里   客服信箱: service@bjyongyou.com   熱線:158-0117-0786
關(guān)鍵詞:北京用友軟件,財務(wù)軟件,北京用友,北京財務(wù)軟件,用友軟件,進(jìn)銷存軟件,會計電算化軟件,用友U8,用友T6,用友T3,用友財務(wù)通,用友企業(yè)管理軟件    京ICP備15017070號-1