Book a Demo

Author Topic: The user does not have database level permission to transfer data  (Read 6859 times)

Prudvi25

  • EA Novice
  • *
  • Posts: 1
  • Karma: +1/-0
    • View Profile
I have set up a new SQL server database and successfully created the tables for EA 14.
I have created a SQL user that is a member of
•db_datareader
•db_datawriter
•db_ddladmin
•public
and the server roles public and sysadmin

When I try to Transfer my Source Project from EA 14 to the DB I get the following error messages:
The user does not have database level permission to transfer data ..
Currently I am trying with windows authentication and  it still shows the same for Microsoft OLEDB Provider for SQL server.

Please help me with the same.

skiwi

  • EA Expert
  • ****
  • Posts: 2081
  • Karma: +46/-82
    • View Profile
Re: The user does not have database level permission to transfer data
« Reply #1 on: November 29, 2018, 04:25:03 pm »
I too have this problem.

What does "database level permission to transfer data" mean?
Which specific SQL Server permission is required
This is the first time I have done this for a couple of years, and the first time with V14.0

Orthogonality rules
Position and Team disestablished, thanks austerity.
Now itinerant.

skiwi

  • EA Expert
  • ****
  • Posts: 2081
  • Karma: +46/-82
    • View Profile
Re: The user does not have database level permission to transfer data
« Reply #2 on: November 30, 2018, 07:59:28 am »
Having asked, I have db_datareader, db_datawriter permissions to SQL Server

Orthogonality rules
Position and Team disestablished, thanks austerity.
Now itinerant.

qwerty

  • EA Guru
  • *****
  • Posts: 13584
  • Karma: +397/-301
  • I'm no guru at all
    • View Profile
Re: The user does not have database level permission to transfer data
« Reply #3 on: November 30, 2018, 10:41:45 am »
I guess you also need the Create.

q.

skiwi

  • EA Expert
  • ****
  • Posts: 2081
  • Karma: +46/-82
    • View Profile
Re: The user does not have database level permission to transfer data
« Reply #4 on: December 03, 2018, 07:08:16 am »
I guess you also need the Create.


The server based respository is already set up
(https://sparxsystems.com/enterprise_architect_user_guide/14.0/model_repository/settingupdatabasemodelfile.html and https://sparxsystems.com/enterprise_architect_user_guide/14.0/model_repository/upsizingtosqlserver.html)
and I can connect to it, and see an empty Sparx EA repository, so I'm not sure why Create would help.
Orthogonality rules
Position and Team disestablished, thanks austerity.
Now itinerant.

qwerty

  • EA Guru
  • *****
  • Posts: 13584
  • Karma: +397/-301
  • I'm no guru at all
    • View Profile
Re: The user does not have database level permission to transfer data
« Reply #5 on: December 03, 2018, 06:02:01 pm »
Well, it's EA and they might require it just for fun? Give it a go.

q.

Eve

  • EA Administrator
  • EA Guru
  • *****
  • Posts: 8110
  • Karma: +119/-20
    • View Profile
Re: The user does not have database level permission to transfer data
« Reply #6 on: December 10, 2018, 03:38:55 pm »
It's explained here:

https://sparxsystems.com/enterprise_architect_user_guide/14.0/model_repository/sqlserver_security_perms.html

Quote
Additional Permissions for Project Transfers
When an Enterprise Architect repository is transferred into a SQL Server based repository, it is necessary for Enterprise Architect to execute a number of SET IDENTITY_INSERT (table) {ON | OFF} commands during the process. This means the user performing the transfer must have a high level of security, in the role of 'db_ddladmin'.

skiwi

  • EA Expert
  • ****
  • Posts: 2081
  • Karma: +46/-82
    • View Profile
Orthogonality rules
Position and Team disestablished, thanks austerity.
Now itinerant.

skiwi

  • EA Expert
  • ****
  • Posts: 2081
  • Karma: +46/-82
    • View Profile
Re: The user does not have database level permission to transfer data
« Reply #8 on: December 11, 2018, 10:11:42 am »
Got hold of a friendly and helpful DBA.
I was given the role db_ddladmin.
Tried it again, a still received the error message. Then tried again with DB logging on, but nothing obvious in the log.
Finally tried it with db_owner rights.
Still didn't work!


I've opened a support call.




Orthogonality rules
Position and Team disestablished, thanks austerity.
Now itinerant.

skiwi

  • EA Expert
  • ****
  • Posts: 2081
  • Karma: +46/-82
    • View Profile
Re: The user does not have database level permission to transfer data
« Reply #9 on: December 12, 2018, 08:28:19 am »
A solution with thanks to Sparx Support


Build 1427 contains a fix for this problem.  We suspect it has come about when creating a new repository with the EASchema_1220_SQLServer.sql, and applying the update script before there is a model in the repository.
You have the option to...
1.  use EA build 1427, or
 2.  create a fresh repository, transfer a model to the fresh repository, then apply the update script.
Orthogonality rules
Position and Team disestablished, thanks austerity.
Now itinerant.