Ошибка субд не удалось найти объект

I have a database and have a Sql script to add some fields to a table called «Products» in the database.

But when i am executing this script, I am getting the following error:

Cannot find the object "Products" because it does not exist or you do not have permissions

Why is the error occurring and what should I do to resolve it?

live-love's user avatar

live-love

47.8k22 gold badges234 silver badges201 bronze badges

asked Jul 16, 2009 at 10:09

Embedd_0913's user avatar

Embedd_0913Embedd_0913

16.1k37 gold badges97 silver badges135 bronze badges

3

I found a reason why this would happen. The user had the appropriate permissions, but the stored procedure included a TRUNCATE statement:

TRUNCATE TableName

Since TRUNCATE deletes items without logging, you (apparently) need elevated permissions to execute a stored procedure that contains it. We changed the statement to:

DELETE FROM TableName

…and the error went away!

Milo's user avatar

Milo

3,3459 gold badges29 silver badges44 bronze badges

answered Aug 15, 2013 at 15:13

Kevin Moloney's user avatar

6

Are you sure that you are executing the script against the correct database? In SQL Server Management studio you can change the database you are running the query against in a drop-down box on one of the toolbars, or you can start your query with this:

USE SomeDatabase

answered Jul 16, 2009 at 10:27

Justin's user avatar

JustinJustin

84.4k49 gold badges222 silver badges363 bronze badges

1

It can also happen due to a typo in referencing a table such as [dbo.Product] instead of [dbo].[Product].

answered Dec 16, 2015 at 11:30

ayorgo's user avatar

ayorgoayorgo

2,7731 gold badge25 silver badges35 bronze badges

1

Does the user you’re executing this script under even see that table??

select top 1 * from products

Do you get any output for this??

If yes: does this user have the permission to modify the table, i.e. execute DDL scripts like ALTER TABLE etc.? Typically, regular users don’t have this elevated permissions.

Janis S.'s user avatar

Janis S.

2,50821 silver badges32 bronze badges

answered Jul 16, 2009 at 10:39

marc_s's user avatar

marc_smarc_s

729k174 gold badges1327 silver badges1455 bronze badges

Look for any DDL operation in the script.
Maybe the user does not have access rights to run changes.

In my case it was SET IDENTITY_INSERT tblTableName ON

You can either add db_ddladmin for the whole database or for just the table to solve this issue (or change the script)

-- give the non-ddladmin user INSERT/SELECT as well as ALTER:
GRANT ALTER, INSERT, SELECT ON dbo.tblTableName TO user_name;

answered Jul 14, 2020 at 10:22

Crick3t's user avatar

Crick3tCrick3t

9911 gold badge13 silver badges23 bronze badges

It could also be possible that you have created the «Products» in your login schema and you were trying to execute the same in a different schema (probably dbo)

Steps to resolve this issue

1)open the management studio
2) Locate the object in the explorer and identify the schema under which your object is? ( it is the text before your object name ). In the image below its the «dbo» and my object name is action status

highlighted part is schema name

if you see it like «yourcompanydoaminyourloginid» then you should
you can modify the permission on that specific schema and not any other schema.

you may refer to «Ownership and User-Schema Separation in SQL Server»

answered Dec 4, 2015 at 10:10

Ram's user avatar

RamRam

15.7k4 gold badges48 silver badges41 bronze badges

1

I’ve been trying to copy a table from PROD to DEV but get an error:
«Cannot find the object X because it does not exist or you do not have permissions.»

However, the table did exist, and I was running as sa so I did have permissions.

The problem was actually with CONTRAINTS. I’d renamed the table on DEV to be old_XXX months ago. But when I tried to copy the original one over from PROD, the Defaut Constraint names clashed.

The error message was misleading

answered Jul 2, 2017 at 23:24

John Hunter's user avatar

2

You can right click the procedure, choose properties and see which permissions are granted to your login ID. You can then manually check off the «Execute» and alter permission for the proc.

Or to script this it would be:

GRANT EXECUTE ON OBJECT::dbo.[PROCNAME]
    TO [ServerInstanceuser];

