Web design and hosting, database, cloud and social media solutions that deliver business results
  • ビジネスソリューション
    • データベースサービス
      • サーバーのアップグレードと DBA サービス
      • データウェアハウス サービス
      • データ統合
      • パワーBI
    • ウェブサイトデザイン
      • Web サイトのセキュリティ
      • Web サイトの最適化
      • ロゴデザイン
      • 支払いゲートウェイ
      • テクニカルツール
    • ビジネスサービス
      • Google クラウド サービス
      • アマゾン ウェブ サービス
      • マイクロソフト アズール
    • ソーシャルメディア
    • マイクロソフトオフィス
  • 学校
    • テスト環境
    • 学習データベース
      • 基礎
      • SQL Serverデータ
      • SQLServerのメンテナンス
      • SQL Serverの日付の使用
      • SQLServerピボットの使用-ピボット解除
      • SQLServer関数の使用
      • オープンクエリを取得
      • ツール
    • ウェブデザインを学ぶ
      • Ousia コンテンツ管理システムの構築
      • ASP-NET の使用
      • CSS の使用
      • JavaScript の使用
    • クラウドと IT サービスの学習
      • タスク スケジューラ エラー 2147943645
      • OpenSSL での SSL の要求と PFX ファイルの生成の簡単な手順
    • ソーシャル メディアの使用
      • Facebookアカウントを個人用からビジネス用に変更する
      • Google レビューを依頼する
      • ソーシャル メディアの取り組みをどこに集中させるかを選択する
      • ソーシャル メディアの画像サイズ
      • メタ データを使用してソーシャル メディア画像を設定する
  • 私たちに関しては
    • ブログ
      • Google コア アップデート 2020 年 1 月
      • インターネット上のウェブサイトに関する最も厄介なこと
      • ウェブサイトの広告リーフレットのコンテンツを選択する方法
      • エントリーレベルのゲーム機の構築
      • オンライン詐欺の防止
      • ギグエコノミーのスキマー
      • ホットチリインターネット閉鎖
      • 無料のベクター グラフィックスのトップ 5 Web サイト
    • キャリア
      • 翻訳者 英日
      • 英語-トルコ語翻訳者
    • チーム
      • アイセ・ハー
      • アリ アル アミン
      • ギャビン・クレイトン
      • サイガングー
      • スーリヤ・ムッカマラ
      • スニール・クマール
      • チェスターコッパーポット
    • ポートフォリオ
Deutsch (DE)English (EN-US)English (EN-GB)Español (ES)Français (FR)हिंदी (HI)italiano (IT)日本語 (JA)

MS SQL Server で Open Query を自動化する

このテーブルと一連のストアド プロシージャを使用すると、Oracle および Progress データベースから SQL Server へのデータ転送を自動化できます。

Get Open クエリ モジュールの作成

テーブル、ストアド プロシージャ、リンク サーバー オブジェクト、およびジョブを作成するための知識と権限があることを前提としています。これがないと、サポートできない問題が発生する可能性があります。

これを実行するときは、共有機能と保守オブジェクトを保持するユーティリティ タイプのデータベースに配置する傾向があります。

最初のタスクは、すべてのデータ フローを管理するためのマスター テーブルを作成することです。いくつかの列を監視する必要があります。

  • GetOpenQueryStream - これは、一連のテーブルをバッチ処理できるようにする整数フィールドであり、列 GetOpenQueryOrder で設定された順序で実行されます
  • GetOpenQueryName - コードを変更していない限り、GetOpenQuery_Progress または GetOpenQuery_Oracle のいずれかになります。
  • GetOpenQueryLinkServ - サーバー オブジェクトで設定する必要があるリンク サーバー名です。
  • GetOpenQuerySourceSchema - ソース データベース スキーマです
  • GetOpenQueryDatabase、GetOpenQuerySchema、GetOpenQueryTable は、データのコピー先を設定する 3 つの部分の識別子を形成します。
  • WHERE、INNER、および TOP ステートメントを追加できます
  • GetOpenQuerySkipCols - インポート時にテーブルから列を削除します。

Create Table

CREATE TABLE dbo.GetOpenQuery(
GetOpenQueryID int IDENTITY(1,1) NOT NULL,GetOpenQueryStream int NULL,GetOpenQueryName nvarchar(100) NULL,GetOpenQueryLinkServ nvarchar(100) NULL,GetOpenQueryDatabase nvarchar(100) NULL,GetOpenQuerySchema nvarchar(max) NULL,GetOpenQueryTable nvarchar(100) NULL,GetOpenQueryWHERE nvarchar(1000) NULL,GetOpenQueryTOP nvarchar(100) NULL,GetOpenQuerySourceSchema nvarchar(100) NULL,GetOpenQuerySkipCols nvarchar(max) NULL,GetOpenQueryINNER nvarchar(max) NULL,GetOpenQuerySkipTruncate bit NULL DEFAULT ((0)),GetOpenQueryOrder bit NULL DEFAULT ((0)))

