最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

數(shù)據(jù)庫中update與delete使用表別名的深入研究

 更新時(shí)間:2024年10月23日 10:33:48   作者:SarPro  
本文介紹了UPDATE和DELETE?SQL語句在Oracle,?SQLite,?PostgreSQL,?MYSQL,?mariadb等數(shù)據(jù)庫系統(tǒng)中的執(zhí)行差異,文中通過代碼介紹的非常詳細(xì),對數(shù)據(jù)庫開發(fā)和維護(hù)人員有指導(dǎo)意義,需要的朋友可以參考下

總結(jié)

Update

SQL語句示例OracleSQLitePostgreSQLMYSQL & mariadb
UPDATE users as a SET a.age = 111 WHERE a.name = 'Alice';報(bào)錯(cuò)報(bào)錯(cuò)報(bào)錯(cuò)正常執(zhí)行
UPDATE users as a SET a.age = 111 WHERE name = 'Alice';報(bào)錯(cuò)報(bào)錯(cuò)報(bào)錯(cuò)正常執(zhí)行
UPDATE users as a SET age = 111 WHERE a.name = 'Alice';報(bào)錯(cuò)正常執(zhí)行正常執(zhí)行正常執(zhí)行
UPDATE users as a SET age = 111 WHERE name = 'Alice';報(bào)錯(cuò)正常執(zhí)行正常執(zhí)行正常執(zhí)行

Delete

SQL語句示例OracleSQLitePostgreSQLMYSQL & mariadb
delete from users as a WHERE a.name = 'Alice';報(bào)錯(cuò)報(bào)錯(cuò)報(bào)錯(cuò)報(bào)錯(cuò)
delete from users as a WHERE name = 'Alice';報(bào)錯(cuò)報(bào)錯(cuò)報(bào)錯(cuò)報(bào)錯(cuò)

1 Update

1.1 測試用例UPDATE users as a SET a.age = 111 WHERE a.name = 'Alice';

UPDATE users as a SET a.age = 111 WHERE a.name = 'Alice';

CREATE TABLE users (
    name VARCHAR(255) NOT NULL,
    age INT
);

INSERT INTO users (name, age) VALUES ('Alice', 25);
INSERT INTO users (name, age) VALUES ('Bob', 30);
INSERT INTO users (name, age) VALUES ('Charlie', 35);
INSERT INTO users (name, age) VALUES ('Alice', 40);

SELECT * FROM users;
UPDATE users as a SET a.age = 111 WHERE a.name = 'Alice';
SELECT * FROM users;

修改前表內(nèi)容如下:

nameage
Alice25
Bob30
Charlie35
Alice40

1 ORACLE

執(zhí)行報(bào)錯(cuò)

ORA-00971: missing SET keyword 

之后查詢表內(nèi)容未發(fā)生變化,如下:

nameage
Alice25
Bob30
Charlie35
Alice40

2 sqlite

執(zhí)行報(bào)錯(cuò)

Error: near line 12: near ".": syntax error

之后查詢表內(nèi)容未發(fā)生變化,如下:

nameage
Alice25
Bob30
Charlie35
Alice40

3 PG

執(zhí)行報(bào)錯(cuò)

psql:commands.sql:12: ERROR:  column "a" of relation "users" does not exist
LINE 1: UPDATE users as a SET a.age = 111 WHERE a.name = 'Alice';

之后查詢表內(nèi)容未發(fā)生變化,如下:

nameage
Alice25
Bob30
Charlie35
Alice40

4 MYSQL & mariadb

執(zhí)行正常

后表內(nèi)容已經(jīng)更新,如下:

nameage
Alice111
Bob30
Charlie35
Alice111

1.2 測試用例UPDATE users as a SET a.age = 111 WHERE name = 'Alice';

UPDATE users as a SET a.age = 111 WHERE name = 'Alice';

CREATE TABLE users (
    name VARCHAR(255) NOT NULL,
    age INT
);

INSERT INTO users (name, age) VALUES ('Alice', 25);
INSERT INTO users (name, age) VALUES ('Bob', 30);
INSERT INTO users (name, age) VALUES ('Charlie', 35);
INSERT INTO users (name, age) VALUES ('Alice', 40);

SELECT * FROM users;
UPDATE users as a SET a.age = 111 WHERE name = 'Alice';
SELECT * FROM users;

修改前表內(nèi)容如下:

nameage
Alice25
Bob30
Charlie35
Alice40

