none
資料型別 float 轉 char 沒辦法一模一樣 RRS feed

  • 問題

  • SQL Server 2000 SP4,我把 float 轉 char,結果 -11000.0923 變成 -11000.1,

    但是如上的例子,convert(char,-11000.0923) 卻又會等於 -11000.0923 的字串,

    這算是 bug 嗎?

     

    我需要對指定資料庫的所有 table (sysobjects) 的所有column (syscolumns) 做精確或模糊查詢,

    為了搜尋方便,我排除 bnary 型態後,把所有型別轉成 char,再 trim 掉所有空白,

     

    我不用全文檢索的原因,是這是某一套商業軟體的資料庫,不是我設定的,

    如果要做,是不是要對全部 8000 個欄位做全文檢索的設定,不知道我有沒有誤會?

     

    請問有沒有解決的方法?或是其他別的想法做法?

    請各位前輩賜教,謝謝。

     

    2007年11月22日 上午 01:46

解答

  • Dear Sir

     

    SQL Server 2000 BOL中提到了下列的資訊:

    從 float 或 real 轉換成字元資料時,最好不要用 CAST( ),而用 STR( ) 字串函數,因為 STR( ) 可對格式設定有較多控制。

     

    提供給您參考~

     

    Best regards,

    Colin Lin

    微軟技術支援中心

    2007年11月28日 上午 09:02

所有回覆

  •  

    順便一問,SQL Server 2005 也是如上面的例子一樣嗎?

    我還沒用過,請用過的人指教一下,算是提醒在用的人小心,謝謝。

    2007年11月28日 上午 05:03
  • Dear Sir

     

    SQL Server 2000 BOL中提到了下列的資訊:

    從 float 或 real 轉換成字元資料時,最好不要用 CAST( ),而用 STR( ) 字串函數,因為 STR( ) 可對格式設定有較多控制。

     

    提供給您參考~

     

    Best regards,

    Colin Lin

    微軟技術支援中心

    2007年11月28日 上午 09:02