sql
  • sql-server
  • database
  • matlab
  • 2016-06-21 176 views 0 likes 
    0

    我得到下面的錯誤,當我執行我的查詢:MATLAB ODBC SQL Server驅動程序的SQL Server無效的列名

    Message: 'ODBC Driver Error: [Microsoft][ODBC SQL Server Driver][SQL Server]Invalid column name 'SSC%'.'

    ,我寫我的查詢是這樣的:

    "query = 'select top 500 * from [dbo].[accu_HISTORY_CONFIG] WHERE Description LIKE "SSC%"';" 
    

    我是新來的MATLAB數據庫瀏覽器。基本上我試圖找到包含前三個字母「SSC」的所有「描述」。但是,我不斷收到此「無效列名」錯誤。我懷疑MATLAB把我的"SSC%"當成了一個列名?我應該如何解決這個問題?任何建議將非常感謝!

    +0

    對於字符串文字使用單引號。 (雙引號用於分隔標識符,例如列名。)'... WHERE描述LIKE'SSC%''。 – jarlh

    +0

    @jarlh謝謝你的建議。是的,我試過了。事實上,最初我使用這種格式。但是,「%」在Matlab中被視爲註釋。如果您只使用單引號,最後三個符號 將變爲綠色(如註釋) –

    +0

    也許您的環境需要雙引號?即'...說明LIKE''SSC%''';' – jarlh

    回答

    1

    「結束了MATLAB中的字符串,但你想」你的字符串裏面。如果你想這樣做只是使用它兩次:

    query = 'select top 500 * from [dbo].[accu_HISTORY_CONFIG] WHERE Description LIKE ''SSC%'' '; 
    
    +0

    謝謝!現在它工作正常。 –

    0

    通常你的通配符語句將保留在單引號。

    所以通常是

    'select top 500 * from [dbo].[accu_HISTORY_CONFIG] WHERE Description LIKE 'SSC%'' 
    

    如果不是,這幫助文章應包括你所需要的。

    https://support.microsoft.com/en-us/kb/222664

    相關問題