SQL Server 用SSMS查看依赖关系有时候不准确,改用代码查

SQL Server 用SSMS查看依赖关系有时候不准确,明明某个sp中有用到表tohen,查看表tohen的依赖关系的时候,却看不到这个sp

用代码查看方式如下:

--依赖于表tohen的对象
SELECT * FROM sys.dm_sql_referencing_entities('dbo.tohen','OBJECT')
--存储过程sp_tohen依赖的对象
SELECT distinct referenced_entity_name FROM sys.dm_sql_referenced_entities('dbo.sp_tohen','OBJECT')

--查看所有对象的依赖关系
SELECT o.name, o.type_desc, p.name as referenced_name, p.type_desc type_desc2 
FROM sys.sql_expression_dependencies d
INNER JOIN sys.objects o ON d.referencing_id = o.object_id
INNER JOIN sys.objects p ON d.referenced_id = p.object_id

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
如果你是在 SSMSSQL Server 数据库时出现了中文乱码,可以尝试修改 SSMS 的默认编码。具体操作如下: 1. 打开 SSMS,进入菜单栏的“工具”-“选项”。 2. 在弹出的“选项”窗口中,选择“环境”-“国际设置”。 3. 将“默认编码”设置为“UTF-8”或“65001”。 4. 点击“确定”按钮保存设置,关闭窗口。 5. 重新连接数据库,询数据,查看是否能够正常显示中文。 如果修改 SSMS 的默认编码无法解决问题,你可以尝试在询数据时,使用 `CAST` 函数将询结果中的中文转换为 UTF-8 编码,例如: ``` SELECT CAST(your_column AS VARBINARY(MAX)) FROM your_table ``` 这样可以将询结果中的中文转换为二进制数据,再使用 Python 中的 `decode()` 方法进行解码,例如: ``` import pyodbc import json # 建立数据库连接 cnxn = pyodbc.connect("DRIVER={SQL Server};SERVER=your_server;DATABASE=your_database;UID=your_username;PWD=your_password") # 询数据 cursor = cnxn.cursor() query = "SELECT CAST(your_column AS VARBINARY(MAX)) FROM your_table" cursor.execute(query) # 将询结果转换为 JSON 格式 result = [] for row in cursor: row_dict = {} row_dict["your_column"] = row[0].decode('utf-8') result.append(row_dict) json_data = json.dumps(result, ensure_ascii=False) # 关闭数据库连接 cursor.close() cnxn.close() # 输出 JSON 数据 print(json_data) ``` 这里的 `your_column` 是询结果中的中文字段名。将其转换为二进制数据后,使用 `decode()` 方法将其解码为 UTF-8 编码,再将结果转换为 JSON 格式,就可以正常显示中文了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值