GRANT ALTER ON OBJECT::dbo.[PROCNAME]
    TO [ServerInstanceuser];

Nikolay Kostov's user avatar

answered Jun 13, 2013 at 16:13

Aaron Schurg's user avatar

1

This could be a permission issue. The user needs at least ALTER permission to truncate a table.
Another option is to call DELETE FROM instead of TRUNCATE TABLE, but this operation is slower because it writes to the Log file, whereas TRUNCATE does not write to the log file.

The minimum permission required is ALTER on table_name. TRUNCATE TABLE
permissions default to the table owner, members of the sysadmin fixed
server role, and the db_owner and db_ddladmin fixed database roles,
and are not transferable. However, you can incorporate the TRUNCATE
TABLE statement within a module, such as a stored procedure, and grant
appropriate permissions to the module using the EXECUTE AS clause.

Leniel Maccaferri's user avatar

answered Jun 7, 2019 at 18:57

live-love's user avatar

live-lovelive-love

47.8k22 gold badges234 silver badges201 bronze badges

Sharing my case, hope that will help.

In my situation inside MY_PROJ.Database->MY_PROJ.Database.sqlproj I had to put this:

<Build Include="dboTablesMyTableGeneratingScript.sql" />

answered Apr 10, 2018 at 16:36

Arsen Khachaturyan's user avatar

In my case I was running under a different user than the one I was expecting.

My code passed 'DRIVER={SQL Server};SERVER=...;DATABASE=...;Trusted_Connection=false;User Id=XXX;Password=YYY' as the connection string to pypyodbc.connect(), but it ended up connecting with the credentials of the Windows user that ran the script instead of the User Id= from the connection string.

(I verified this using the SQL Server Profiler and by putting an invalid uid/password combination in the connection string — which didn’t result in an expected error).

I decided not to dig into this further, since switching to this better way of connecting fixed the issue:

conn = pypyodbc.connect(driver='{SQL Server}', server='servername',
                        database='dbname', uid='userName', pwd='Password')

answered Apr 10, 2017 at 15:13

Nickolay's user avatar

NickolayNickolay

30.8k12 gold badges105 silver badges183 bronze badges

In my case the sql server version on my localhost is higher than that on the production server and hence some new variables were added to the generated script from the localhost. This caused errors in creating the table in the first place.
Since the creation of the table failed, subsequent query on the «NON EXISITING» table also failed.
Luckily, in among the long list of the sql errors, I found this «OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF» to be the new varialbe in the script causing my issue. I did a search and replace and the error went away.
Hope it helps someone.

answered May 1, 2020 at 19:11

OneGhana's user avatar

The TRUNCATE statement was my first problem, glad to find the solution here. But I was using SSIS and trying to load data from another database, and it failed with the same error on any table that used IDENTITY to create an auto-incrementing ID. If I was scripting it myself I’d first need to use the command SET IDENTITY_INSERT tablename ON, and then SET IDENTITY_INSERT tablename OFF when the table update was done. But this requires ALTER permissions on the table, which I do not have. Hence the error message in SSIS on the table load (even though the previous step had just deleted all the data out of the table.)

answered Oct 1, 2020 at 2:19

DZx's user avatar

DZxDZx

3471 gold badge4 silver badges11 bronze badges

