データベースが複数あるSQL Server 2008 R2インスタンスがあります。キーワード 'current_timestamp'の近くの構文が正しくありません - ただし、1つのデータベースのみ
私は、入力として日付をとり、関連情報のテーブルを返すデータベースの1つ(DB1と呼ぶ)でテーブル値付き関数を実行しようとしています。
私のような私のクエリを実行します。
SELECT * FROM dbo.getAllStatusesForGridProjectsByMaximumDate(CURRENT_TIMESTAMP)
ほとんどのアップに最新の情報を取得します。結果テーブルの代わりに、しかし、SQLだけでエラーを蹴る:
を:しかし奇妙な何Msg 156, Level 15, State 1, Line 1
Incorrect syntax near the keyword 'CURRENT_TIMESTAMP'.
は、私は別のデータベース(DB2)にホップ、具体的にサーバーを参照しながら機能を実行する場合、それが実行されるということです
USE DB2
GO
SELECT * FROM DB1.dbo.getAllStatusesForGridProjectsByMaximumDate(CURRENT_TIMESTAMP)
結果が返されます。
USE DB1
GO
SELECT * FROM DB1.dbo.getAllStatusesForGridProjectsByMaximumDate(CURRENT_TIMESTAMP)
Msg 156, Level 15, State 1, Line 1
Incorrect syntax near the keyword 'CURRENT_TIMESTAMP'.
私は私がすることを逃した設定やプロパティのいくつかの並べ替えがありますかどうかを確認するために、データベースを通じて見てきた:私がしようとするとDB1のオフクエリを実行する場合は、しかし、それはその同じ不適切な構文エラーをバックキック私はテーブル値関数にCURRENT_TIMESTAMPを渡して何も見つけられませんでした。 CURRENT_TIMESTAMPの明示的なCAST/CONVERTを試みましたが、そこにはどんな種類の関数も好きではありません。
DB1で実行されていないdbo.Function(Current_Timestamp)を実行するために、私のDB2に実行された魔法はどのようなものですか?私は自分でチェックを続けようとしていますが、素敵な人々が送ることができるどんな助けも大歓迎です。
だから...私たちは今、親友になれますか? – RockiesMagicNumber
もちろん。他の誰かが同じ問題で苦労しているのを見ると、それを前払いするだけです。 :-) –
真剣に考えても、私はDBAの役割(中小企業、皆さんはその話を聞いたことがあります)に投げ込まれてしまったので、他のものが壊れたときにこれらのことすべてを学ばなければなりません。互換性レベルは、DB1が80、DB2が90となっていたので、私が必要としていただけのものでした。互換性レベルをもっと研究するつもりです。私はこれまでのことを理解しています。入力。 – RockiesMagicNumber