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

इन-बिल्ट एसक्यूएल कन्वर्ट फ़ंक्शन को निबर्ननेट मानदंड में उपयोग करना

अगर आप CAST स्वीकार कर सकते हैं CONVERT . के बजाय (और मुझे पूरा यकीन है कि आप कर सकते हैं) , तो और अधिक सीधा समाधान है।

कॉल करने के बजाय "SQL सर्वर से संबंधित" फ़ंक्शन, आइए अबास्ट्रक्शन को कॉल करें, जो कि अधिकांश डीबी सर्वरों पर काम करना चाहिए (समर्थित NHibernate dilacts के आधार पर)

Projections.Cast(NHibernateUtil.String, Projections.Property(searchCol))

तो Restriction WHERE . में उपयोग किया जाता है खंड इस तरह दिख सकता है:

Restrictions
    .Like (
        Projections.Cast(NHibernateUtil.String, Projections.Property(searchCol))
        , "2009"
        , MatchMode.Anywhere
    )

और SQL सर्वर बोली का उपयोग करते हुए NHibernate द्वारा उत्पन्न परिणाम होगा:

WHERE cast( this_.theColumn as NVARCHAR(255)) like @p1 ... @p1=N'%2009%'



  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. T-SQL का उपयोग करके SQL सर्वर में एक विदेशी कुंजी का नाम बदलें

  3. SQL सर्वर संचार प्रोटोकॉल समस्या

  4. पढ़ने के लिए प्रतिबद्ध और दोहराने योग्य पढ़ने के बीच अंतर

  5. SQL सर्वर में 1:1 और 1:m संबंधों को डिज़ाइन करना