Answers.Body: <p>I don't how this situation could have arisen, but the solution is to install CiviCRM (your version) on a spare database and then copy over the civicrm_acl table to the live database.</p>
  
  <p>You may need to drop the four *acl* tables and copy all four from the spare database, but as long as in the end, you have all of the required tables, it should work.</p>
  
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2015-09-17T19:11:44.197Z
Answers.LastActivityDate: 2015-09-17T19:11:44.197Z
Answers.UserDisplayName: Hershel
Answers.Body: <p>My suspicion is that when you are logged in, you are the administrator?  If so, my guess is that the ACL process is skipped for admins so the error condition is not hit.</p>
  
  <p>It sounds like you have a bad install which clobbered the civicrm_acl table, especially if you don't even see it in mysql. </p>
  
  <p>I am not positive if there is an easy way to rectify the problem. Once I confirmed that the table was missing, I would probably do a mysqldump of it from a system that did have it (freshly installed perhaps?) and then apply it.  Of course, it also leads me to wonder what other tables are missing.</p>
  
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2015-09-17T02:09:27.203Z
Answers.Text: Dave, Thanks for your response. The DB install was done a long time ago and we did not have any of these problems before. However, a few months back we switched from a wordpress multisite setup to a simple wordpress site (a completely new website with one of the domains we were using before) but left civicrm in place. Not sure how this could affect the civicrm database table though.
Answers.UserDisplayName: Leslie
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2015-09-17T02:13:30.023Z
Answers.Text: Leslie, have you upgraded civicrm lately? What version are you running? Having come from a multisite might be a clue. Gotta think about that.
Answers.UserDisplayName: DaveD
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2015-09-17T12:02:03.440Z
Answers.Text: Yes, during that transition period, we upgraded civicrm and currently are running civicrm 4.6.3.
Answers.UserDisplayName: Leslie
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2015-09-16T22:06:05.340Z
Answers.LastActivityDate: 2015-09-16T22:06:05.340Z
Answers.UserDisplayName: DaveD
Body: <p>When I use a fill-in (sign-up) profile on a browser where I am logged in, there is no problem filling in the forms and saving. However, when I try the form on another browser where I am not logged in (or on the same browser after I log out), I get this error message: DB error: No such table exists.</p>
  
  <p>The debugging text shows that civicrm_acl is missing and in fact, when I examine the database, there is no table with that name.
  This problem did not exist before so I am wondering what happened.</p>
  
  <p>Below is the debugging text:</p>
  
  <p>Sorry but we are not able to provide this at the moment.
  DB Error: no such table
  Error Details
  Database Error Code: Table 'xxxxx_civicrm.civicrm_acl' doesn't exist, 1146
  Additional Details:</p>
  
  <p>Array
  (
      [callback] => Array
          (
              [0] => CRM_Core_Error
              [1] => handle
          )</p>
  
  <pre><code>[code] =&gt; -18
  [message] =&gt; DB Error: no such table
  [mode] =&gt; 16
  [debug_info] =&gt;    SELECT          civicrm_acl.*
                      FROM            civicrm_acl
                      INNER JOIN      civicrm_option_group og
                              ON      og.name = 'acl_role'
                      INNER JOIN      civicrm_option_value ov
                              ON      civicrm_acl.entity_table   = 'civicrm_acl_role'
                              AND     ov.option_group_id  = og.id
                              AND     civicrm_acl.entity_id      = ov.value
                              AND     ov.is_active        = 1
                      INNER JOIN      civicrm_acl_entity_role
                              ON      civicrm_acl_entity_role.acl_role_id = civicrm_acl.entity_id
                              AND     civicrm_acl_entity_role.is_active    = 1
                      INNER JOIN  civicrm_group_contact
                              ON      civicrm_acl_entity_role.entity_id      = civicrm_group_contact.group_id
                              AND     civicrm_acl_entity_role.entity_table   = 'civicrm_group'
                      WHERE       civicrm_acl.entity_table       = 'civicrm_acl_role'
                          AND     civicrm_acl.is_active          = 1
                          AND     civicrm_group_contact.contact_id         = 0
                          AND     civicrm_group_contact.status             = 'Added' [nativecode=1146 ** Table 'xxxxx_civicrm.civicrm_acl' doesn't exist]
  [type] =&gt; DB_Error
  [user_info] =&gt;    SELECT          civicrm_acl.*
                      FROM            civicrm_acl
                      INNER JOIN      civicrm_option_group og
                              ON      og.name = 'acl_role'
                      INNER JOIN      civicrm_option_value ov
                              ON      civicrm_acl.entity_table   = 'civicrm_acl_role'
                              AND     ov.option_group_id  = og.id
                              AND     civicrm_acl.entity_id      = ov.value
                              AND     ov.is_active        = 1
                      INNER JOIN      civicrm_acl_entity_role
                              ON      civicrm_acl_entity_role.acl_role_id = civicrm_acl.entity_id
                              AND     civicrm_acl_entity_role.is_active    = 1
                      INNER JOIN  civicrm_group_contact
                              ON      civicrm_acl_entity_role.entity_id      = civicrm_group_contact.group_id
                              AND     civicrm_acl_entity_role.entity_table   = 'civicrm_group'
                      WHERE       civicrm_acl.entity_table       = 'civicrm_acl_role'
                          AND     civicrm_acl.is_active          = 1
                          AND     civicrm_group_contact.contact_id         = 0
                          AND     civicrm_group_contact.status             = 'Added' [nativecode=1146 ** Table 'xxxxx_civicrm.civicrm_acl' doesn't exist]
  [to_string] =&gt; [db_error: message="DB Error: no such table" code=-18 mode=callback callback=CRM_Core_Error::handle prefix="" info="   SELECT          civicrm_acl.*
                      FROM            civicrm_acl
                      INNER JOIN      civicrm_option_group og
                              ON      og.name = 'acl_role'
                      INNER JOIN      civicrm_option_value ov
                              ON      civicrm_acl.entity_table   = 'civicrm_acl_role'
                              AND     ov.option_group_id  = og.id
                              AND     civicrm_acl.entity_id      = ov.value
                              AND     ov.is_active        = 1
                      INNER JOIN      civicrm_acl_entity_role
                              ON      civicrm_acl_entity_role.acl_role_id = civicrm_acl.entity_id
                              AND     civicrm_acl_entity_role.is_active    = 1
                      INNER JOIN  civicrm_group_contact
                              ON      civicrm_acl_entity_role.entity_id      = civicrm_group_contact.group_id
                              AND     civicrm_acl_entity_role.entity_table   = 'civicrm_group'
                      WHERE       civicrm_acl.entity_table       = 'civicrm_acl_role'
                          AND     civicrm_acl.is_active          = 1
                          AND     civicrm_group_contact.contact_id         = 0
                          AND     civicrm_group_contact.status             = 'Added' [nativecode=1146 ** Table 'xxxxx_civicrm.civicrm_acl' doesn't exist]"]
  </code></pre>
  
  <p>)</p>
  
  <p>Return to home page.</p>
  
  <blockquote>
    <p>Blockquote</p>
  </blockquote>
  
Tags: <profile><database><acl>
Title: DB error with profiles
ThreadText: # DB error with profiles
  
  (Asked by: username_0 on 2015-09-16)
  
  When I use a fill-in (sign-up) profile on a browser where I am logged in, there is no problem filling in the forms and saving. However, when I try the form on another browser where I am not logged in (or on the same browser after I log out), I get this error message: DB error: No such table exists.
  
  The debugging text shows that civicrm\_acl is missing and in fact, when I examine the database, there is no table with that name.
  This problem did not exist before so I am wondering what happened.
  
  Below is the debugging text:
  
  Sorry but we are not able to provide this at the moment.
  DB Error: no such table
  Error Details
  Database Error Code: Table 'xxxxx\_civicrm.civicrm\_acl' doesn't exist, 1146
  Additional Details:
  
  Array
  (
  [callback] => Array
  (
  [0] => CRM\_Core\_Error
  [1] => handle
  )
  
  ```
  [code] => -18
  [message] => DB Error: no such table
  [mode] => 16
  [debug_info] =>    SELECT          civicrm_acl.*
                      FROM            civicrm_acl
                      INNER JOIN      civicrm_option_group og
                              ON      og.name = 'acl_role'
                      INNER JOIN      civicrm_option_value ov
                              ON      civicrm_acl.entity_table   = 'civicrm_acl_role'
                              AND     ov.option_group_id  = og.id
                              AND     civicrm_acl.entity_id      = ov.value
                              AND     ov.is_active        = 1
                      INNER JOIN      civicrm_acl_entity_role
                              ON      civicrm_acl_entity_role.acl_role_id = civicrm_acl.entity_id
                              AND     civicrm_acl_entity_role.is_active    = 1
                      INNER JOIN  civicrm_group_contact
                              ON      civicrm_acl_entity_role.entity_id      = civicrm_group_contact.group_id
                              AND     civicrm_acl_entity_role.entity_table   = 'civicrm_group'
                      WHERE       civicrm_acl.entity_table       = 'civicrm_acl_role'
                          AND     civicrm_acl.is_active          = 1
                          AND     civicrm_group_contact.contact_id         = 0
                          AND     civicrm_group_contact.status             = 'Added' [nativecode=1146 ** Table 'xxxxx_civicrm.civicrm_acl' doesn't exist]
  [type] => DB_Error
  [user_info] =>    SELECT          civicrm_acl.*
                      FROM            civicrm_acl
                      INNER JOIN      civicrm_option_group og
                              ON      og.name = 'acl_role'
                      INNER JOIN      civicrm_option_value ov
                              ON      civicrm_acl.entity_table   = 'civicrm_acl_role'
                              AND     ov.option_group_id  = og.id
                              AND     civicrm_acl.entity_id      = ov.value
                              AND     ov.is_active        = 1
                      INNER JOIN      civicrm_acl_entity_role
                              ON      civicrm_acl_entity_role.acl_role_id = civicrm_acl.entity_id
                              AND     civicrm_acl_entity_role.is_active    = 1
                      INNER JOIN  civicrm_group_contact
                              ON      civicrm_acl_entity_role.entity_id      = civicrm_group_contact.group_id
                              AND     civicrm_acl_entity_role.entity_table   = 'civicrm_group'
                      WHERE       civicrm_acl.entity_table       = 'civicrm_acl_role'
                          AND     civicrm_acl.is_active          = 1
                          AND     civicrm_group_contact.contact_id         = 0
                          AND     civicrm_group_contact.status             = 'Added' [nativecode=1146 ** Table 'xxxxx_civicrm.civicrm_acl' doesn't exist]
  [to_string] => [db_error: message="DB Error: no such table" code=-18 mode=callback callback=CRM_Core_Error::handle prefix="" info="   SELECT          civicrm_acl.*
                      FROM            civicrm_acl
                      INNER JOIN      civicrm_option_group og
                              ON      og.name = 'acl_role'
                      INNER JOIN      civicrm_option_value ov
                              ON      civicrm_acl.entity_table   = 'civicrm_acl_role'
                              AND     ov.option_group_id  = og.id
                              AND     civicrm_acl.entity_id      = ov.value
                              AND     ov.is_active        = 1
                      INNER JOIN      civicrm_acl_entity_role
                              ON      civicrm_acl_entity_role.acl_role_id = civicrm_acl.entity_id
                              AND     civicrm_acl_entity_role.is_active    = 1
                      INNER JOIN  civicrm_group_contact
                              ON      civicrm_acl_entity_role.entity_id      = civicrm_group_contact.group_id
                              AND     civicrm_acl_entity_role.entity_table   = 'civicrm_group'
                      WHERE       civicrm_acl.entity_table       = 'civicrm_acl_role'
                          AND     civicrm_acl.is_active          = 1
                          AND     civicrm_group_contact.contact_id         = 0
                          AND     civicrm_group_contact.status             = 'Added' [nativecode=1146 ** Table 'xxxxx_civicrm.civicrm_acl' doesn't exist]"]
  
  ```
  
  )
  
  Return to home page.
  
  > Blockquote
  
  **Tags:** profile, database, acl
  
  
  ---
  
  ## 2 answers
  
  ### Answer by username_1 on 2015-09-17. Score: 2
  
  I don't how this situation could have arisen, but the solution is to install CiviCRM (your version) on a spare database and then copy over the civicrm\_acl table to the live database.
  
  You may need to drop the four \*acl\* tables and copy all four from the spare database, but as long as in the end, you have all of the required tables, it should work.
  
  
  ---
  
  ### Answer by username_2 on 2015-09-16. Score: 1
  
  My suspicion is that when you are logged in, you are the administrator? If so, my guess is that the ACL process is skipped for admins so the error condition is not hit.
  
  It sounds like you have a bad install which clobbered the civicrm\_acl table, especially if you don't even see it in mysql.
  
  I am not positive if there is an easy way to rectify the problem. Once I confirmed that the table was missing, I would probably do a mysqldump of it from a system that did have it (freshly installed perhaps?) and then apply it. Of course, it also leads me to wonder what other tables are missing.
  
  > **Comments:**
  > **username_0**: Dave, Thanks for your response. The DB install was done a long time ago and we did not have any of these problems before. However, a few months back we switched from a wordpress multisite setup to a simple wordpress site (a completely new website with one of the domains we were using before) but left civicrm in place. Not sure how this could affect the civicrm database table though.  
  > **username_2**: username_0, have you upgraded civicrm lately? What version are you running? Having come from a multisite might be a clue. Gotta think about that.  
  > **username_0**: Yes, during that transition period, we upgraded civicrm and currently are running civicrm 4.6.3.  
  
  ---
  
  