Я использую SQSH (версия 2.1) в Ubuntu 10.04 для подключения к базе данных MSSQL с помощью такой команды:
sqsh -S server -U user -P password -D database
У меня есть таблица My Table, но я не могу найти способ выполнить запрос SELECT. Это то, что я пробовал до сих пор:
SELECT * FROM 'My Table'
go
Вывод: неверный синтаксис рядом с «Моей таблицей». (Я получаю то же самое для двойных кавычек)
\set t="My Table"
SELECT * FROM $t
go
Вывод: недопустимое имя объекта «Мой». (Что странно, потому что если я сделаю \ echo $ t, я получу полное имя таблицы)
SELECT * FROM My\\ Table
go
Вывод: недопустимое имя объекта «Мой».
SELECT * FROM [My Table]
go
Вывод: данные Unicode в сопоставлении только для Unicode или данные ntext не могут быть отправлены клиентам с использованием DB-Library (например, ISQL) или ODBC версии 3.7 или более ранней.
Эта последняя команда отлично работает для имен таблиц без пробелов.
ОБНОВЛЕНИЕ: другие команды работают нормально, например Я могу получить описание таблицы с:
SELECT column_name,data_type FROM information_schema.columns WHERE table_name = 'My Table'
go