Results 1 to 5 of 5
  1. #1
    Micron is offline Virtually Inert Person
    Windows 10 Access 2016
    Join Date
    Jun 2014
    Location
    Ontario, Canada
    Posts
    12,824

    How To ID a MSysObjects Object Having CLSID

    I'm querying MSysObjects for type 5 (tables) where the names meet certain requirements and I end up with one odd name in the results:
    f_CFA22828DE9E4E88A162DD7AE0CC9652_Data

    I can't see this table and don't recognize the name. I tried SELECT * FROM f_CFA22828DE9E4E88A162DD7AE0CC9652_Data; and Access complains that it can't find the table. I'm inclined to copy the db and delete this record and see what happens, but figured I might as well ask if anyone knows what this might (or might have) been about. The name resembles a CLSID type of name, hence the thread title. Of course, I set Options to show hidden and system objects, but I don't see this one.

    Can anyone shed any light on what this might have been?

    I Googled and found nothing, which also ought to cover what this forum might have in the way of an answer.


    This thread pointed out that there's no "Table" category in the forum, which I wonder about.

    EDIT: so I see that these tables can't be deleted/edited. Also, a variant of that name appears in a brand new db as f_CA277812FAFD4E0F8662983A26192F73_Data. This means it's hit and miss as far as preventing it from appearing in my list of db tables.
    The more we hear silence, the more we begin to think about our value in this universe.
    Paraphrase of Professor Brian Cox.

  2. #2
    Micron is offline Virtually Inert Person
    Windows 10 Access 2016
    Join Date
    Jun 2014
    Location
    Ontario, Canada
    Posts
    12,824
    Sometimes you just have to know how to ask. I tried "ms access 2016 MsysObjects name starting with f_" and got better results. Apparently, it has to do with the hidden tables that handle multi value fields. I suppose it will have to be good enough to eliminate anything that starts with f_, unless anyone knows how to get rid of it since I don't see an option to disallow mvf's. Maybe that wouldn't remove it anyway. As long as no one ever creates a table beginning with f_ , I guess that will have to do.

  3. #3
    isladogs's Avatar
    isladogs is offline MVP / VIP
    Windows 10 Access 2010 32bit
    Join Date
    Jan 2014
    Location
    Somerset, UK
    Posts
    5,992
    Every DB has an hidden, system f_... (or effing) table which is created automatically when the DB is created
    As you say it can't be edited or deleted - in fact I'm not even sure it can be viewed as it doesn't appear in the nav pane even if hidden/system items are ticked.

    For example, one of mine is f_B9515A0BCD044E259377E9B2BC716601_Data
    AFAIK the table 'number' is unique but all are Type = 1 & Flags = -2146828288 in MSysObjects
    That Flags value isn't used by any other table so you can use that to easily exclude the 'effing' table
    Colin, Access MVP, Website, email
    The more I learn, the more I know I don't know. When I don't know, I keep quiet!
    If I don't know that I don't know, I don't know whether to answer

  4. #4
    Micron is offline Virtually Inert Person
    Windows 10 Access 2016
    Join Date
    Jun 2014
    Location
    Ontario, Canada
    Posts
    12,824
    That Flags value isn't used by any other table so you can use that to easily exclude the 'effing' table
    That seems better than excluding based on Left 2 characters not being "f_"..
    Thanks.

  5. #5
    isladogs's Avatar
    isladogs is offline MVP / VIP
    Windows 10 Access 2010 32bit
    Join Date
    Jan 2014
    Location
    Somerset, UK
    Posts
    5,992
    This is a query I use to list tables based on two system tables MSysObjects, MSysNameMap
    Code:
    SELECT MsysObjects.Name AS ObjectName, tblSysObjectTypes.Object AS ObjectType, tblSysObjectTypes.SubType AS ObjectSubType, FormatDateTime([DateCreate],2) AS DateCreated, FormatDateTime([DateUpdate],2) AS DateUpdated, DCount('*',[ObjectName]) AS NumberOfRecords, MSysNameMap.NameMap, MSysNameMap.GUID
    FROM MSysNameMap RIGHT JOIN (MsysObjects INNER JOIN tblSysObjectTypes ON (MsysObjects.Flags = tblSysObjectTypes.Flags) AND (MsysObjects.Type = tblSysObjectTypes.Type)) ON MSysNameMap.Name = MsysObjects.Name
    WHERE (((MsysObjects.Name) Not Like '~*') AND ((MsysObjects.Flags)<>2 And (MsysObjects.Flags)<>-2147483648) AND ((tblSysObjectTypes.Type)=1 Or (tblSysObjectTypes.Type)=4 Or (tblSysObjectTypes.Type)=6))
    ORDER BY MsysObjects.Name, tblSysObjectTypes.Object;
    The table tblSysObjectTypes is one of mine & you might find it useful:

    ID Object Type SubType Flags Hidden System
    1 Form -32768
    0 0 0
    2 Macro -32766
    0 0 0
    3 Report -32764
    0 0 0
    4 Module -32761
    0 0 0
    5 Users -32758

    0 -1
    6 Document -32757

    0 -1
    7 Data Access Page -32756

    0 0
    8 Table 1 Local 8 -1 0
    9 Table 1 System
    0 -1
    10 Table 1 Local 0 0 0
    11 Database 2

    0 -1
    12 Container 3

    0 -1
    13 Table 4 Linked SQL 537919496 -1 0
    14 Table 4 Linked SQL 537919488 0 0
    15 Query 5 Append 72 -1 0
    16 Query 5 Append 64 0 0
    17 Query 5 Crosstab 24 -1 0
    18 Query 5 Crosstab 16 0 0
    19 Query 5 Data Definition 96 0 0
    20 Query 5 Data Definition 104 -1 0
    21 Query 5 Delete 40 -1 0
    22 Query 5 Delete 32 0 0
    23 Query 5 Make Table 80 0 0
    24 Query 5 Make Table 88 -1 0
    25 Query 5 Pass Through 112 0 0
    26 Query 5 Pass Through 120 -1 0
    27 Query 5 Select 8 -1 0
    28 Query 5 Select 0 0 0
    29 Query 5 Temp 3 -1 0
    30 Query 5 Union 128 0 0
    31 Query 5 Union 136 -1 0
    32 Query 5 Update 56 -1 0
    33 Query 5 Update 48 0 0
    34 Table 6 Linked Access 538968064 0 0
    35 Table 6 Linked Text / CSV 10485760 0 0
    36 Table 6 Linked Excel 11534336 0 0
    37 Table 6 Linked Excel 11534344 -1 0
    38 Table 6 Linked Text / CSV 10485768 -1 0
    39 Table 6 Linked Access 538968072 -1 0
    40 Table 6 Linked Access 2097152 0 0
    41 SubDatasheet 8

    0 -1

    I use this to identify the different types of query etc
    In fact I've got a database objects example database at this link: https://www.access-programmers.co.uk...d.php?t=295597
    Colin, Access MVP, Website, email
    The more I learn, the more I know I don't know. When I don't know, I keep quiet!
    If I don't know that I don't know, I don't know whether to answer

Please reply to this thread with any new information or opinions.

Similar Threads

  1. Replies: 2
    Last Post: 07-20-2017, 07:20 AM
  2. Replies: 4
    Last Post: 05-02-2016, 04:33 AM
  3. Replies: 1
    Last Post: 09-03-2011, 07:01 PM
  4. Replies: 3
    Last Post: 11-02-2010, 10:14 AM
  5. Replies: 1
    Last Post: 08-05-2010, 12:11 PM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
Other Forums: Microsoft Office Forums