sql - 结果未显示,仅显示“命令已成功完成”
问题描述
我最近开始研究 TSQL 中的存储过程,我正在使用 SSMS 2018。当我执行我处理的前两个存储过程时,结果仍然显示。
但是,不久之后,消息窗口只显示“命令已成功完成”,但不再显示结果。
请参见下面的代码:
USE ALEX_DB --my database name
GO
IF OBJECT_ID ('dbo.practice', 'P') IS NOT NULL --Identifies if there is an existing procedure
DROP PROCEDURE dbo.practice; --Drops if procedure exists
GO
CREATE PROCEDURE dbo.practice
AS
SELECT
CONVERT(VARCHAR, TSM.TXN_DATE, 1) AS 'Transaction Date',
TCA.FIRST_NAME + ' ' + TCA.LAST_NAME AS 'Customer',
TSM.CUST_ID AS 'Customer ID',
TSM.TXN_NO AS 'Reference No.'
FROM TXN_SALES_MAST AS TSM
INNER JOIN TXN_CUST_ACCT AS TCA ON TCA.CUST_ID = TSM.CUST_ID
EXECUTE dbo.practice
当我自己运行 SELECT 语句时,它不在存储过程中,它会将结果显示到网格中。但是,当我尝试执行存储过程时,SSMS 不再显示任何结果。
解决方案
GO
在create procedure
块后添加
USE ALEX_DB --my database name
GO
IF OBJECT_ID ('dbo.practice', 'P') IS NOT NULL --Identifies if there is an existing procedure
DROP PROCEDURE dbo.practice; --Drops if procedure exists
GO
CREATE PROCEDURE dbo.practice
AS
SELECT
CONVERT(VARCHAR, TSM.TXN_DATE, 1) AS 'Transaction Date',
TCA.FIRST_NAME + ' ' + TCA.LAST_NAME AS 'Customer',
TSM.CUST_ID AS 'Customer ID',
TSM.TXN_NO AS 'Reference No.'
FROM TXN_SALES_MAST AS TSM
INNER JOIN TXN_CUST_ACCT AS TCA ON TCA.CUST_ID = TSM.CUST_ID
GO -- here
EXECUTE dbo.practice
推荐阅读
- javascript - 将 Javascript Promise 放入函数中
- arrays - String incrementer codewars (Ruby) 问题
- c++ - 通过网络传递 std::variant 是否安全,跨平台
- c - 警告:取消引用 'void *' 指针 [默认启用] 和错误:没有忽略 void 值,因为它应该是帮助 c
- python - 1:1 替换已弃用的 time.clock()
- python - 如何在pygame中显示图片?
- javascript - 为什么 jQuery 在 IE 和 Edge 中不起作用?
- antlr - 如何让antlr找到无效输入抛出异常
- pandas - dask - CSV 时间序列操作
- module - OCaml 模块中的私有值?