1 ORACLE

執(zhí)行報(bào)錯(cuò)

ORA-00971: missing SET keyword 

之后查詢表內(nèi)容未發(fā)生變化,如下:

nameage
Alice25
Bob30
Charlie35
Alice40

2 sqlite

 執(zhí)行報(bào)錯(cuò)

Error: near line 12: near ".": syntax error

之后查詢表內(nèi)容未發(fā)生變化,如下:

nameage
Alice25
Bob30
Charlie35
Alice40

3 PG

  執(zhí)行報(bào)錯(cuò)

psql:commands.sql:12: ERROR:  column "a" of relation "users" does not exist
LINE 1: UPDATE users as a SET a.age = 111 WHERE name = 'Alice';

之后查詢表內(nèi)容未發(fā)生變化,如下:

nameage
Alice25
Bob30
Charlie35
Alice40

4 MYSQL & mariadb

執(zhí)行正常

后表內(nèi)容已經(jīng)更新,如下:

nameage
Alice111
Bob30
Charlie35
Alice111

1.3 測試用例UPDATE users as a SET age = 111 WHERE a.name = 'Alice';

UPDATE users as a SET age = 111 WHERE a.name = 'Alice';

CREATE TABLE users (
    name VARCHAR(255) NOT NULL,
    age INT
);

INSERT INTO users (name, age) VALUES ('Alice', 25);
INSERT INTO users (name, age) VALUES ('Bob', 30);
INSERT INTO users (name, age) VALUES ('Charlie', 35);
INSERT INTO users (name, age) VALUES ('Alice', 40);

SELECT * FROM users;
UPDATE users as a SET age = 111 WHERE a.name = 'Alice';
SELECT * FROM users;

修改前表內(nèi)容如下:

nameage
Alice25
Bob30
Charlie35
Alice40

1 ORACLE

 執(zhí)行報(bào)錯(cuò)

ORA-00971: missing SET keyword 

之后查詢表內(nèi)容未發(fā)生變化,如下:

nameage
Alice25
Bob30
Charlie35
Alice40

2 sqlite

執(zhí)行正常

后表內(nèi)容已經(jīng)更新,如下:

nameage
Alice111
Bob30
Charlie35
Alice111

3 PG

執(zhí)行正常

后表內(nèi)容已經(jīng)更新,如下:

nameage
Bob30
Charlie35
Alice111
Alice111

4 MYSQL & mariadb

執(zhí)行正常

后表內(nèi)容已經(jīng)更新,如下:

nameage
Alice111
Bob30
Charlie35
Alice111

1.4 測試用例UPDATE users as a SET age = 111 WHERE name = 'Alice';

UPDATE users as a SET age = 111 WHERE name = 'Alice';

CREATE TABLE users (
    name VARCHAR(255) NOT NULL,
    age INT
);

INSERT INTO users (name, age) VALUES ('Alice', 25);
INSERT INTO users (name, age) VALUES ('Bob', 30);
INSERT INTO users (name, age) VALUES ('Charlie', 35);
INSERT INTO users (name, age) VALUES ('Alice', 40);

SELECT * FROM users;
UPDATE users as a SET age = 111 WHERE name = 'Alice';
SELECT * FROM users;

修改前表內(nèi)容如下:

nameage
Alice25
Bob30
Charlie35
Alice40

1 ORACLE

 執(zhí)行報(bào)錯(cuò)

ORA-00971: missing SET keyword 

之后查詢表內(nèi)容未發(fā)生變化,如下:

nameage
Alice25
Bob30
Charlie35
Alice40

2 sqlite

執(zhí)行正常

后表內(nèi)容已經(jīng)更新,如下:

nameage
Alice111
Bob30
Charlie35
Alice111

3 PG

執(zhí)行正常

后表內(nèi)容已經(jīng)更新,如下:

nameage
Bob30
Charlie35
Alice111
Alice111

4 MYSQL & mariadb

執(zhí)行正常

后表內(nèi)容已經(jīng)更新,如下:

nameage
Alice111
Bob30
Charlie35
Alice111

2 delete

2.1 測試用例delete users as a from a WHERE a.name = 'Alice';

delete users as a from a WHERE a.name = 'Alice';

CREATE TABLE users (
    name VARCHAR(255) NOT NULL,
    age INT
);

