2013-02-22 56 views
2
DECLARE @Text1 varchar(10) = ' ltrim' 
DECLARE @Text2 varchar(10) = 'rtrim ' 
DECLARE @Text3 varchar(10) = ' ltrimrtrim ' 

INSERT INTO TABLE 
VALUES (LTRIM(RTRIM(@text1)), LTRIM(RTRIM(@text2)), LTRIM(RTRIM(@text3)))` 

我得到一個紅色波浪線以下TRIM T-SQL參數

"LTRIM(RTRIM(@text1))" 

部分(工具提示消息:LTRIM FX要求1個參數)。

我在做什麼錯?請提供建議。

謝謝

+1

可以請你說明你正試圖插入到表的結構? – 2013-02-22 22:59:01

+1

將鼠標懸停在紅色波浪線上。工具提示是什麼意思?你是否區分大小寫?如果是這樣,它會抱怨'@ Text1' <>'@ text1' – 2013-02-22 22:59:27

+0

編輯了初始評論。我會嘗試bluefeet的sln。謝謝你的回覆。 – 007 2013-02-22 23:02:12

回答

2

你有table稱爲table?如果是這樣,那麼請嘗試圍繞表名[table]的方括號,因爲表是保留字。

下面

您代碼工作:

DECLARE @Text1 varchar(10) = ' ltrim' 
DECLARE @Text2 varchar(10) = 'rtrim ' 
DECLARE @Text3 varchar(20) = ' ltrimrtrim ' 

select LTRIM(RTRIM(@text1)) col1, 
    LTRIM(RTRIM(@text2)) col2, 
    LTRIM(RTRIM(@text3)) col3 
into #temp 

select * 
from #temp 

SQL Fiddle with Demo

+0

感謝bluefeed爲您的代碼。原來我錯過了括號。嘿嘿只是好奇,是否有任何表現差異b/w我張貼和你張貼什麼?謝謝(也是那個網站很酷)。 – 007 2013-02-22 23:11:30

+1

不,沒有區別。我的理由是將數據加載到臨時表中。 :) – Taryn 2013-02-22 23:12:55

+0

啊,好的,謝謝。 – 007 2013-02-22 23:17:00