0
ここでの目的は、別のサーバーから特定の値を読み取って、後で使用するためにローカルパラメーターに戻り値を格納することです。SQL ServerでOpenrowsetを使用して特定の値を読み取る2016
メッセージ102、レベル15、状態1、行3
'アラーム' の近くに不正な構文は次のとおりです。ここではエラーコードです。ここで
私が試してみましたコードです:
declare @sql_string nvarchar(400);
declare @inhostnamn nvarchar(100) = 'BLUE65\SQLEXPRESS'
declare @inuser nvarchar(50) = 'dev1'
declare @password1 nvarchar(50) = 'dev1'
declare @database nvarchar(100) = 'Test_destroy'
declare @count_posts varchar(10)
declare @tabellnamn varchar(50) = 'Alarms'
declare @last_read_alarm varchar(30)
set @tabellnamn = 'Logg'
set @sql_string = N'set @last_read_alarm1 = cast(last_read as nvarchar(30)) select * from openrowset (''SQLNCLI'', ''Server='[email protected]+';UID='[email protected]+';Pwd='[email protected]+';Database='[email protected]+';Persist Security Info=True'',''select Last_ID FROM '[email protected] +'.dbo.Logg where Tables_sql=''Alarm'' '')';
print 'string =' + @sql_string;
exec sp_executesql @sql_string, N'@last_read_alarm1 varchar(30) OUTPUT', @[email protected]_read_alarm OUTPUT;
select @last_read_alarm
print @last_read_alarm;
今、私はこだわっていますが。私は、私が作ったエラーを見ることができず、いくつかの異なる目を望んでいます。
[リンクされたサーバー](https://docs.microsoft.com/en-us/sql/relational-databases/linked-servers/create-linked-servers-sql-server-database-engine)を使用しないでください。 ? –
はい私はリンクされたサーバーを使用できますが、私はSQLを勉強しており、私の目には構文がOKであると思われるので、私が作った構文エラーを理解していません。 –
Ok。 'Alarm'の両側にさらに2つの引用符を追加します。これは '' 'Alarm' '' ''のようになります。 –