Web アプリでクエリ エンジンを作成する必要があります。達成する必要があるのは、ユーザーが任意のSELECT
ステートメントをテキスト ボックスに入力し、結果を新しいテーブルに作成する必要があることです。
これは私が作成した関数ですが、SQL Server 2012 のみをサポートしています。この関数と同様の機能が必要ですが、SQL Server 2005 以降をサポートする必要があります。
CREATE FUNCTION [dbo].[CustomQueryTableCreation]
(
@TableName varchar(max),
@sql NVARCHAR(MAX)
)
RETURNS
@TableBuilder TABLE
(
DS varchar(max)
)
BEGIN
INSERT INTO @TableBuilder
SELECT 'CREATE TABLE dbo.' + @TableName+'(';
INSERT INTO @TableBuilder
SELECT
CASE column_ordinal
WHEN 1 THEN '' ELSE ',' END
+ name + ' ' + system_type_name + CASE is_nullable
WHEN 0 THEN ' not null' ELSE '' END
FROM
sys.dm_exec_describe_first_result_set
(
@sql, NULL, 0
) AS f
ORDER BY
column_ordinal;
INSERT INTO @TableBuilder
SELECT ');';
RETURN
END
私が今やりたいことは、クエリを検索して FIRSTFROM
をに置き換えたいということですINTO NewTable FROM
。
クエリには複数の結合を含めることができます。
これを SQL または C# で制御する必要がありますか?