ハブ

その後、ジョブをフックしてストリーム ID を渡し、このストアド プロシージャを介して関連するテーブルをループすることができます。これは上記の表をループし、Oracle または Progress リンク サーバーの関連コードを起動します。

これは、他のすべてのジョブを呼び出すことができるハブになります。

Create Stored Procedure

CREATE PROC [dbo].[GetOpenQuery_Data](@Stream INT) AS BEGINDECLARE @GetOpenQueryName NVARCHAR(100),@GetOpenQueryLinkServ NVARCHAR(100),@GetOpenQueryDatabase NVARCHAR(100),@GetOpenQuerySchema NVARCHAR(MAX),@GetOpenQueryTable NVARCHAR(100),@GetOpenQueryWHERE NVARCHAR(1000),@GetOpenQueryTOP NVARCHAR(100),@SrcScheme NVARCHAR(100),@SkipCols NVARCHAR(MAX),@GetOpenQueryINNER NVARCHAR(MAX),@GetOpenQuerySkipTruncate BIT DECLARE @SQL NVARCHAR(MAX),@SQLRows BIGINT,@SQLRowCount BIGINT,@SQLOutPut NVARCHAR(100)='@SQLRows BIGINT' DECLARE C CURSOR FAST_FORWARD FORSELECTGetOpenQueryName, GetOpenQueryLinkServ, GetOpenQueryDatabase, GetOpenQuerySchema, GetOpenQueryTable,GetOpenQueryWHERE, GetOpenQueryTOP, GetOpenQuerySourceSchema, GetOpenQuerySkipCols, GetOpenQueryINNER, GetOpenQuerySkipTruncateFROM GetOpenQueryWHERE GetOpenQueryStream=@StreamORDER BY GetOpenQueryOrderOPEN CFETCH NEXT FROM CINTO @GetOpenQueryName,@GetOpenQueryLinkServ,@GetOpenQueryDatabase,@GetOpenQuerySchema,@GetOpenQueryTable,@GetOpenQueryWHERE,@GetOpenQueryTOP,@SrcScheme,@SkipCols,@GetOpenQueryINNER,@GetOpenQuerySkipTruncateWHILE @@FETCH_STATUS = 0 BEGIN       BEGIN TRY       SET @SQL='EXEC '+@GetOpenQueryName+' '''+       @GetOpenQueryLinkServ+''','''+       @GetOpenQueryDatabase+''','''+       @GetOpenQuerySchema+''','''+       @GetOpenQueryTable+''','+       ISNULL(NULLIF(''''+@GetOpenQueryWHERE+'''',''),'NULL')+','+       ISNULL(NULLIF(@GetOpenQueryTOP,''),'NULL')+','+       ISNULL(NULLIF(@SrcScheme,''),'NULL')+','+       ISNULL(NULLIF(''''+@SkipCols+'''',''),'NULL')+','+       ISNULL(NULLIF(''''+@GetOpenQueryINNER+'''',''),'NULL')+','+(CASE WHEN @GetOpenQuerySkipTruncate=1 THEN '1' ELSE '0' END)       EXEC sp_executesql @SQL       SET @SQLRows=@@ROWCOUNT       SELECT @SQLRows       END TRY       BEGIN CATCH        PRINT @GetOpenQueryLinkServ+'; Table '+@GetOpenQueryTable+' Failed'       END CATCH       PRINT @SQL       FETCH NEXT FROM C       INTO @GetOpenQueryName,@GetOpenQueryLinkServ,@GetOpenQueryDatabase,@GetOpenQuerySchema,@GetOpenQueryTable,       @GetOpenQueryWHERE,@GetOpenQueryTOP,@SrcScheme,@SkipCols,@GetOpenQueryINNER,@GetOpenQuerySkipTruncateEND CLOSE C;DEALLOCATE C;ENDGO

ジョブの呼び出し方法

これらのステップが作成されたので、残りの SPROC を組み込み、 OracleとProgressの両方を処理できます。

ストリーム 1 を起動するには、次のコードで SQL エージェント ジョブを作成します。

EXEC ユーティリティ.dbo.GetOpenQuery_Data 1

Author

Please note, this commenting system is still in final testing.
Copyright Claytabase Ltd 2020

Registered in England and Wales 08985867

RSSLoginLink クッキーポリシーサイトマップ

Social Media

facebook.com/Claytabaseinstagram.com/claytabase/twitter.com/Claytabaselinkedin.com/company/claytabase-ltd

Get in Touch

+442392064871info@claytabase.comClaytabase Ltd, Unit 3d, Rink Road Industrial Estate, PO33 2LT, United Kingdom
The settings on this site are set to allow all cookies. These can be changed on our Cookie Policy & Settings page.
By continuing to use this site you agree to the use of cookies.
Ousia Logo
Logout
Ousia CMS Loader