當前位置:首頁 » 操作系統 » 資料庫的更新語句

資料庫的更新語句

發布時間: 2022-11-29 10:51:35

資料庫update的用法

資料庫update的用法的用法你知道嗎?下面我就跟你們詳細介紹下資料庫update的用法的用法,希望對你們有用。

資料庫update的用法的用法如下:

sql語句中的更新語句update是最常用的語句之一,下面將為您介紹update語句的三種使用方法,供您參考,希望對您有所幫助。

一、環境:

MySQL-5.0.41-win32

Windows XP professional

二、建立測試環境:

DROP TABLE IF EXISTS t_test;

CREATE TABLE t_test (

bs bigint(20) NOT NULL auto_increment,

username varchar(20) NOT NULL,

password varchar(20) default NULL,

remark varchar(200) default NULL,

PRIMARY KEY (bs)

) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=gbk;

INSERT INTO t_test VALUES (1,'lavasoft','123456',NULL);

INSERT INTO t_test VALUES (2,'hello',NULL,NULL);

INSERT INTO t_test VALUES (3,'haha',zz,tt);

三、測試

1、set一個欄位

在表t_test中設置第二條記錄(bs為2)的password為'***'。

update t_test t

set t.password = '***'

where t.bs = 2;

2、set多個欄位

在表t_test中設置第一條記錄(bs為1)的password為'*'、remark為'*'。

update t_test t

set t.password = '*', t.remark = '*'

where t.bs = 1;

3、set null值

在表t_test中設置第三條記錄(bs為3)的password為null、remark為null。

update t_test t

set t.password = null, t.remark = null

where t.bs = 3;

這個是按照標准語法寫的,在不同的資料庫系統中,update還有更多的寫法,但是標准寫法都是支持的。以上三個例子為了說明情況,每次都更新一行。在實際中,可以通過where語句約束來控制更新行數。

② 資料庫更新語句怎麼寫

如果按你的要求需要寫個存儲過程來實現。麻煩。

如果按下面來做的話,會有重復值,
update 表名 set column_no=datepart(day,column_time)

建議你把column_no 按如20090101來更新較方便,這樣能與column_time能對應上。

update 表名 set column_no=(datepart(year,column_time)*100+datepart(month,column_time))*100+datepart(day,column_time)

③ Sql Server資料庫的更新語句怎麼寫

string cnn = ConfigurationManager.ConnectionStrings["youSqlConn"].ConnectionString;

using (SqlConnection cn = new SqlConnection())
{
cn.ConnectionString = cnn;
cn.Open();
SqlCommand cmd = new SqlCommand();
cmd.Connection = cn;
cmd.CommandText = "update table set field='"+ 你的變數+"' where id="+更新條件;
cmd.ExecuteNonQuery(); //執行更新
}

④ sql更新資料庫語句

sql更新資料庫語句
UPDATE語句用於更新修改指定記錄的數據,其用法為:

UPDATE tbl_name SET col_name1=value1, col_name2=value2, … WHERE conditions

對符合條件的記錄,更新修改指定欄位的值。若沒有WHERE條件限定,則對所有記錄進行更新修改。例如:

圖 4.23 更新記錄

⑤ 資料庫中update的用法

資料庫中update的用法的用法你知道嗎?下面我就跟你們詳細介紹下資料庫中update的用法的用法,希望對你們有用。

資料庫中update的用法的用法如下:

首先,單表的UPDATE語句:

UPDATE [LOW_PRIORITY] [IGNORE] tbl_name

SET col_name1=expr1 [, col_name2=expr2 ...]

[WHERE where_definition]

[ORDER BY ...]

[LIMIT row_count]

其次,多表的UPDATE語句:

UPDATE [LOW_PRIORITY] [IGNORE] table_references

SET col_name1=expr1 [, col_name2=expr2 ...]

[WHERE where_definition]

UPDATE語法可以用新值更新原有錶行中的各列。

SET子句指示要修改哪些列和要給予哪些值。WHERE子句指定應更新哪些行。

如果沒有WHERE子句,則更新所有的行。如果指定了ORDER BY子句,則按照被指定的順序對行進行更新。

LIMIT子句用於給定一個限值,限制可以被更新的行的數目。

UPDATE語句支持以下修飾符:

1,如果您使用LOW_PRIORITY關鍵詞,則UPDATE的執行被延遲了,直到沒有其它的客戶端從表中讀取為止。

2,如果您使用IGNORE關鍵詞,則即使在更新過程中出現錯誤,更新語句也不會中斷。

如果出現了重復關鍵字沖突,則這些行不會被更新。如果列被更新後,新值會導致數據轉化錯誤,則這些行被更新為最接近的合法的值。

如果您在一個表達式中通過tbl_name訪問一列,則UPDATE使用列中的當前值。

例如,把年齡列設置為比當前值多一:

復制代碼 代碼如下:

mysql> UPDATE persondata SET age=age+1;

UPDATE賦值被從左到右評估。

例如,對年齡列加倍,然後再進行增加:

