查询返回的结果在SQL Server Management Studio中,但在应用程序中不返回任何东西

问题描述 投票:0回答:1

下面我有一个查询。它返回在Microsoft SQL Server Management Studio中的数据,但在应用程序不返回任何东西。

SELECT name FROM CHANGETABLE(CHANGES client, 2) AS Result

在这两个地方下面返回数据的同时查询:

SELECT name FROM client

下面是负责执行查询的代码:

var adapter = Factory.CreateDataAdapter(); // Creates instance of SqlDataAdapter
adapter.SelectCommand = Command; // Contains query in text format

using (var connection = Factory.CreateConnection())
{
    adapter.SelectCommand.Connection = connection;
    connection.ConnectionString = DatabaseSchema.ConnectionString;
    connection.Open();

    adapter.Fill(dataTable);

    connection.Close();
}

对于第一个查询dataTable不包含任何行,对于第二个查询包含行。

在连接字符串中指定的用户是一样的,因为我使用Management Studio来进行身份验证。

为什么我得到这样的结果?

c# sql sql-server
1个回答
0
投票

不要使用字符串连接和插值查询建筑,而是使用参数化查询。你无法预见的问题,你可能会遇到(例如数据类型不匹配)。另外你的代码是受到SQL注入攻击。

Check This for more information about parameterized queries and their use cases

© www.soinside.com 2019 - 2024. All rights reserved.