SQL Server 2008 - 嘗試編輯日期 - 語法錯誤? (SQL Server 2008 - Trying to edit dates - Syntax Error?)


問題描述

SQL Server 2008 ‑ 嘗試編輯日期 ‑ 語法錯誤? (SQL Server 2008 ‑ Trying to edit dates ‑ Syntax Error?)

I have a database that has startDate and endDate. I am trying to run this simple script to find and replace certain dates. Here is my script:

SET startDate = '2012‑10‑11 07:00'
AND
endDate = '2012‑10‑13 20:00'

where startDate = '2012‑10‑12 07:00'
AND
endDate = '2012‑10‑14 20:00'

I run it and receive this error:

Incorrect syntax near '='.: SET startDate => '2012‑10‑11 07:00' AND endDate = '2012‑10‑13 20:00' where startDate = '2012‑10‑12 07:00' AND endDate = '2012‑10‑14 20:00'

I really have no idea why it's not running correctly, but hopefully one of you clever bod's here will be able to point out my incredibly dumb mistake! 

Here's hoping! =0)


參考解法

方法 1:

you need to separate your columns to update with a comma rather than AND:

UPDATE  YourTable
SET     startDate = '2012‑10‑11 07:00',
        endDate = '2012‑10‑13 20:00' 
WHERE   startDate = '2012‑10‑12 07:00' 
AND     endDate = '2012‑10‑14 20:00'

You should also use a culture insensitive date format like 'yyyyMMdd hh:mm:ss', e.g. your date 2012‑10‑11 07:00, would be interpretted as 11th October by some cultures, and 10th November by others.

Example on SQL Fiddle of why not use yyyy‑mm‑dd dates

(by c0d3n4m3GarethD)

參考文件

  1. SQL Server 2008 ‑ Trying to edit dates ‑ Syntax Error? (CC BY‑SA 3.0/4.0)

#syntax-error #sql-server-2008 #SQL






相關問題

SQL Server 2008 - 嘗試編輯日期 - 語法錯誤? (SQL Server 2008 - Trying to edit dates - Syntax Error?)

將 Jquery.min 升級到 Jquery.1.9 時出錯 (Error Upgrade Jquery.min into Jquery.1.9)

SyntaxError:無效語法(打印功能) (SyntaxError: invalid syntax (print function))

錯誤:“if”之前的預期表達式 (error: expected expression before ‘if’)

導致 C2061 的用戶創建的標頭:語法錯誤:標識符“類名” (User-Created Header Causing C2061: Syntax Error : Identifier 'classname')

If 語句行收到語法錯誤 (Syntax Error received on If statement line)

語法錯誤:到達了意外的文件結尾。你有一個未關閉的#if (Syntax error: Unexpected end of file reached. You have an unclosed #if)

已經放 } 但錯誤仍然說 } 是預期的? (Already put } but the error still says that } is expected?)

為什麼 Java 不允許在這裡使用三元運算符? (Why doesn't Java allow the use of a ternary operator here?)

我在繪製向量時遇到語法錯誤 (I'm encountering a syntax error while plotting vectors)

我想在 Kotlin 中自定義新按鈕時遇到問題 (I have a problem when I want to customize my new button in Kotlin)

為什麼帶註釋的變量不能是全局的? (Why can't an annotated variable be global?)







留言討論