復制代碼 代碼如下:

mysql> UPDATE persondata SET age=age*2, age=age+1;

如果您把一列設置為其當前含有的值,則MySQL會注意到這一點,但不會更新。

如果您把被已定義為NOT NULL的列更新為NULL,則該列被設置到與列類型對應的默認值,並且累加警告數。

對於數字類型,默認值為0;對於字元串類型,默認值為空字元串('');對於日期和時間類型,默認值為“zero”值。

UPDATE會返回實際被改變的行的數目。Mysql_info() C API函數可以返回被匹配和被更新的行的數目,以及在UPDATE過程中產生的警告的數量。

您可以使用LIMIT row_count來限定UPDATE的范圍。LIMIT子句是一個與行匹配的限定。

只要發現可以滿足WHERE子句的row_count行,則該語句中止,不論這些行是否被改變。

如果一個UPDATE語句包括一個ORDER BY子句,則按照由子句指定的順序更新行。

您也可以執行包括多個表的UPDATE操作。table_references子句列出了在聯合中包含的表。

例子:

復制代碼 代碼如下:

SQL>UPDATE items,month SET items.price=month.price

WHERE items.id=month.id;

說明:以上代碼顯示出了使用逗號操作符的內部聯合,但是multiple-table UPDATE語句可以使用在SELECT語句中允許的任何類型的聯合,比如LEFT JOIN。

注釋:不能把ORDER BY或LIMIT與multiple-table UPDATE同時使用。

在一個被更改的multiple-table UPDATE中,有些列被引用。您只需要這些列的UPDATE許可權。有些列被讀取了,但是沒被修改。您只需要這些列的SELECT許可權。

如果您使用的multiple-table UPDATE語句中包含帶有外鍵限制的InnoDB表,則MySQL優化符處理表的順序可能與上下層級關系的順序不同。

在此情況下,語句無效並被 回滾。同時,更新一個單一表,並且依靠ON UPDATE功能。

該功能由InnoDB提供,用於對其它表進行相應的修改。

目前,不能在一個子查詢中更新一個表,同時從同一個表中選擇。

update語句的幾種基本用法

A. 使用簡單的 UPDATE

下列示例說明如果從 UPDATE 語句中去除 WHERE 子句,所有的行會受到什麼影響。

下面這個例子說明,如果表 publishers 中的所有出版社將總部搬遷到喬治亞州的亞特蘭大市,表 publishers 如何更新。

復制代碼 代碼如下:

UPDATE publishers

SET city = 'Atlanta', state = 'GA'

本示例將所有出版商的名字變為 NULL。

復制代碼 代碼如下:

UPDATE publishers

SET pub_name = NULL

也可以在更新中使用計算值。本示例將表 titles 中的所有價格加倍。

復制代碼 代碼如下:

UPDATE titles

SET price = price * 2

B.把 WHERE 子句和 UPDATE 語句一起使用

WHERE 子句指定要更新的行例如,在下面這個虛構的事件中,北加利福尼亞更名為 Pacifica(縮寫為 PC),而奧克蘭的市民投票決定將其城市的名字改為 Bay City。這個例子說明如何為奧克蘭市以前的所有居民(他們的地址已經過時)更新表 authors。

復制代碼 代碼如下:

UPDATE authors

SET state = 'PC', city = 'Bay City'

WHERE state = 'CA' AND city = 'Oakland'

必須編寫另一個語句來更改北加利福尼亞其它城市的居民所在的州名。

C.通過 UPDATE 語句使用來自另一個表的信息

本示例修改表 titles 中的 ytd_sales 列,以反映表 sales 中的最新銷售記錄。

復制代碼 代碼如下:

UPDATE titles

SET ytd_sales = titles.ytd_sales + sales.qty

FROM titles, sales

WHERE titles.title_id = sales.title_id

AND sales.ord_date = (SELECT MAX(sales.ord_date) FROM sales)

這個例子假定,一種特定的商品在特定的日期只記錄一批銷售量,而且更新是最新的。如果不是這樣(即如果一種特定的商品在同一天可以記錄不止一批銷售量),這里所示的例子將出錯。例子可正確執行,但是每種商品只用一批銷售量進行更新,而不管那一天實際銷售了多少批。這是因為一個 UPDATE 語句從不會對同一行更新兩次。

對於特定的商品在同一天可銷售不止一批的情況,每種商品的所有銷售量必須在 UPDATE 語句中合計在一起,如下例所示:

復制代碼 代碼如下:

UPDATE titles

SET ytd_sales =

(SELECT SUM(qty)

FROM sales

WHERE sales.title_id = titles.title_id

AND sales.ord_date IN (SELECT MAX(ord_date) FROM sales))

FROM titles, sales

D. 將 UPDATE 語句與 SELECT 語句中的 TOP 子句一起使用

這個例子對來自表 authors 的前十個作者的 state 列進行更新。

復制代碼 代碼如下:

UPDATE authors

SET state = 'ZZ'

