Home | Contact Us | FAQ | Search & Site Map | Link to Us
Sign In | Join | Other 45 Sites in Network
Home
Discussion Groups
DB Engine
SQL ServerMSDESQL Server CE
Services
Analysis (Data Mining)Analysis (OLAP)DTSIntegration ServicesNotification ServicesReporting Services
Programming
CLRConnectivitySQLXML
Other Technologies
ClusteringEnglish QueryFull-Text SearchReplicationService Broker
General
Data WarehousingPerformanceSecuritySetupSQL Server ToolsOther SQL Server Topics
DirectoryUser Groups
Related Topics
MS AccessOther DB ProductsMS Server Products.NET DevelopmentVB DevelopmentJava DevelopmentMore Topics ...

SQL Server Forum / General / Other SQL Server Topics / July 2005

Tip: Looking for answers? Try searching our database.

Hiding System Tables when connecting with non-microsoft clients

Thread view: 
Enable EMail Alerts  Start New Thread
Thread rating: 
Mike - 21 Jul 2005 16:04 GMT
I have a user who would like to connect to a SQL Server database using SAS (a
statistical application) and have the system tables not be displayed

Currently, when the user connects they are shown all of the tables
(including system table).  We have inquired on the SAS side and have been
told that it is something that must be on the database side.

Do I need to remove some default permissions?  Or send a special connection
string? I know in Ent. Manager, you just clear the show system tables
checkbox - but there is not an option like that when connecting with SAS.
Narayana Vyas Kondreddi - 21 Jul 2005 16:54 GMT
No, it is not something that you can do in the database. You'll have to get
your SAS guys to change their query that retreives the table list. For
example, the following query returns system and user tables, where as the
second one doesn't:

SELECT TABLE_SCHEMA, TABLE_NAME
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_TYPE = 'BASE TABLE'
--AND OBJECTPROPERTY(OBJECT_ID(TABLE_SCHEMA + '.' + TABLE_NAME),
'isMSShipped') = 0

SELECT TABLE_SCHEMA, TABLE_NAME
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_TYPE = 'BASE TABLE'
AND OBJECTPROPERTY(OBJECT_ID(TABLE_SCHEMA + '.' + TABLE_NAME),
'isMSShipped') = 0
Signature

HTH,
Vyas, MVP (SQL Server)
SQL Server Articles and Code Samples @ http://vyaskn.tripod.com/

I have a user who would like to connect to a SQL Server database using SAS
(a
statistical application) and have the system tables not be displayed

Currently, when the user connects they are shown all of the tables
(including system table).  We have inquired on the SAS side and have been
told that it is something that must be on the database side.

Do I need to remove some default permissions?  Or send a special connection
string? I know in Ent. Manager, you just clear the show system tables
checkbox - but there is not an option like that when connecting with SAS.
Mike - 21 Jul 2005 17:53 GMT
Thanks.  I suspected as much but I thought I would check with the community.

> No, it is not something that you can do in the database. You'll have to get
> your SAS guys to change their query that retreives the table list. For
[quoted text clipped - 23 lines]
> string? I know in Ent. Manager, you just clear the show system tables
> checkbox - but there is not an option like that when connecting with SAS.
 
Sign In
Join
My Latest Posts
My Monitored Threads
My Blog
My Photo Gallery
My Profile
My Homepage

Start New Thread
Enable EMail Alerts
Rate this Thread



©2009 Advenet LLC   Privacy Policy - Terms of Use
This website includes both content owned or controlled by Advenet as well as content owned or controlled by third parties.