KB2897282 - การแก้ไข: รูปแบบวันที่ไม่ถูกต้องจะถูกส่งกลับเมื่อคุณเรียกใช้ฟังก์ชัน DateAdd หรือ Day ใน SSAS 2012 หรือ SSAS 2014 บนคอมพิวเตอร์ที่มีตําแหน่งที่ตั้งที่ไม่ใช่ของสหรัฐอเมริกา

นำไปใช้กับ
SQL Server 2012 Analysis Services

โปรแกรมแก้ไขด่วนนี้ยังนําไปใช้กับ Microsoft SQL Server 2014 Analysis Services (SSAS 2014)

อาการ

สมมติว่า คุณมี Microsoft SQL Server 2012 Analysis Services (SSAS 2012) หรือ SQL Server 2014 Analysis Services (SSAS 2014)ติดตั้งบนคอมพิวเตอร์ที่ไม่ใช่ตําแหน่งที่ตั้งของสหรัฐอเมริกา และตําแหน่งที่ตั้งของ SQL Server 2012 หรือ SSAS 2014 เป็นตําแหน่งที่ตั้งของสหรัฐอเมริกา เมื่อคุณเรียกใช้ฟังก์ชัน DateAdd หรือ Day ค่าที่ส่งกลับของฟังก์ชันคือรูปแบบตําแหน่งที่ตั้งของสหรัฐอเมริกาแทนที่จะเป็นรูปแบบที่คุณกําหนดไว้

ตัวอย่างเช่น ตําแหน่งที่ตั้งของระบบปฏิบัติการบนคอมพิวเตอร์เป็นตําแหน่งที่ตั้ง UK (DMY) และตําแหน่งที่ตั้งของ SQL Server 2012 หรือ SSAS 2014 คือตําแหน่งที่ตั้งของสหรัฐอเมริกา (MDY) ถ้าคุณเรียกใช้ฟังก์ชัน DateAdd โดยใช้ DateAdd("d", 0, "12/01/1959 00:00:00") ในสหราชอาณาจักร การตั้งค่าพารามิเตอร์จะต้องถือว่าเป็น dd/mm/yy ผลลัพธ์ที่ไม่ถูกต้องคือ 01 ธันวาคม 1959" แทนที่จะเป็นผลลัพธ์ที่ถูกต้อง "12 มกราคม 1959"

และถ้าคุณเรียกใช้ฟังก์ชัน Day โดยใช้ Day("12/01/1959 00:00:00") ในการตั้งค่า UK ค่าพารามิเตอร์จะต้องเป็น dd/mm/yy ผลลัพธ์ที่ไม่ถูกต้องคือวัน "01" แทนที่จะเป็นวันผลลัพธ์ที่ถูกต้อง "12"

การแก้ปัญหา

ปัญหานี้ได้รับการแก้ไขเป็นครั้งแรกในการอัปเดตแบบสะสมของ SQL Server ต่อไปนี้

การอัปเดตสะสม 1 สําหรับ SQL Server 2014 /en-us/help/2931693

การอัปเดตสะสม 7 สําหรับ SQL Server 2012 SP1 /en-us/help/2894115

เกี่ยวกับการอัปเดตสะสมสําหรับ SQL Server

แต่ละปรับปรุงสะสมใหม่สําหรับ SQL Server ประกอบด้วยโปรแกรมแก้ไขด่วนทั้งหมด และการแก้ไขข้อบกพร่องด้านความปลอดภัยทั้งหมดที่รวมอยู่ในการปรับปรุงสะสมก่อนหน้านี้ ดูการอัปเดตแบบสะสมล่าสุดสําหรับ SQL Server:

      

สถานะ

Microsoft ได้ยืนยันว่านี่เป็นปัญหาที่เกิดขึ้นกับผลิตภัณฑ์ของ Microsoft ที่แสดงไว้ในส่วน "นำไปใช้กับ"