要在SQL Server中查看插入的数据及其列名和值吗

要在SQL Server中查看插入的数据及其列名和值吗,sql,sql-server,sql-insert,Sql,Sql Server,Sql Insert,要查看SQL Server中插入的数据及其每个列名和值,我使用存储过程进行INSERT/UPDATE,如下所示 例如,mode='insert': Insert into Employee_table(Name, Age, DOB, salary) values (@Name, @Age, @DOB, @salary) 现在我想看看: insert into Employee_table(Name, Age, DOB, salary) values ('Arun', 23, 12-12-20

要查看SQL Server中插入的数据及其每个列名和值,我使用存储过程进行
INSERT/UPDATE
,如下所示

例如,mode='insert':

Insert into Employee_table(Name, Age, DOB, salary) 
values (@Name, @Age, @DOB, @salary)
现在我想看看:

insert into Employee_table(Name, Age, DOB, salary)
values ('Arun', 23, 12-12-2016, 10000)

SQL Server直接不提供任何UI来捕获所有DML/DDL操作的实时值。但是,这可以按照如下所示进行处理

  • 使用所有DML语句创建动态查询,并在每个语句的末尾有一个Print语句(尽管这是一项繁琐的工作)
  • 登录SQL Profiler并自定义/过滤输出以跟踪SQL语句

  • 这对我来说很奇怪,但我想你可以试试:

    Insert into Employee_table(Name, Age, DOB, salary) 
    OUTPUT inserted.*
    values (@Name, @Age, @DOB, @salary)
    

    仅当存储过程实际正在运行时,这些变量才具有值和上下文。难道你不能检查一下你的表,看看是否插入了正确的记录吗?如果你想看到这一点,你必须做你自己的“参数替换”魔术,因为SQL Server将永远看不到第二个版本的
    INSERT
    -SQL Server将收到带参数的查询,还有一个参数列表和这些值,在实际的SQL代码中,
    @Age
    永远不会被
    23
    替换……感谢您的信息,欢迎光临。
    Insert into Employee_table(Name, Age, DOB, salary) 
    OUTPUT inserted.*
    values (@Name, @Age, @DOB, @salary)