You receive this error, when you use an ORM like GORM (https://gorm.io/) in Go for example.

When you try to create a struct and accidentally pass the ID (primary key) although it’s inserted automatically.

Rich features IDE like Visual Studio Code make this mistake happen easily:

if tx := db.Create(&myStruct{
    Ts:                Time.Now(),
    ID:                42,
}); tx.Error != nil {
    t.Fatal(tx.Error)
}

You can still use auto-filling by Visual Studio Code, but delete your entry for your model’s primary keys:

if tx := db.Create(&myStruct{
    Ts:                Time.Now(),
}); tx.Error != nil {
    t.Fatal(tx.Error)
}

answered Mar 23, 2022 at 15:32

h0ch5tr4355's user avatar

h0ch5tr4355h0ch5tr4355

1,9824 gold badges27 silver badges49 bronze badges

This error is caused mainly due to incorrect column mapping to a column which has identity insert. So, please make sure to check if you have mapped any source column to a sink where identity insert is enabled. If so, you should ignore that column from mapping else remove identity insert.

answered May 26 at 6:31

Prakash Baskar's user avatar

Проблемы

При попытке открыть таблицу, форму, отчет или запрос в веб-базе данных Microsoft Access 2010, в которой размещены таблицы в Office 365, может появиться следующее сообщение об ошибке:

Ядру СУБД Microsoft Access не удалось найти объект <именем таблицы>. Убедитесь, что объект существует и вы правильно заверно запишите имя и путь к нему. Если «<имя таблицы>» не является локальным объектом, проверьте сетевое подключение или обратитесь к администратору сервера.

Причина

Это известная проблема, связанная с обновлением сервера.

Решение

Чтобы устранить эту проблему, воспользуйтесь одним из описанных ниже способов. Обратите внимание, что при наличии изменений, которые еще не синхронизированы с сервером, вам, возможно, потребуется повторно создать эти изменения, выполнив указанные ниже действия.

Способ 1: открыть в Access

1. Откройте веб-сайт для веб-базы данных Access.

2. Выберите Параметры и нажмите кнопку Открыть в Access.

3. Нажмите кнопку ОК .

4. в нижней части браузера вы увидите сообщение «хотите открыть или сохранить <имя файла>. accdw (# #bytes) от <sitename>. <locationName>. com.»   Нажмите кнопку Открыть.

5. появится запрос: «Открытие файла Microsoft Access Web App (ACCDW), чтобы загрузить данные из Интернета или интрасети. URL-адрес для связи сайта с этим файлом: https://<URL-адрес сайта приложения> » . Нажмите кнопку ОК.

Приложение будет открыто в Microsoft Access, и вы сможете открывать таблицы, формы и отчеты.

Если вам нужна помощь в поиске веб-сайта для приложения Access, ознакомьтесь с дополнительными сведениями .

Способ 2: удаление ACCDB файла и открытие в Access

Если в методе 1 не удается устранить проблему, выполните указанные ниже действия, чтобы удалить ACCDB для приложения с локального компьютера, а затем создать новый ACCDB-файл из расположения Office 365 в Интернете для вашего приложения Access.

    Запись сведений о файле и сайте.

1. Запустите Microsoft Access на локальном компьютере и откройте веб-приложение Access. 

2. Щелкните файл и щелкните ссылку «Просмотреть и изменить свойства базы данных» в правом верхнем углу. На вкладке «Общие» в диалоговом окне отображается расположение файла локальной базы данных.

3. Запишите расположение файла *. accdb и закройте Access.

4. в разделе «синхронизировать все» в меню «файл» щелкните ссылку на базу данных в Интернете. Вы можете оставить веб-сайт открытым или сохранить адрес сайта в документе блокнота, когда вы будете готовы создать новую копию приложения ACCDB на веб-сайте.

    Создайте резервную копию и удалите неисправность ACCDB.

Примечание. Любые объекты, такие как формы или отчеты, созданные после возникновения этой ошибки, может потребоваться воссоздать, если после создания объектов вы не синхронизируете базу данных. Если вы создали клиентские формы или отчеты, которые не синхронизированы, вы можете импортировать их из резервной копии.

5. Перейдите к нужному файлу локального Access ACCDB, который вы записали на шаге 3, и выберите файл. Скопируйте файл на другой жесткий диск или USB-накопитель.

6. Удалите файл с локального компьютера. Обратите внимание, что при переименовании файла проблема не будет устранена. Его необходимо удалить с компьютера.

    Создайте новую копию ACCDB-файла из Интернета на локальном компьютере.

7. Перейдите на сайт веб-базы данных, который вы открыли или сохранили на шаге 4.

8. на верхней панели приложения нажмите кнопку Параметры и выберите команду Открыть в Access.

9. в нижней части браузера вы увидите сообщение «хотите открыть или сохранить <filename>. accdw (# #bytes) from <sitename>. <locationName>. com.   Нажмите кнопку Открыть.

Появится запрос: «Открытие файла Microsoft Access Web App (ACCDW), чтобы загрузить данные из Интернета или интрасети. URL-адрес для связи сайта с этим файлом: https://<URL-адрес сайта приложения> »

10. Нажмите кнопку ОК.

Вы получите сообщение «создана локальная копия» https://<URL-адрес сайта приложения> «на сайте» C:users <имя профиля> DocumentsAccess приложения <имя приложения>. ACCDB. »

11. Нажмите кнопку ОК.

Вам будут видны все объекты.

Дополнительная информация

Чтобы найти адрес веб-сайта для веб-базы данных Access, выполните указанные ниже действия.

В Microsoft Access нажмите кнопку файл.

В разделе Синхронизация всех на вкладке Файл щелкните ссылку на базу данных в Интернете, чтобы открыть ее в браузере. Вы можете покинуть веб-сайт, открыть или сохранить адрес сайта в документе Word или Блокнот.

Нужна дополнительная помощь?

Нужны дополнительные параметры?

Изучите преимущества подписки, просмотрите учебные курсы, узнайте, как защитить свое устройство и т. д.

В сообществах можно задавать вопросы и отвечать на них, отправлять отзывы и консультироваться с экспертами разных профилей.

Проблемы

При попытке открыть таблицу, форму, отчет или запрос в веб-базе данных Microsoft Access 2010, в которой размещены таблицы в Office 365, может появиться следующее сообщение об ошибке:

Ядру СУБД Microsoft Access не удалось найти объект <именем таблицы>. Убедитесь, что объект существует и вы правильно заверно запишите имя и путь к нему. Если «<имя таблицы>» не является локальным объектом, проверьте сетевое подключение или обратитесь к администратору сервера.

Причина

Это известная проблема, связанная с обновлением сервера.

Решение

Чтобы устранить эту проблему, воспользуйтесь одним из описанных ниже способов. Обратите внимание, что при наличии изменений, которые еще не синхронизированы с сервером, вам, возможно, потребуется повторно создать эти изменения, выполнив указанные ниже действия.

Способ 1: открыть в Access

1. Откройте веб-сайт для веб-базы данных Access.

2. Выберите Параметры и нажмите кнопку Открыть в Access.

3. Нажмите кнопку ОК .

4. в нижней части браузера вы увидите сообщение «хотите открыть или сохранить <имя файла>. accdw (# #bytes) от <sitename>. <locationName>. com.»   Нажмите кнопку Открыть.

5. появится запрос: «Открытие файла Microsoft Access Web App (ACCDW), чтобы загрузить данные из Интернета или интрасети. URL-адрес для связи сайта с этим файлом: https://<URL-адрес сайта приложения> » . Нажмите кнопку ОК.

Приложение будет открыто в Microsoft Access, и вы сможете открывать таблицы, формы и отчеты.

Если вам нужна помощь в поиске веб-сайта для приложения Access, ознакомьтесь с дополнительными сведениями .

Способ 2: удаление ACCDB файла и открытие в Access

Если в методе 1 не удается устранить проблему, выполните указанные ниже действия, чтобы удалить ACCDB для приложения с локального компьютера, а затем создать новый ACCDB-файл из расположения Office 365 в Интернете для вашего приложения Access.

    Запись сведений о файле и сайте.

1. Запустите Microsoft Access на локальном компьютере и откройте веб-приложение Access. 

2. Щелкните файл и щелкните ссылку «Просмотреть и изменить свойства базы данных» в правом верхнем углу. На вкладке «Общие» в диалоговом окне отображается расположение файла локальной базы данных.

3. Запишите расположение файла *. accdb и закройте Access.

4. в разделе «синхронизировать все» в меню «файл» щелкните ссылку на базу данных в Интернете. Вы можете оставить веб-сайт открытым или сохранить адрес сайта в документе блокнота, когда вы будете готовы создать новую копию приложения ACCDB на веб-сайте.

    Создайте резервную копию и удалите неисправность ACCDB.

Примечание. Любые объекты, такие как формы или отчеты, созданные после возникновения этой ошибки, может потребоваться воссоздать, если после создания объектов вы не синхронизируете базу данных. Если вы создали клиентские формы или отчеты, которые не синхронизированы, вы можете импортировать их из резервной копии.

5. Перейдите к нужному файлу локального Access ACCDB, который вы записали на шаге 3, и выберите файл. Скопируйте файл на другой жесткий диск или USB-накопитель.

6. Удалите файл с локального компьютера. Обратите внимание, что при переименовании файла проблема не будет устранена. Его необходимо удалить с компьютера.

    Создайте новую копию ACCDB-файла из Интернета на локальном компьютере.

7. Перейдите на сайт веб-базы данных, который вы открыли или сохранили на шаге 4.

8. на верхней панели приложения нажмите кнопку Параметры и выберите команду Открыть в Access.

9. в нижней части браузера вы увидите сообщение «хотите открыть или сохранить <filename>. accdw (# #bytes) from <sitename>. <locationName>. com.   Нажмите кнопку Открыть.

Появится запрос: «Открытие файла Microsoft Access Web App (ACCDW), чтобы загрузить данные из Интернета или интрасети. URL-адрес для связи сайта с этим файлом: https://<URL-адрес сайта приложения> »

10. Нажмите кнопку ОК.

Вы получите сообщение «создана локальная копия» https://<URL-адрес сайта приложения> «на сайте» C:users <имя профиля> DocumentsAccess приложения <имя приложения>. ACCDB. »

11. Нажмите кнопку ОК.

Вам будут видны все объекты.

Дополнительная информация

Чтобы найти адрес веб-сайта для веб-базы данных Access, выполните указанные ниже действия.

В Microsoft Access нажмите кнопку файл.

В разделе Синхронизация всех на вкладке Файл щелкните ссылку на базу данных в Интернете, чтобы открыть ее в браузере. Вы можете покинуть веб-сайт, открыть или сохранить адрес сайта в документе Word или Блокнот.

Ошибка СУБД: Недопустимое имя объекта «#tt1».

Модератор: Дмитрий Юхтимовский

Ошибка СУБД: Недопустимое имя объекта «#tt1».

День добрый!
Столкнулся с проблемой, после обновления платформы на 8.3.9.1818 (Сервер 1С Предприятия x86-64) при работе базы начала вываливаться ошибка у пользователей:
Невосстановимая ошибка
Ошибка при выполнении запроса POST к ресурсу /e1cib/logForm:
по причине:
Ошибка СУБД:
Microsoft SQL Server Native Client 10.0: Недопустимое имя объекта «#tt1».
HRESULT=80040E37, SQLSrvr: SQLSTATE=42S02, state=1, Severity=10, native=208, line=1

Ошибка вываливается не предсказуемо и повторить не получается.
Из рекомендаций что было найдено — чистка кеша, переподключение БД на сервере предприятия, перезапуск службы SQL (для чистки tempdb) сервера было выполнено — ошибка по прежнему повторяется.

Как я понимаю данная болезнь известна не первый год, удалось ли кому найти решение данной проблемы (может стоит откатится на предыдущую версию платформы)?

Заранее спасибо за возможные рекомендации.

AlexStaf
 
Сообщений: 2
Зарегистрирован: 18 окт 2016, 10:55

это ошибка платформа

Сообщение Гилёв Вячеслав » 18 окт 2016, 20:11

это ошибка платформа — надо демонстрировать разработчикам фирмы 1с воспроизведение проблемы

из здравого смысла можно уменьшить вероятность коллизий, перечень в порядке уменьшения эффективности:
1. использовать shared memory как более надежный канал
2. минимизировать время транзакций, не должно быть операций длиннее 20 секунд
3. делать рестарт сервера субд ночью или в периоды минимальной нагруженности (с остановкой сервера 1С и чисткой сеансовых данных)

Гилёв Вячеслав
 
Сообщений: 2719
Зарегистрирован: 11 фев 2013, 15:40
Откуда: Россия, Москва

Re: Ошибка СУБД: Недопустимое имя объекта «#tt1».

Сообщение NisSon » 02 дек 2016, 02:03

Доброго дня.
Вот только на SQL только перетащил 1Ски и столкнулся с той же ошибкой.
Платформа так же 8.3.9.1818 (Сервер 1С Предприятия x86-64)
Удалось ли победить проблему?
Ушла ли ошибка после апгрейда платформы?
Заранее спасибо.

NisSon
 
Сообщений: 1
Зарегистрирован: 02 дек 2016, 01:59

Re: Ошибка СУБД: Недопустимое имя объекта «#tt1».

Сообщение AlexStaf » 02 дек 2016, 17:11

Добрый день!
Мы сделали даунгрейд на версию 8.3.8.2167 — проблема прекратилась.
Переход на более свежую 8.3.9 (следующую после 8.3.9.1818) — не помог.
Как я понял 1С исправит данную ошибку только в 8.3.10

AlexStaf
 
Сообщений: 2
Зарегистрирован: 18 окт 2016, 10:55

Re: Ошибка СУБД: Недопустимое имя объекта «#tt1».

Сообщение srgs » 25 дек 2016, 23:36

Три дня назад наконец-то словил легендарную ошибку #tt1.
Обновился до последней платформы — 8.3.9.2033 (+SQL2016), но все равно периодически проявляется только при работе в конф/базе <<Зарплата и кадры государственного учреждения 3>> при интенсивной работе/запросах. Проверил все настройки (shared memory, ход регламентные заданий для SQL 2016 и пр). Прогнал еще раз вручную оптимизацию индексов с помощью dbForge Index Manager (dbForge использую вместе с SSMS), перезагрузил в ночи сервера (заодно и обновления накатил).
Ошибка осталась, хотя вылезает пореже… Сильно не напрягает, т.к. касается только расчетного отдела и проявляется пару раз в день, но осадочек остается ) Отправил баг-репорт в 1C. Буду ждать платформу 8.3.10
Ошибка описана как исправленная в данной платформе, но это не так:
———————————————————
Прерывание работы сеанса или фонового задания
Код ошибки: 50010160
Код(ы) обращения: CSR-12050 CSR-12078
Статус: Исправлена в выпущенной версии Зарегистрирована: 19.10.2016
Исправлена: «Технологическая платформа», версия 8.3.9.2033
Описание:
В клиент-серверном варианте информационной базы с использованием Microsoft SQL Server, после завершения работы сеанса администратором или после прерывания фонового задания из встроенного языка или интерактивно, могут происходить ошибки
Microsoft SQL Server Native Client 11.0: Invalid object name ‘#tt1’….
….
———————————————————-

srgs
 
Сообщений: 12
Зарегистрирован: 27 ноя 2016, 21:20

Re: Ошибка СУБД: Недопустимое имя объекта «#tt1».

Сообщение Гилёв Вячеслав » 27 дек 2016, 11:26

Разработчикам на это версии платформы хотя бы видео отошлите с воспроизведением

Гилёв Вячеслав
 
Сообщений: 2719
Зарегистрирован: 11 фев 2013, 15:40
Откуда: Россия, Москва

Re: Ошибка СУБД: Недопустимое имя объекта «#tt1».

Сообщение Гилёв Вячеслав » 27 дек 2016, 11:27

еще мы такую ошибку видели после установки софтпоинтовского кластера клиентом

Гилёв Вячеслав
 
Сообщений: 2719
Зарегистрирован: 11 фев 2013, 15:40
Откуда: Россия, Москва

Re: Ошибка СУБД: Недопустимое имя объекта «#tt1».

Сообщение srgs » 30 янв 2017, 20:18

Ошибка неубиенная оказалась — народ уже слегка озверел и постоянно наезжает на 1С-ников —

http://forum.infostart.ru/forum9/topic145945/

, на мисте — лень искать и пр…. Есть два варианта — откатиться на последнюю 8.3.8.2167 или поставить бетку 8.3.9.2170, где вроде исправили:
———————
В клиент-серверном варианте информационной базы при высокой нагрузке, при активном использовании поиска по строке в динамическом списке, пользователи могут получать сообщение об ошибке:
Соединение с сервером баз данных непригодно для использования после разрыва соединения администратором и будет переустановлено.

Microsoft SQL Server Native Client 11.0: The COMMIT TRANSACTION request has no corresponding BEGIN TRANSACTION.
HRESULT=80004005, SQLSrvr: SQLSTATE=25000, state=1, Severity=10, native=3902, line=1
или
Microsoft SQL Server Native Client 11.0: Cannot find the object «#tt2» because it does not exist or you do not have permissions.
HRESULT=80040E37, SQLSrvr: SQLSTATE=42S02, state=1, Severity=10, native=4701, line=1
———————
Но меня малость настораживает, что речь идет о #tt2, а иногда ведь улетает с #tt1 ) Сколько этих временных таблиц образуется — фиг его знает. Я знаю про 4-ре — #tt1 до #tt4…
Чистка кэша и перезапуск SQL c удалением временных это перегибный вариант решения проблемы, также как и полное отключение регламентных заданий…
Окончательное исправление будет в 8.3.10 и если уж совсем рисковать то можно поставить и бетку 8.3.10.1877, которая появилась 27-го января. На партнерском форуме —

https://partners.v8.1c.ru/forum/message/1563306

отмечают, что типа нашли в чем причина, но исправим только когда выйдет 8.3.10, т.е. в конце февраля. :shock: До конца недели (если не сожрут бухгалтера и финансисты) поставлю обе бетки — 9-ку и 10-ку и гляну под нагрузкой. Если будет отрицательный результат — перегоню всех на 8.3.8… Отпишусь по результатам.

srgs
 
Сообщений: 12
Зарегистрирован: 27 ноя 2016, 21:20

Re: Ошибка СУБД: Недопустимое имя объекта «#tt1».

Сообщение Дмитрий Юхтимовский » 31 янв 2017, 02:30

мы на 8.3.9.2170 заметили серьёзное улучшение в данном вопросе, по сравнению с предыдущими версиями 8.3.9.

Дмитрий Юхтимовский
 
Сообщений: 735
Зарегистрирован: 11 фев 2013, 19:28
Откуда: gilev.ru

Re: Ошибка СУБД: Недопустимое имя объекта «#tt1».

Сообщение srgs » 31 янв 2017, 14:21

Дмитрий Юхтимовский писал(а):мы на 8.3.9.2170 заметили серьёзное улучшение в данном вопросе, по сравнению с предыдущими версиями 8.3.9.

Спасибо за инфу… хорошо… но не хочу резких телодвижений пока, т.к. мне нужно время чтобы проверить помимо #tt ошибок в бетках еще иной функционал, прежде чем переводить на них все свои 200 с копейками клиентских мест и филиалы… Сегодня в ночи на тестовом сервере и подсети разверну и начну смотреть … Судя по снижению скорости выкладываемых обновлений/релизов платформ одинэсники кажись взялись за ум, а то это уже попахивало беспределом — запуск новых фичей без исправления старых косяков… зла не хватает…
UPD…
Сегодня тестил с 2170. Согласен, явно исправили… вылетов на тестовой не было. Тест, конечно кривой, но хоть что-то… Перенес на тестовый сервер копию зарплатной базы, где фиксируется максимальное кол-во вылетов. Сервер — копия основного по софту , разница в железе — объема оперативки (меньше) и кол-ва процов (два вместо 4-х). Тестил на тех операциях, на которых на основной платформе происходили вылеты. Т.е. вылетело на основной базе — тормознулись — сделали такую-же операцию на тестовой — смотрим результат. Совесть не позволила заставить бухов работать с двумя базами — основной и тестовой (копией основной) параллельно — сейчас конец года — завал по работе. Завтра гляну бухучет — но там вылеты раз в час, а то и реже…. Если прокатит, дождусь когда зарелизится официально 2170 и переброшу всех на него.

srgs
 
Сообщений: 12
Зарегистрирован: 27 ноя 2016, 21:20

Re: Ошибка СУБД: Недопустимое имя объекта «#tt1».

Сообщение Гилёв Вячеслав » 02 фев 2017, 11:18

2014 версия без сервиспаков также может быть источников части подобных проблем

Гилёв Вячеслав
 
Сообщений: 2719
Зарегистрирован: 11 фев 2013, 15:40
Откуда: Россия, Москва

Re: Ошибка СУБД: Недопустимое имя объекта «#tt1».

Сообщение srgs » 06 фев 2017, 16:12

С новой платформой 8.3.9.2170 ошибка(ки) #tt(x) ушла(ли). Полет нормальный целый день. Ни одного падения. Главное, чтобы новые ошибки не проявились )

srgs
 
Сообщений: 12
Зарегистрирован: 27 ноя 2016, 21:20



Вернуться в MS SQL Server для целей 1С:Предприятие

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1

  • #1

Доброго времени суток! Есть физический сервер, который работает на microsoft windows server 2016. Там развернут sql сервер который держит несколько БД и сервер приложений 1c 8.3.
В основном сервер задействован под 1с документооборот. Периодически у пользователей которые работают в 1с вываливается ошибка вида:

Соединение с сервером баз данных непригодно для использования после разрыва соединения администратором и будет переустановлено.
Microsoft SQL Server Native Client 11.0: Запрос COMMIT TRANSACTION не имеет соответствующей инструкции BEGIN TRANSACTION.
HRESULT=80004005. SQLSrvr:SQLState=25000, state=1, Severity=10, native=3902, line=1

image_350.jpg

Подскажите что делать и куда копать?

  • #2

Код кривой в 1с . Загляните в лог сервера 1с

  • #3

Код кривой в 1с . Загляните в лог сервера 1с

в логах сервера есть некоторые ошибки но я думаю они не связаны с проблемой, вот некоторые:

EVENT ID 121
Сбой установки драйвера, результат 0x80072F8F для DevNode «SWDSCDEVICEENUM1_AKS_VR_0»

EVENT ID 10016
Distributed COM
Параметры разрешений для конкретного приложения не дают разрешения Локально Активация для приложения COM-сервера с CLSID
{2DC39BD2-9CFF-405D-A2FE-D246C976278C}
и APPID
{DB336D8E-32E5-42B9-B14B-58AAA87CEB06}
пользователю NT SERVICESQLSERVERAGENT с ИД безопасности (S-1-5-80-344959196-2060754871-2302487193-2804545603-1466107430) и адресом LocalHost (с использованием LRPC), выполняемого в контейнере приложения Недоступно с ИД безопасности (Недоступно). Это разрешение безопасности можно изменить с помощью средства администрирования служб компонентов.

EVENT ID 123
Работа службы DSM задержана на 11 с из-за запроса, скачивания или установки драйвера на устройстве «SWDSCDEVICEENUM5_AKS_VR_0»

— -Подумал и добавил — —

Помимо всего стала появляться еще одна ошибка в 1С платформе

Ошибка СУБД:
Microsoft SQL Server Native Client 11.0: Не удалось найти объект «#tt1», так как он не существует, или отсутствуют разрешения.
HRESULT=80040E37, SQLSrvr: SQLSTATE=42S02, state=1, Severity=10, native=4701, line=1

image_351.jpg

Есть идей что с этим делать?

  • #4

Оба сообщения попадают под описание ошибки платформы 1С, исправлена в 8.3.9.2170

А какая у вас версия 1с и билд?

  • #5

Оба сообщения попадают под описание ошибки платформы 1С, исправлена в 8.3.9.2170

А какая у вас версия 1с и билд?

Спасибо, ушел обновляться.

Понравилась статья? Поделить с друзьями:
  • Ошибка субд не удается место для объекта
  • Ошибка субд компоненты ole db провайдера не найдены cocreateinstance
  • Ошибка субд длина ключа индекса превышает максимально допустимую 1c
  • Ошибка субд внутренняя ошибка компоненты dbeng8 что это
  • Ошибка субд внутренняя ошибка компоненты dbeng8 как исправить