A5:SQL Mk-2

開発のこと、日々のこと

SQLServer のdeclareを実行したい

ホーム フォーラム A5:SQL Mk-2掲示板 SQLServer のdeclareを実行したい

  • このトピックには2件の返信、1人の参加者があり、最後にMaruにより11ヶ月前に更新されました。
3件の投稿を表示中 - 1 - 3件目 (全3件中)
  • 投稿者
    投稿
  • #20368 返信
    Maru
    ゲスト

    いつもお世話になっております。

    掲示板のほうで検索してみたのですがヒットしなそうなので書き込ませていただきます。

    SQLServerに対して例えば以下のようなクエリを実行したい時うまく動作しないのですが、
    うまく実行する方法はありますでしょうか。

    declare @test varchar(10) = ‘test’
    begin try

    begin tran; print ‘servername:’ + @@servername + ‘(-)begin ‘ + convert(varchar,getdate(),121);
    select * from testTable where columnA = @test

    begin
    rollback tran; print ‘servername:’ + @@servername + ‘(×)rollback ‘ + convert(varchar,getdate(),121);

    end
    end try

    論理名を追加した際にA5:SQLだと物理名の右に論理名が表示されるので確認しやすくよく利用させていただいているのですが、declareで変数を宣言して実行しようとするとうまく動作させることができませんでした。

    SSMSで実行した場合問題なく実行できるのですが、方法があればご教授いただきたく。

    #20376 返信
    松原正和
    キーマスター

    Maru さんこんにちは。
     
    すみません、SQL Server のストアドプロシージャ(Transact SQL)はあまりよく知らないのですが、手元のSQL Server 2019で試したところ、末尾に

    begin catch
    end catch

    の2行を追加することでエラーなく実行できるようになりました。
     
    なお、このプロシージャは本来結果セットを返しますが、A5:SQL Mk-2で実行するとそのままでは結果セットを返しません。この場合、Ctrl+Shift+Enter で実行すると、結果セットを返す SQL であるとみなして実行することができます。

    #20378 返信
    Maru
    ゲスト

    ありがとうございます!
    確認できました。助かりました。

3件の投稿を表示中 - 1 - 3件目 (全3件中)
返信先: SQLServer のdeclareを実行したい
あなたの情報:




コメントは受け付けていません。