I would like to put a few statements into a transaction block so that, in case of any error the script rolls back. I combine a transaction with a `TRY` block like this (and note that the `INSERT` statement should through a syntax error):

```
begin try
    begin tran
    SET ANSI_NULLS ON
    SET QUOTED_IDENTIFIER ON

    CREATE TABLE [MY_DATABASE].[dbo].[MY_TABLE](
        [Id] [nchar](10) NULL,
        [Name] [nchar](10) NULL
    ) ON [PRIMARY]

    insert into [MY_DATABASE].[dbo].[MY_TABLE] (Id,Name) values ('1','Vampire'),  ('2')
    commit tran
end try
begin catch
    rollback tran
end catch

```

After running this statement, I noticed that I cannot fetch my other tables in Management Studio and that the operation is waiting for me to commit.

How can I alter my transaction-try blocks so that in case of any error, we rollback to where we were before the `begin try` statement?