View Issue Details
| ID | Project | Category | View Status | Date Submitted | Last Update |
|---|---|---|---|---|---|
| 0002854 | SAS.Планета | Баг / Bug | public | 13-10-2015 19:35 | 14-10-2015 12:59 |
| Reporter | sheavy | Assigned To | zed | ||
| Priority | normal | Severity | minor | Reproducibility | always |
| Status | resolved | Resolution | fixed | ||
| Platform | Windows | OS | 7 | OS Version | Professional |
| Product Version | 151010 | ||||
| Target Version | 151111 | Fixed in Version | 151111 | ||
| Summary | 0002854: Работа с Microsoft SQL через ODBC | ||||
| Description | Не могу настроить работу с Microsoft SQL 2008 R2 через ODBC. (с Posgres SQL проблем нет) Сначала САС-Планета ругалась что не может создать поле uName в таблице User. Как ругалась, см. ниже Не вопрос - создал ей таблицу User и поле uName (см. ниже): После этого программа создала стуктуру таблиц, но возникла другая ошибка: EMarkSystemORMError: MarkSystemORM: ID is empty!. Не уверен до конца, баг ли это. Может быть нужны дополнительные параметры в строке подключения (connection string). Есть у кого-то идеи как быть? (использовать MongoDB, PosgtreSQL, MySQL пожалуйста, не предлагайте - нужно запустить на MS SQL) Спасибо если кто напишет как быть | ||||
| Additional Information | Ругалась на отсутсвие поля так: Error SQLITE_ERROR (1) using 3.8.11.1 - 'TSQLRestStorageExternal.Create: TSQLUser: unable to create external missing field dbo.User.uName - SQL="ALTER TABLE dbo.User ADD uName nvarchar(max)"' extended_errcode=1. Создавал ей таблицу User и поле uName так: CREATE TABLE [dbo].[User]( [uid] [int] NOT NULL, [uName] [nvarchar](max) NULL, CONSTRAINT [PK_User] PRIMARY KEY CLUSTERED ( [uid] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY] Использованные ODBC драйвера: - SQL Server - ODBC Driver 11 for SQL Server ODBC connection string: Driver=ODBC Driver 11 for SQL Server; Server=xx.xx.xx.xx; Database=SASPlanet; имя пользователя и пароль указывал в соответствующих полях. Версия САС: .Nightly.150928.9102 | ||||
| Tags | БД, СУБД, метки | ||||
|
|
Поставлю завтра себе этот сервер и посмотрю, в чём там затык. Сильно помежет, если вы подскажете с какими настройками вы создавали БД. А пока попробуйте вот эту версию с логами, возможно там будет что-то полезное и более информативное: https://yadi.sk/d/pd35FbGUjiVfP И ещё, пробуйте соединяться не через connection string, а через odbc имя (или как это правильно называется), т.е. все настройки вбивайте в винде. Вероятная проблема с полем uName, это то, что это текст в UTF-8 кодировке и во что ORM хочет замапить это поле в случае с MS SQL мне не известно, надо дебажить. |
|
|
Мда, проблема в конфликте имён - User зарезервированное слово в MS SQL и в обоих случаях (и при создании таблицы и при обращении к ней) сервер ругается одинаково: > Неправильный синтаксис около ключевого слова \"User\". (156) > Не удалось выполнить подготовку инструкций. (8180) Надо переименовывать таблицу... |
|
|
Пофиксил, в следующей ночнушке должно завестись и на MS SQL. |
| Date Modified | Username | Field | Change |
|---|---|---|---|
| 13-10-2015 19:35 | sheavy | New Issue | |
| 13-10-2015 20:56 | zed | Note Added: 0016565 | |
| 14-10-2015 11:40 | zed | Note Added: 0016566 | |
| 14-10-2015 12:57 | zed | Note Added: 0016567 | |
| 14-10-2015 12:57 | zed | Status | new => resolved |
| 14-10-2015 12:57 | zed | Fixed in Version | => 151111 |
| 14-10-2015 12:57 | zed | Resolution | open => fixed |
| 14-10-2015 12:57 | zed | Assigned To | => zed |
| 14-10-2015 12:58 | zed | Product Version | => 151010 |
| 14-10-2015 12:58 | zed | Target Version | => 151111 |
| 14-10-2015 12:58 | zed | Description Updated | |
| 14-10-2015 12:58 | zed | Additional Information Updated | |
| 14-10-2015 12:59 | zed | Tag Attached: БД | |
| 14-10-2015 12:59 | zed | Tag Attached: метки | |
| 14-10-2015 12:59 | zed | Tag Attached: СУБД | |
| 08-08-2025 13:22 | zed | Category | Баг => Баг / Bug |