2010-10-22 190 views
0

不確定這是否是適當的「編程」問題,但與其相關。 是否有一種方法通過SQL或Excel甚至爲大量的值添加引號,例如我想添加值a,b,c,d,e,f,g,j等等等等到表中有沒有我可以自動添加引號給他們嗎?在 'A', 'B' 等等......批量將引號添加到SQL值

我有這樣的問題,尤其是在我的SELECT * FROM表,其中在( '值1', '值')列...

謝謝.. 。

+0

請更具體一點,是否要將引號添加到列的值,還是要將值添加到列中? – 2010-10-22 10:22:38

+0

你從哪裏得到你的價值?一個文本文件?一個問題?一個Excel文件? – 2010-10-22 10:28:33

+0

從diffent表複製粘貼 – andreas 2010-10-22 10:33:31

回答

0

不知道如果這能幫助或者是你問的是什麼,但對於這樣的質疑,你應該使用的參數,即像

SELECT ... WHERE column IN (?,?) 

這不僅是一個簡單的方法,但也意味着,如果某人在他們給你的價值中放入一個單引號,你的查詢的形式不能改變 - 這就是SQL Inj發生安全攻擊。

+0

@ adrian不是我的意思...我想要一種自動爲我的值添加''的方法,而不是手動添加引號和逗號......每次.. – andreas 2010-10-22 10:26:30

+0

neverminf ..在excel中使用串聯謝謝 – andreas 2010-10-22 10:36:07

0

如果在其他表的同一列中有值,您coud使用選擇查詢

select '''' + cast(ValueColumn as nvarchar) + '''' as QuotedVal from MyTable 

,然後做你的複製/粘貼

+0

我得到一個錯誤,將數據類型varchar轉換爲數字時出錯。 – andreas 2010-10-22 11:47:56

+0

編輯也可以使用數字(將投影添加到nvarchar) – 2010-10-22 12:59:46

1

我通常解決這類使用Excel問題 - 如果你在列中輸入你的源值,然後你可以使用一個Excel公式來連接它們周圍的引號(例如= CONCATENATE(「'」,A1,「'」)),甚至可以擴展它來構建完整SQL語句。