Remove tables from an SQL SCHEMA?

The real problem that I’m trying to solve is to allow 3rd party ODBC connections, and end-users to access my database via SQL: when every table in my database has an object field.

I’ve come to realize that every SQL tool in the world that I have tried seems to crash, or error out, when looking at a table that has any Object fields.

So: to try to overcome this: I’m attempting to make an SQL Schema in my database that has VIEWs that are exact copies of my tables, but exclude any Object fields. I’ve succeeded at doing this: but I’d like to create a Schema that has ONLY my VIEWS, and NOT the actual tables themselves.

Is there a way to REMOVE a table from a SCHEMA?

Or, is there some better solution to my problem with how outside technologies freak out when seeing an object field?

just in case it is not known:
in v18 SELECT * automatically filters object fields AND allows to use cast to convert object fields to text (json) if needed. No need to remove them.

If you need to work with v17, you remove a table from a schema by assigning it to another schema, where the current user has no access (read rights).
See: https://kb.4d.com/assetid=51814

Thanks Thomas,
When you say “in v18 SELECT * automatically filters object fields AND allows to use cast to convert object fields to text (json) if needed.”
…If I try this in 4D: doing an INTO listbox: I can see the object field column header: but no data.

But what I really care about is 3rd party sql tools. I’m using one called “SqlDbx”: If I try the same “SELECT * FROM MyTable”, then it tells me that there were errors, and can’t complete.

Also, the SqlDbx Schema viewer crashes if I try to view the column names of any table that has objects: but it does ok if I try to view the column names of one of my Views that eliminates the object fields.

please read:
https://blog.4d.com/read-4d-object-fields-with-sql-engine/

we tried with Microsoft ODBC tools. If you have issues with others, please open a TAOW case for testing

Regarding KB 51814, and excluding tables from a Schema

: KB51814

This mechanism is based on 4D passwords. In order for the SQL server
access control to come into effect, the 4D password system must be
activated (a password must be assigned to the Designer).

So, in my database, I use the DefaultUser feature (where users get right in, and then I have my own custom authentication dialog). I’ve run a test with creating multiple Schemas: and all my tables appear in all schemas.
I’m wanting a way to create a Schema, and only include Views in it: not tables. How do I do this? Is this not possible when using DefaultUser feature?

Also: is there a way to Sql SELECT a list of Schemas?

I found how to get a list of Schemas:
https://doc.4d.com/4Dv18/4D/18/System-Tables.300-4650701.en.html

I’d still like feedback on this question:

: Tony RINGSMUTH

So, in my database, I use the DefaultUser feature (where users get
right in, and then I have my own custom authentication dialog). I’ve
run a test with creating multiple Schemas: and all my tables appear
in all schemas.
I’m wanting a way to create a Schema, and only include Views in it:
not tables. How do I do this? Is this not possible when using
DefaultUser feature?