存储过程sp_who
时间: 2023-08-06 22:04:04 浏览: 48
存储过程 `sp_who` 是一个用于查看当前数据库连接信息的系统存储过程。它返回一个结果集,包含有关当前活动连接的详细信息,如登录名、会话ID、数据库名称、命令执行情况等。
以下是一个示例的 `sp_who` 存储过程的使用方法:
```sql
EXEC sp_who
```
执行上述代码后,将返回一个结果集,包含当前连接的详细信息。
请注意,`sp_who` 存储过程可能在不同的数据库管理系统中具有不同的实现方式和参数选项。上述示例适用于 Microsoft SQL Server 数据库。如果您使用的是其他数据库管理系统,请参考相应的文档或手册以获得正确的使用方法。
相关问题
exec sp_who_lock
`sp_who_lock` 是一个系统存储过程,可用于查看当前正在 SQL Server 实例中等待锁的会话和锁信息。要使用 `sp_who_lock`,可以执行以下步骤:
1. 打开 SQL Server Management Studio (SSMS)。
2. 在查询窗口中输入以下命令:
```
EXEC sp_who_lock
```
3. 执行查询。
4. 等待一段时间,直到查询返回结果。查询结果将包含等待锁的会话的信息,以及这些会话正在等待的锁的类型和资源信息。例如,以下是 `sp_who_lock` 返回的示例结果:
```
spid dbid ObjId IndId Type Resource Mode Status
----- ----- ---------- ------ ----- --------- ----- ------
55 10 0x01C00001 0 KEY (68656c70) X WAIT
56 10 0x01C00001 0 KEY (68656c70) X GRANT
```
5. 可以根据需要对查询结果进行筛选和排序,以便更好地理解正在等待锁的会话和锁的信息。
注意:使用 `sp_who_lock` 可能会对 SQL Server 的性能产生一定的影响,因此在不需要时应该避免使用。此外,为了使用 `sp_who_lock`,需要具有足够的权限。
过程 sp_addextendedproperty
`sp_addextendedproperty` 是 SQL Server 中的一个系统存储过程,用于向数据库、表格、列或其他数据库对象添加扩展属性。它的语法如下:
```sql
sp_addextendedproperty
[@name =] 'property_name',
[@value =] 'property_value',
[@level0type =] 'level0_object_type',
[@level0name =] 'level0_object_name',
[@level1type =] 'level1_object_type',
[@level1name =] 'level1_object_name',
[@level2type =] 'level2_object_type',
[@level2name =] 'level2_object_name'
```
其中,`@name` 和 `@value` 参数分别指定要添加的属性名称和属性值。`@level0type`、`@level0name`、`@level1type`、`@level1name`、`@level2type`、`@level2name` 参数用于指定要添加属性的对象及其级别。例如,要向表格 `dbo.mytable` 添加一个名为 `description` 的属性,可以使用以下命令:
```sql
EXEC sp_addextendedproperty
@name = N'description',
@value = N'This is my table',
@level0type = N'Schema',
@level0name = N'dbo',
@level1type = N'Table',
@level1name = N'mytable';
```
这将在 `dbo.mytable` 表格上添加一个名为 `description` 的属性,属性值为 `This is my table`。