我有一个包含大量内连接和左外连接的查询。它运行完美,并在SQL Management Studio中提供了我想要的结果。但是当我运行.cs文件时,该查询的字符串值在某些地方包含“\ t”,例如在“INNER JOIN”之前。我确实检查了关键词之间的间距,所有语法都是正确的。有人知道这些“\ t”的东西何时来自?
答案 0 :(得分:3)
在Visual Studio的调试器中,选项卡将显示为\t
- 这并不意味着SQL Server不会理解语法,而是调试器显示特殊字符的方式。
答案 1 :(得分:0)
您可能需要再次检查cs代码中的查询,以确保您没有在任何地方使用过。我不认为它会在任何情况下自动插入。
最好使用存储过程而不是内联查询,因此您可能希望尝试使用存储过程。
答案 2 :(得分:0)
如果找不到TAB字符('\ t')的来源并且它们导致问题,可以在执行查询之前用空格替换它们:
var query = "SELCET * FROM MyTable";
query = query.Replace("\t", " ");
答案 3 :(得分:0)
哎呀,多亏了ypercube和kaps。它已经解决了。因为我将整个查询块从SQL Management Studio复制到.cs文件。我用“\ t”删除了这些行并再次输入。