INSERT INTO users (name, age) VALUES ('Alice', 25);
INSERT INTO users (name, age) VALUES ('Bob', 30);
INSERT INTO users (name, age) VALUES ('Charlie', 35);
INSERT INTO users (name, age) VALUES ('Alice', 40);

SELECT * FROM users;
delete users as a from a WHERE a.name = 'Alice';
SELECT * FROM users;

修改前表內(nèi)容如下:

nameage
Alice25
Bob30
Charlie35
Alice40

1 ORACLE

 執(zhí)行報(bào)錯(cuò)

ORA-03048: SQL reserved word 'AS' is not syntactically valid following 'delete
users '

之后查詢表內(nèi)容未發(fā)生變化,如下:

nameage
Alice25
Bob30
Charlie35
Alice40

2 sqlite

 執(zhí)行報(bào)錯(cuò)

Error: near line 12: near "users": syntax error

之后查詢表內(nèi)容未發(fā)生變化,如下:

nameage
Alice25
Bob30
Charlie35
Alice40

3 PG

 執(zhí)行報(bào)錯(cuò)

psql:commands.sql:12: ERROR:  syntax error at or near "users"
LINE 1: delete users as a from a WHERE a.name = 'Alice';

 之后查詢表內(nèi)容未發(fā)生變化,如下:

nameage
Alice25
Bob30
Charlie35
Alice40

4 MYSQL & mariadb

 執(zhí)行報(bào)錯(cuò)

ERROR 1064 (42000) at line 12: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'as a from a WHERE a.name = 'Alice'' at line 1

 之后查詢表內(nèi)容未發(fā)生變化,如下:

nameage
Alice25
Bob30
Charlie35
Alice40

2.2 測試用例delete users as a from a WHERE name = 'Alice';

delete users as a from a WHERE name = 'Alice';

CREATE TABLE users (
    name VARCHAR(255) NOT NULL,
    age INT
);

INSERT INTO users (name, age) VALUES ('Alice', 25);
INSERT INTO users (name, age) VALUES ('Bob', 30);
INSERT INTO users (name, age) VALUES ('Charlie', 35);
INSERT INTO users (name, age) VALUES ('Alice', 40);

SELECT * FROM users;
delete users as a from a WHERE name = 'Alice';
SELECT * FROM users;

修改前表內(nèi)容如下:

nameage
Alice25
Bob30
Charlie35
Alice40

1 ORACLE

 執(zhí)行報(bào)錯(cuò)

ORA-03048: SQL reserved word 'AS' is not syntactically valid following 'delete
users '

之后查詢表內(nèi)容未發(fā)生變化,如下:

nameage
Alice25
Bob30
Charlie35
Alice40

2 sqlite

 執(zhí)行報(bào)錯(cuò)

Error: near line 12: near "users": syntax error

之后查詢表內(nèi)容未發(fā)生變化,如下:

nameage
Alice25
Bob30
Charlie35
Alice40

3 PG

 執(zhí)行報(bào)錯(cuò)

psql:commands.sql:12: ERROR:  syntax error at or near "users"
LINE 1: delete users as a from a WHERE name = 'Alice';

 之后查詢表內(nèi)容未發(fā)生變化,如下:

nameage
Alice25
Bob30
Charlie35
Alice40

4 MYSQL & mariadb

 執(zhí)行報(bào)錯(cuò)

ERROR 1064 (42000) at line 12: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'as a from a WHERE name = 'Alice'' at line 1

 之后查詢表內(nèi)容未發(fā)生變化,如下:

nameage
Alice25
Bob30
Charlie35
Alice40

總結(jié) 

