2016-04-22 2 views
3

Я пытаюсь выполнить запрос вставки с использованием метамодели Apache в базе данных sql-сервера. Где запрос вставки содержит имя столбца с косой чертой (/) в нем, например, col4a/col4b»и запрос будет создан метамодели, какПрямая косая черта в имени столбца, выбирая неправильный синтаксис «/»

INSERT INTO dbo."table1" (col1,"col2 Type",col3,col4a/col4b) VALUES ('value1','value2','value3','value4')

Когда я выполняю это заявление код выдает ошибку incorrect syntax near '/'.

Может ли кто-нибудь предложить мне решение избежать специального символа, например/в имени моей колонки.

ответ

3

Правильный способ обработки столбцов с плохой именованием в sql-сервере с квадратными скобками [].

INSERT INTO dbo.table1 
(
    col1 
    , [col2 Type] 
    , col3 
    , [col4a/col4b] 
) 
VALUES 
(
    'value1' 
    , 'value2' 
    , 'value3' 
    , 'value4' 
) 
+0

Стандартные двойные кавычки SQL Standard обычно также работают с SQL Server (может потребоваться опция для включения). –

+0

Я уже пробовал, он отлично работает в sql-сервере ui, но я не могу реализовать через код, потому что метамодель apache не идентифицирует столбец и дает ошибку, поскольку [col2 Type] - нет такого столбца в таблице. – Geetanjali

+0

Можно ли переименовать ваши столбцы? Пробелы и другие символы не должны использоваться в именах столбцов. –

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