How to force a sysadmin to store data in schema other than dbo? I am using a GUI tool to upload data in my SQL Server 2016 database.
The user being used for above task has been granted sysadmin permission
I created a dedicated schema to store above data. This schema is owned and default to above said user.
The issue is, when i upload data it stores in dbo schema instead of dedicated schema and i couldn't revoke sysadmin priv from this user.

Kindly let me know how to upload data to this dedicated schema without revoking sysadmin priv ?

Thanks
The only way for a member of the sysadmin fixed server role to use a non-dbo schema is to explicitly qualify their object names with the schema name:

CREATE TABLE MySchema.TableName (...


instead of:

CREATE TABLE TableName (...


There is no way around this. The documentation for ALTER USER (in the "Remarks" section) even has a note for:


  &#x1F6C8; Important  
  
  The value of DEFAULT_SCHEMA is ignored if the user is a member of the sysadmin fixed server role. All members of the sysadmin fixed server role have a default schema of dbo.


This is most likely due to the fact that Logins (instance-level) that are members of the sysadmin fixed server role become the dbo User (database-level) in all databases. To verify this, log in as any non-sa Login that is a sysadmin and execute the following:

SELECT SYSTEM_USER AS [Login], CURRENT_USER AS [User];