2010-11-20 3 views
1

Я был на самом деле в процессе создания таблицы образца в моей тестовой базе данных, когда я как-то пропустил правильный синтаксис и пришли с этим утверждением для создания таблицы -Простой вопрос на SQL создать таблицу

CREATE TABLE A (id as INT, column1 as nvarchar(10)) 

и когда я пытался выполнить это заявление, я получил ошибку ниже -

'nvarchar' is not a recognized built-in function name. 

Altough, я обнаружил, что я не должен был использовать «в» в объявлении столбца и исправить его, я теперь интересно, почему Я получил эту ошибку только за nvarchar, а не для INT. Также почему эта ошибка вместо неправильного синтаксиса или что-то в этом роде.

Заранее спасибо.

+0

'CREATE TABLE #A (идентификатор, как INT)' само по себе даст вам другую ошибку 'Неправильный синтаксис около«)» –

ответ

4

AS используется для определения вычисленных столбцов. Поэтому SQL Server ожидает выражения здесь, и это «выглядит» как вызов функции.

Computed columns info on MSDN for SQl Server 2005

+0

Ого, это что-то новое для меня. Я всегда думал, что «как» для псевдонима. Эта концепция вычисляемых столбцов, я могу использовать ее во многих местах и ​​в моем проекте. –

Смежные вопросы