FROM (SELECT TOP 10 * FROM authors ORDER BY au_lname) AS t1

WHERE authors.au_id = t1.au_id

⑥ sql查詢 更新語句怎麼寫

1、首先需要打開sql server 資料庫。

⑦ sql資料庫更新語句

update
是更新現有的一條記錄。
insert
是增加一條新記錄。
insert
into
table_name(name,num)
values('A貨','20')
欄位為什麼要設成中文的?用英語來不是好點嗎?

⑧ 哪個sql語句用於更新資料庫中的數據

update語句,用途是更新表中原有數據,單獨使用時使用where匹配欄位。

用途:更新表中原有數據。單獨使用,使用where匹配欄位。set後面,更新欄位值,既可以一次一項,也可以一次多項。

例如:Updatetable_nameSetcolumn_name=new_valueWherecolumn_name=some_value

(8)資料庫的更新語句擴展閱讀:

例:「Person」表中的原始數據:

LastNameFirstNameAddressCity

NilsenFredKirkegt56Stavanger

RasmussenStorgt67

運行下面的SQL將Person表中LastName欄位為」Rasmussen」的FirstName更新為」Nina」:

UPDATEPersonSETFirstName='Nina'WHERELastName='Rasmussen'

更新後」Person」表中的數據為:

LastNameFirstNameAddressCity

NilsenFredKirkegt56Stavanger

RasmussenNinaStorgt67

同樣的,用UPDATE語句也可以同時更新多個欄位:

例如:UPDATEPersonSETAddress='Stien12',City='Stavanger'WHERELastName='Rasmussen'

更新後」Person」表中的數據為:

LastNameFirstNameAddressCity

NilsenFredKirkegt56Stavanger

RasmussenNinaStien12Stavanger

網路-update

⑨ SQL的update語句怎麼寫

UPDATE 表名稱 SET 列名稱 = 新值 WHERE 列名稱 = 某值,update語句的寫法:

1、UPDATE table_name

2、SET column1=value1,column2=value2,...

3、WHERE column(1)=value(1),column(2)=value(2)...and column(n)=value(n);

4、UPDATE Person SET Address = 'Zhongshan 23', City = 'Nanjing',WHERE LastName = 'Wilson'

(9)資料庫的更新語句擴展閱讀

SQL的update語句寫法的特點

1、一體化:SQL集數據定義DDL、數據操縱DML和數據控制DCL於一體,可以完成資料庫中的全部工作。

2、使用方式靈活:它具有兩種使用方式,即可以直接以命令方式交互使用;也可以嵌入使用,嵌入到C、C++、FORTRAN、COBOL、JAVA等主語言中使用。

3、非過程化:只提操作要求,不必描述操作步驟,也不需要導航。使用時只需要告訴計算機「做什麼」,而不需要告訴它「怎麼做」。

4、語言簡潔,語法簡單,好學好用:在ANSI標准中,只包含了94個英文單詞,核心功能只用6個動詞,語法接近英語口語。

⑩ sql update 語句是什麼

UPDATE 表名稱 SET 列名稱 = 新值 WHERE 列名稱 = 某值,update語句的寫法:

1、UPDATE table_name。

2、SET column1=value1,column2=value2,...。

3、WHERE column(1)=value(1),column(2)=value(2)...and column(n)=value(n)。

4、UPDATE Person SET Address = 'Zhongshan 23', City = 'Nanjing',WHERE LastName = 'Wilson'。

SQL語句中UPDATE的三種用法:

一、環境:

MySQL-5.0.41-win32。

Windows XP professional。

二、建立測試環境:

DROP TABLE IF EXISTS t_test。

CREATE TABLE t_test 。

bs bigint(20) NOT NULL auto_increment。

username varchar(20) NOT NULL。

password varchar(20) default NULL。

remark varchar(200) default NULL。

PRIMARY KEY (bs)。

) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=gbk。

INSERT INTO t_test VALUES (1,'lavasoft','123456',NULL)。

INSERT INTO t_test VALUES (2,'hello',NULL,NULL)。

INSERT INTO t_test VALUES (3,'haha',zz,tt)。

熱點內容
編程中的變數 發布:2024-05-17 11:33:06 瀏覽:776
加密視頻怎麼解密 發布:2024-05-17 11:02:52 瀏覽:571
柳工挖機密碼多少合適 發布:2024-05-17 11:00:40 瀏覽:188
android工程嘆號 發布:2024-05-17 10:56:21 瀏覽:481
在蘋果手機應用怎麼比安卓貴 發布:2024-05-17 10:56:20 瀏覽:548
賽歐313配置怎麼樣 發布:2024-05-17 10:43:16 瀏覽:989
c語言預算 發布:2024-05-17 10:43:16 瀏覽:493
推薦對稱加密演算法 發布:2024-05-17 10:43:15 瀏覽:823
有存儲功能計算器 發布:2024-05-17 10:42:34 瀏覽:119
小米賬號密碼保險箱在哪裡 發布:2024-05-17 10:17:00 瀏覽:752