Table names
To generate the names of the tables in the SQL destination database, SQList uses
the name of the SharePoint list, concatenated by
prefixes and suffixes as described in this article.
Note that, unlike columns, SharePoint does not have an internal name and an external name for a list, therefore,
if you change the name of a list, the related SQL table will also be recreated from scratch with the new name. This will happen automatically.
However, there can be an issue...
If the renamed list is used as a multi-lookup by another list, the tables related to this other list will also be affected because SQList uses the name of the list to generate the names of the
Parent
and
Child
columns in the many-2-many table.
For example, let us assume we have the following lists in a SharePoint site named "
Portal365
":
A list named "
Products
" with these columns:
And a list named "
Invoices
" with these columns:
SQList will create the following tables in the SQL Server database:
Portal365:Products
Portal365:Invoices
Portal365:Invoices.ProductIDs
The table
Portal365:Invoices.ProductIDs
will have to columns:
ParentInvoicesID
ChildProductsID
If the "Products
" list is renamed to "Articles
", SQList will:
- drop the "
Portal365:Products
" table;
- create a new table named "
Portal365:Products
", which will be populated from scratch.
The table "Portal365:Invoices.ProductIDs"
however won't be affected and will still contain the "ChildProductsID
" columns.
When SQList tries to replicate an update from the "
Invoices
" list, it will look for the column "
ChildArticlesID
" in the "
Portal365:Invoices.ProductIDs
" table, but it won't find it that table still contains the old column name "
ChildProductsID
" - at this point SQList will throw a "
Invalid column name 'ChildProductsID'." error.
To resolve this issue, you will have to rename the column "
ChildProductsID
" to "
ChildArticlesID
".
Alternatively, you could drop the tables "
Portal365:Invoices
" and "
Portal365:Invoices.ProductIDs"
and let SQList re-create them from scratch.
Column names
Columns names do not have the same issues as table names because SharePoint has an internal name as well as a display name for columns.
When you create a column, SharePoint will use the name you give to the column as both internal and display names. SQList will use the internal name for the column names in the SQL Server tables, therefore any changes you make to the name of the column will only change its display name, and SQList won't be affected.