国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數(shù)據(jù)庫 > MySQL > 正文

MySQL中Update與Insert語句用法詳解

2024-07-24 12:37:44
字體:
供稿:網(wǎng)友

在mysql數(shù)據(jù)更新與保存我們可以使用Update與Insert命令,下面我來給大家分別介紹Update與Insert的用法與一些區(qū)別了,各位朋友可參考.

MySQL 更新數(shù)據(jù) Update 語句

update 語句的定義:

UPDATE語法可以用新值更新原有表行中的各列,讓我們先來看一下update語句標準的定義,放在[]內(nèi)的都是可以省略的,代碼如下:

  1. UPDATE [LOW_PRIORITY] [IGNORE] tbl_name 
  2. SET col_name1=expr1 [, col_name2=expr2 ...] 
  3. [WHERE where_definition] 
  4. [ORDER BY ...] 
  5. [LIMIT row_count] 

set子句指示要修改哪些列和要給予哪些值,where子句指定應(yīng)更新哪些行,如果省略了update的where子句,表中的第一個單獨行都會受到update語句的影響,這是很危險的,其后果是讓你欲哭無淚,加班加點非但不受表揚反而處處白眼,頭經(jīng)常說的一句話就是"硬盤有價,數(shù)據(jù)無價",真理啊.

update 語句示例:

為了簡單說明一下效果,我們依舊使用在前面講解insert語句時用過的表結(jié)構(gòu),代碼如下:

  1. create table links (name varchar(255) not null default '', url varchar(255) not null default ''); 

把現(xiàn)有數(shù)據(jù)庫中用戶名為xiaoxiaozi的名字改為simaopig,SQL如下:

update links set name='simaopig' where name='xiaoxiaozi'

把數(shù)據(jù)庫中所有的鏈接地址都改為hzhuti,則使用如下SQL:

update links set url='http://m.survivalescaperooms.com';

update 語句也可執(zhí)行計算或調(diào)用函數(shù):

這點和insert語句是一樣的,可以使用update語句執(zhí)行計算或者調(diào)用函數(shù),然后利用 這些操作的結(jié)果進行更新,這個示例很好給出,當(dāng)我們安裝完mysql數(shù)據(jù)庫時,一般情況下root用戶是沒有密碼的,此時我們可以使用如下語句為root用戶設(shè)置密碼為:123456,代碼如下:

update user set Password = password('123456') where User = 'root';

MySQL 插入數(shù)據(jù) Insert 語句

insert 語句的定義:INSERT用于向一個已有的表中插入新行,INSERT...VALUES語句根據(jù)明確指定的值插入行,讓我們先來看一下insert語句標準的定義,放在[]內(nèi)的都是可以省略的,代碼如下:

  1. INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE
  2. [INTO] tbl_name [(col_name,...)] 
  3. VALUES ({expr | DEFAULT},...),(...),... 
  4. ON DUPLICATE KEY UPDATE col_name=expr, ... ] 

這個語法是很簡單的,根據(jù)英語單詞的意思就可以直接翻譯過來:插入 表名(字段1名,字段2名) values (字段1的值,字段2的值);

insert 語句示例:為了簡單說明一下效果,我們來創(chuàng)建如下結(jié)構(gòu)的Mysql數(shù)據(jù)表,來方便后面的一些示例:

  1. create table links (name varchar(255) not null default '', url varchar(255) not null default ''); 

插入一條數(shù)據(jù),name設(shè)為xiaoxiaozi,url設(shè)為http://m.survivalescaperooms.com可以用如下語法,代碼如下:

insert into links(name,url) values('xiaoxiaozi','http://m.survivalescaperooms.com');

插入完數(shù)據(jù)后,我們可以使用select * from links;語句來查詢看數(shù)據(jù)是否已經(jīng)成功插入.

insert 語句省略字段名示例:

我們使用insert語句的時候,可以省略字段名,這時,我們需要按照數(shù)據(jù)庫定義的字段順序來將數(shù)據(jù)插入到數(shù)據(jù)庫中,如上例的表結(jié)構(gòu),就先定義的name,然后定義的字段url,我們可以用如下代碼插入一條與上例同樣的數(shù)據(jù):

insert into links values('xiaoxiaozi','http://m.survivalescaperooms.com');

insert 語句一次插入多條數(shù)據(jù):

假如我們想一次性的往數(shù)據(jù)庫里插入多條數(shù)據(jù)咋辦?一定要寫多條語句嗎?肯定是不會的,因為MySQL設(shè)計的還是很人性的,其提供insert語句的一種非標準格式,即,values(字段值1,字段值2,字段值3),(另一個字段1的值,另一個字段2的值,另一個字段3的值);同時插入兩條數(shù)據(jù),看語法說明,那個into被我省略了:

insert links (name,url) values('xiaoxiaozi','http://m.survivalescaperooms.com'),('xiaoxiaozi','http://m.survivalescaperooms.com');

insert 語句使用update 語句的set方式插入數(shù)據(jù):mysql還提供了另一種方法插入數(shù)據(jù),同樣是使用insert語句,但是語法是非標準版的,您可以理解為山寨。呵呵,山寨威武嘛,MySQL允許我們讓insert語句使用update的set結(jié)構(gòu)來插入數(shù)據(jù),代碼如下:

# 使用insert set 結(jié)構(gòu)插入數(shù)據(jù)

insert into links set name='xiaoxiaozi',url='http://m.survivalescaperooms.com';

關(guān)于insert語句的幾點說明:

其實也不是啥說明了,都是書上面的例子,不過懶的敲了,而且感覺沒有啥太大意義,都是需要大家理解的,給不給例子是一樣的.

1. 因為之前我在日志中介紹創(chuàng)建表結(jié)構(gòu)的時候,字段是可以有默認值的,在MySQL4.0.3及更高版本都支持一個DEFAULT關(guān)鍵字,在我們使用 insert 語句的時候,可以使字段的值等于DEFAULT關(guān)鍵字,來使其等于數(shù)據(jù)庫創(chuàng)建的時候的default值.

2. AUTOINCREMENT自增字段,這個我們是不用給出值的,因為系統(tǒng)會自動為該字段來進行自增,但是如果您愿意,也是可以傳值的,看您心情.

3. UNIQUE這個我們也說過,就是字段唯一的意思,比如說用戶的id設(shè)置UNIQUE,已經(jīng)存在一條用戶id為1的數(shù)據(jù),如果此時您再想插入一條用戶id為1的數(shù)據(jù)是不會成功的,系統(tǒng)會出錯的.

4. 如果數(shù)據(jù)庫字段允許存在NULL值的話,我們在insert插入語句中,也是可以將字段值設(shè)為NULL的.

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 溧阳市| 怀宁县| 县级市| 乌恰县| 宜良县| 宜兴市| 凤翔县| 云梦县| 清河县| 迭部县| 天祝| 肇东市| 临湘市| 陵川县| 井冈山市| 竹山县| 清远市| 上犹县| 抚远县| 玛多县| 张家港市| 潢川县| 周宁县| 孝义市| 济南市| 蓝山县| 若羌县| 澳门| 揭西县| 舒兰市| 井研县| 宁海县| 永和县| 平陆县| 黔东| 石林| 浪卡子县| 嘉兴市| 苍南县| 邵武市| 岳普湖县|