sqlcmd SQL 返回字符串值作为#name? - 值在 SSMS 中正确显示
Posted
技术标签:
【中文标题】sqlcmd SQL 返回字符串值作为#name? - 值在 SSMS 中正确显示【英文标题】:sqlcmd SQL returning string value as #name? - value is displayed correctly in SSMS 【发布时间】:2018-05-06 07:25:47 【问题描述】:我有一个简单的 SQL 查询,它从 varchar2 列中提取值。它在 SSMS 中返回正确的值,但是在 sqlcmd 中它返回:“#NAME?” (没有双引号)。
它试图返回的实际值是“-W”(没有双引号)
我运行的代码是:
sqlcmd -S \\servername -d DBNAME -E -Q "select val from tab;"
知道这里有什么问题吗?可能是字符集问题?
软件版本:
SQL Server Management Studio V17.1
sqlcmd 版本 14.0.500.272 NT
【问题讨论】:
您是否可以使用此 sqlcmd 运行任何其他查询?这里可能是 XY 问题。 同意,试试"SELECT val = '- W';"
@Jacob:是的,我可以毫无问题地为所有其他记录返回此列值。正是这个特殊的记录给我带来了麻烦。
@AaronBertrand 这成功返回。原来的问题仍然没有乐趣
“此特定记录” - 您正在返回来自 tab
的所有行,您如何将特定行隔离为问题的根源?
【参考方案1】:
抱歉。我在 sqlcmd 与 SSMS 上得到不同答案的原因是因为我连接到不同的数据库。
让我们关闭这个线程,不再谈论这个。
【讨论】:
以上是关于sqlcmd SQL 返回字符串值作为#name? - 值在 SSMS 中正确显示的主要内容,如果未能解决你的问题,请参考以下文章