【发布时间】:2020-07-16 16:02:44
【问题描述】:
我正在尝试执行动态 sql select 语句并将结果返回给 C# ExecuteReader。
我可以使用以下 sql 代码在 sql server 中检索结果。
Create Table TestCustomer(ID Varchar(50), CustomerName Varchar(100));
Insert Into TestCustomer (ID, CustomerName) Values ('1', 'One');
Insert Into TestCustomer (ID, CustomerName) Values ('2', 'Two');
Insert Into TestCustomer (ID, CustomerName) Values ('3', 'Three');
DECLARE @SQLScript VARCHAR(MAX), @CustomerName VARCHAR(100);
SET @CustomerName = 'Two';
SET @SQLScript = 'select * from TestCustomer where CustomerName = '''+ @CustomerName +''' ';
EXEC(@SQLScript);
但是当我尝试使用以下 oracle sql 代码在 oracle 服务器上检索结果时,我没有看到表结果像 sql server 那样出来。
DECLARE
SQLScript VARCHAR2(4000);
CustomerName VARCHAR2(20) := 'Two';
BEGIN
SQLScript := 'select * from TestCustomer where CustomerName = :CustomerName';
EXECUTE IMMEDIATE SQLScript USING CustomerName;
END;
动态sql脚本执行后如何返回表格结果,以便c#获取表格结果?
【问题讨论】:
-
听起来你的问题与 C# 无关
-
@Crowcoder,如果oracle可以返回结果,C#就可以了。
-
对,所以不应该用c#标记。
-
@Crowcoder,已删除。谢谢
-
请尝试使用游标而不是立即执行,community.oracle.com/thread/702648
标签: oracle oracle-sqldeveloper