1

SQL Server から進行状況ボックスにデータを移動するための SQL スクリプトがいくつかあります。しかし、それは機能しなくなりました。

これは 9.1E では機能していましたが、10.2B へのアップグレード後に失敗します

INSERT INTO OPENQUERY(linkedserver, 'select building, unit, "unit-desc", "address" from pub."rm-unit"') 
SELECT  DISTINCT
        UPPER(ProjectCode + BuildingCode) AS building, 
        UPPER(UnitCode) as unit, 
        UPPER(UnitNumber) AS [unit-desc]
        UPPER(AddressLine) as [address]
FROM    RawUnit
WHERE   ProjectCode in ('VM')
ORDER BY building, unit

リンク サーバー "linkedserver" の OLE DB プロバイダー "MSDASQL" をアップグレードした後のエラー メッセージで、"複数ステップの OLE DB 操作でエラーが発生しました。使用可能な場合は、各 OLE DB ステータス値を確認してください。作業は行われませんでした。" というメッセージが返されました。メッセージ 7344、レベル 16、状態 1、行 1 リンク サーバー "linkedserver" の OLE DB プロバイダー "MSDASQL" は、列 "unit-desc" のため、テーブル "[MSDASQL]" に挿入できませんでした。欄に書きます。

それを機能させるには、ハイフンで列を削除します。

INSERT INTO OPENQUERY(linkedserver, 'select building, unit, "address" from pub."rm-unit"')  
SELECT  DISTINCT
        UPPER(ProjectCode + BuildingCode) AS building, 
        UPPER(UnitCode) as unit, 
        UPPER(AddressLine) as [address]
FROM    RawUnit
WHERE   ProjectCode in ('VM')
ORDER BY building, unit

これを機能させる方法を知っている人はいますか?

4

1 に答える 1

1

MSDASQL ODBC ドライバーを使用して Progress に接続していますが、DataDirect OpenEdge 10.2B ODBC ドライバーが必要です。QADを使用していますか?その場合は、QAD に連絡してください。Progress から ODBC ドライバーのみのインストーラーを入手できるはずです。そうでない場合は、Progress に直接お問い合わせください。ベンダーまたはプログレスとの契約に応じて、ドライバーの料金が請求される場合と請求されない場合があります。

于 2011-10-03T20:15:08.760 に答える