1

BEGIN/END は SQL スクリプトで (一般的に) 必要ですか、それとも { と } に置き換えても問題ありませんか

例:

IF DB_ID('comics') IS NOT NULL        
    BEGIN
        PRINT 'Database exists - dropping the comics database.';
        DROP DATABASE comics;
    END

VS

IF DB_ID('comics') IS NOT NULL        
{
    PRINT 'Database exists - dropping the comics database.';
    DROP DATABASE comics;
}

MS SQL Server 2008 R2 を使用しています

4

3 に答える 3

2

IF...ELSEショーのドキュメント:

IF Boolean_expression 
     { sql_statement | statement_block } 
[ ELSE 
     { sql_statement | statement_block } ] 

ただし、Transact-SQL構文規則(Transact-SQL)ページには次のように表示されます。

{ } (braces)    Required syntax items. Do not type the braces.

したがって、中かっこはコードに入力できるものではなく、ステートメントに1つ sql_statementだけ存在するかstatement_block必須であることを示しているだけです。IF(もちろん、使用している限り、astatement_blockには複数のsを含めることができます。)sql_statementBEGINEND

于 2012-05-12T04:31:08.167 に答える
2

BEGIN...ENDfor ステートメント ブロックを使用する必要があります。ソース

于 2012-05-12T04:26:12.533 に答える
1

SQLの{}について聞いたことがありません。SQL92仕様はBEGINENDを使用します。BEGINENDが唯一の選択肢だと思います。

于 2012-05-12T04:29:59.207 に答える