Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

Dbtype_dbdate को आज तक कनवर्ट करने में त्रुटि

उम्मीद है कि यह मदद करता है (मैं SQL सर्वर 2012 का उपयोग नहीं कर रहा हूँ)।
यदि आपका ODBC db2 से लिंक करता है, तो दिनांक सीमा के लिए समर्थित नहीं है उदा। '0001-01-01', आपको कास्ट करने की जरूरत है। आम तौर पर यह काम करता है।

SELECT * 
FROM   OPENQUERY(LINKEDSERVERNAME, 'SELECT Product, 
                                       CAST(DateLastReceipt AS CHAR(10))
                                FROM   ProductTable')

यदि आप अभी भी परिणाम को तिथि के रूप में चाहते हैं, तो बस CASE का उपयोग करें और अमान्य तिथि को अपनी डिफ़ॉल्ट तिथि से बदल दें। उदा।

SELECT *
FROM   OPENQUERY(LINKEDSERVERNAME, 'SELECT Product, 
                               ,CASE WHEN DateLastReceipt AS CHAR(10)) = ''0001-01-01''
                                       THEN CURRENT_DATE
                                     ELSE DateLastReceipt 
                                     END
                                FROM   ProductTable')

आपको CURRENT_DATE को CURRENT_TIMESTAMP में बदलना पड़ सकता है और CASE संरचना आपके db सर्वर और आपकी आवश्यकता पर निर्भर करती है




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. कोड प्रथम ऐड-माइग्रेशन के दौरान त्रुटियाँ

  2. दो अलग-अलग डेटाबेस के बीच डेटा को सिंक्रोनाइज़ करना

  3. जाँच करें कि क्या किसी स्ट्रिंग में संग्रहीत कार्यविधि का उपयोग करके SQL Server 2005 में एक सबस्ट्रिंग है

  4. जहां न्यूल है, नॉट न्यूल या नो व्हेयर क्लॉज SQL सर्वर पैरामीटर मान पर निर्भर करता है

  5. SQL सर्वर क्वेरी के लिए अधिकतम आकार? खंड में? क्या कोई बेहतर तरीका है