给定以下字符串之一(代表 SQL Server 中的表/视图名称):
var x = "[my-Table.request]";
var x = "[dbo].[my-Table.request]";
var x = "dbo.[my-Table.request]";
我想获取表名(通过 C# 代码):my-Table.request
有任何想法吗?我在这里错过了任何可能的陈述吗?
PARSENAME
在 TSQL 中很简单:
PARSENAME(@x, 1)
通过在 C# 中您想要的位置进行编辑,您基本上必须在 C# 中从头开始编写它,通过.
, [
,进行标记]
。AFAIK 没有预先安装的实现可以为您执行此操作。
如果您在 SQL 端执行此操作,则有一个PARSENAME
函数可以执行此操作。
例如PARSENAME(x,1)
返回对象(在本例中为表)名称。PARSENAME(x,2)
返回架构等。
您可以使用以下查询:
使用 MyDB GO SELECT * FROM sys.Tables GO
请注意: MyDB 是您的数据库名称