2012-02-03 152 views
0

我是MySQL中的一個新手(來自SQLServer),並且下面的代碼(我可以在SQLServer中使用)有一個語法錯誤,並且在手冊中查找,我還沒有發現問題尚未解決:MySQL SQL腳本不能正常工作

UPDATE t002_produto as p 
    SET (p.prd_cod=111, 
     p.prd_prod=1, 
     p.prd_modal=222, 
     p.prd_nome='Produto Teste 1', 
     p.prd_abrev='Prod', 
     p.prd_tipo='Prod', 
     p.prd_bndes=1); 

prd_cod = BIGINT(20) PK NN 
prd_cod = BIGINT(20) NN 
prd_modal = BIGINT(20) 
prd_nome = VARCHAR(50) 
prd_abrev = VARCHAR(10) 
prd_tipo = VARCHAR(15) 
prd_bndes = BIT(1) 

回答

2

也許不需要括號。 或者AS可能不被允許。 容易檢查。我會這樣做:

UPDATE 
    t002_produto 
SET 
    prd_cod=111, 
    prd_prod=1, 
    prd_modal=222, 
    prd_nome='Produto Teste 1', 
    prd_abrev='Prod', 
    prd_tipo='Prod', 
    prd_bndes=1 
; 

請注意,它會更新所有的表格,因爲您沒有編寫WHERE子句。

+0

就是這樣......非常簡單......爲什麼不把人們統一SQL的語法,至少在基本操作中呢?謝謝... – Alex 2012-02-03 11:57:31

+0

問題是括號,AS是好的。我忘記了我的代碼中存在的WHERE子句。 – Alex 2012-02-03 11:58:55

+0

他們這樣做。它是忽略標準的微軟。 :) – vulkanino 2012-02-03 11:59:03