到此這篇關(guān)于數(shù)據(jù)庫中update與delete使用表別名的文章就介紹到這了,更多相關(guān)update與delete使用表別名內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • mysql 5.7.23 winx64解壓版安裝教程

    mysql 5.7.23 winx64解壓版安裝教程

    這篇文章主要為大家詳細(xì)介紹了mysql 5.7.23 winx64解壓版安裝教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-09-09
  • Centos7下mysql 8.0.15 安裝配置圖文教程

    Centos7下mysql 8.0.15 安裝配置圖文教程

    這篇文章主要為大家詳細(xì)介紹了Centos7下mysql 8.0.15 安裝配置圖文教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-03-03
  • MySQL基于ibd2sql實(shí)現(xiàn)ibd文件批量轉(zhuǎn)換為SQL的完整指南

    MySQL基于ibd2sql實(shí)現(xiàn)ibd文件批量轉(zhuǎn)換為SQL的完整指南

    本文介紹了使用ibd2sql工具批量處理InnoDB獨(dú)立表空間文件.ibd恢復(fù)表結(jié)構(gòu)和數(shù)據(jù)的方法,提供了Windows PowerShell腳本和Linux Shell自動(dòng)化腳本,實(shí)現(xiàn)一鍵恢復(fù),對于手動(dòng)導(dǎo)入和常見問題也給出了解決方案,需要的朋友可以參考下
    2026-04-04
  • MySQL數(shù)據(jù)庫全量備份+增量備份的實(shí)現(xiàn)

    MySQL數(shù)據(jù)庫全量備份+增量備份的實(shí)現(xiàn)

    本文介紹了通過全量備份和增量備份實(shí)現(xiàn)數(shù)據(jù)庫數(shù)據(jù)的安全,并通過cron定時(shí)任務(wù)自動(dòng)進(jìn)行備份,文中通過示例代碼介紹的非常詳細(xì),需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2026-03-03
  • 修改MySQL時(shí)區(qū)和最大連接數(shù)的兩種方式

    修改MySQL時(shí)區(qū)和最大連接數(shù)的兩種方式

    文章介紹了如何修改MySQL的時(shí)區(qū)和最大連接數(shù),提供了臨時(shí)和永久兩種修改方法,時(shí)區(qū)修改需在配置文件中添加相應(yīng)設(shè)置,并在不同系統(tǒng)下的不同路徑進(jìn)行修改,最大連接數(shù)的修改同樣需要在配置文件中設(shè)置,并注意連接數(shù)不宜過大,本文給大家介紹的非常詳細(xì),感興趣的朋友一起看看吧
    2025-10-10
  • 細(xì)說MySQL死鎖與日志二三事

    細(xì)說MySQL死鎖與日志二三事

    這篇文章主要和大家一起聊一聊MySQL死鎖與日志二三事,實(shí)際業(yè)務(wù)當(dāng)中如何快速的定位線上MySQL問題,修復(fù)異常?本文根據(jù)兩個(gè)實(shí)際case,分享下相關(guān)的經(jīng)驗(yàn)與方法,感興趣的小伙伴們可以參考一下
    2017-08-08
  • mysql?8.0.28?winx64.zip安裝配置方法圖文教程

    mysql?8.0.28?winx64.zip安裝配置方法圖文教程

    這篇文章主要為大家詳細(xì)介紹了mysql?8.0.28?winx64.zip安裝配置方法圖文教程,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-04-04
  • 優(yōu)化mysql數(shù)據(jù)庫的經(jīng)驗(yàn)總結(jié)

    優(yōu)化mysql數(shù)據(jù)庫的經(jīng)驗(yàn)總結(jié)

    本篇文章是對優(yōu)化mysql數(shù)據(jù)庫的經(jīng)驗(yàn)進(jìn)行了詳細(xì)的總結(jié)介紹,需要的朋友參考下
    2013-06-06
  • 不使用MySQL數(shù)據(jù)庫的五個(gè)給力理由解析

    不使用MySQL數(shù)據(jù)庫的五個(gè)給力理由解析

    眾所周知,MySQL數(shù)據(jù)庫雖然功能未必很強(qiáng)大,但因?yàn)樗拈_源、廣泛傳播,導(dǎo)致很多人都了解到這個(gè)數(shù)據(jù)庫。
    2011-03-03
  • MySQL鎖機(jī)制與用法分析

    MySQL鎖機(jī)制與用法分析

    這篇文章主要介紹了MySQL鎖機(jī)制與用法,較為詳細(xì)的分析了mysql鎖機(jī)制的分類、原理及相關(guān)使用技巧,需要的朋友可以參考下
    2018-04-04

最新評論

巢湖市| 布尔津县| 蚌埠市| 贵德县| 太谷县| 太康县| 澄城县| 宁武县| 比如县| 淳化县| 龙门县| 仙游县| 磐安县| 武胜县| 舞阳县| 怀远县| 永善县| 苍溪县| 奈曼旗| 陆良县| 泉州市| 凤庆县| 高安市| 昌吉市| 措勤县| 南漳县| 错那县| 长治县| 万荣县| 通江县| 湄潭县| 峨山| 安岳县| 福泉市| 沙田区| 越西县| 东安县| 和静县| 木兰县| 芜湖县| 如皋市|