我有一個名為 Branch 的 MySql Db_table,其中包含兩個欄位,即“id”和“name”。id 是此表中的主鍵。我希望“name”列的值是傳遞給“id”列的值。例如,我需要這樣的東西:如果 name == "cmc" 那么 id 應該等于 "cmc" 等等。
id | name
CMC | CMC
我怎樣才能做到這一點?
uj5u.com熱心網友回復:
使用以下邏輯更新:
UPDATE yourTable
SET id = name
WHERE name = 'cmc';
相反,如果您希望該name列始終反映 的值,則id可以創建name一個計算列:
CREATE TABLE yourTable AS (
id varchar(100) NOT NULL PRIMARY KEY,
name varchar(100) AS (id),
...
)
uj5u.com熱心網友回復:
使用 AFTER INSERT 觸發器。
像這樣的東西
CREATE TRIGGER after_your_table_insert
AFTER INSERT
ON your_table FOR EACH ROW
BEGIN
IF NEW.name = 'CMC' THEN
UPDATE your_table
SET id = NEW.name;
END IF;
END$$
不幸的是,我沒有在我的系統上安裝 MySql 來檢查此代碼是否有效,但您可以在此處查看一些示例。
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/471307.html
