次のいずれかの文字列 (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# で最初から記述し、 , , でトークン化する必要が.
あり[
ます]
。私の知る限り、これを行う事前に用意された実装はありません。
SQL 側でこれを行っている場合、PARSENAME
まさにそれを行うための関数があります。
たとえばPARSENAME(x,1)
、オブジェクト (この場合はテーブル) 名を返します。PARSENAME(x,2)
スキーマなどを返します。
以下のクエリを使用できます。
USE MyDB GO SELECT * FROM sys.Tables GO
注意: MyDB はデータベース名です