diff --git a/samples/features/sql2019notebooks/README.md b/samples/features/sql2019notebooks/README.md index bf855da5..a5f96723 100644 --- a/samples/features/sql2019notebooks/README.md +++ b/samples/features/sql2019notebooks/README.md @@ -32,6 +32,7 @@ The [What's New](https://docs.microsoft.com/sql/sql-server/what-s-new-in-sql-ser * **[Storage.ipynb](https://github.com/microsoft/sql-server-samples/blob/master/samples/features/unicode/notebooks/Storage.ipynb)** - In this notebook, you will see how to the storage footprint differences are expressive between Unicode encoded in UTF-8 and UTF-16. * **[Perf_Latin.ipynb](https://github.com/microsoft/sql-server-samples/blob/master/samples/features/unicode/notebooks/Perf_Latin.ipynb)** - In this notebook, you will see the performance differences of using string data encoded in UTF-8 and UTF-16 using Latin data. * **[Perf_Non-Latin.ipynb](https://github.com/microsoft/sql-server-samples/blob/master/samples/features/unicode/notebooks/Perf_Non-Latin.ipynb)** - In this notebook, you will see the performance differences of using string data encoded in UTF-8 and UTF-16 using non-Latin data. +* **[CheckStorageReq_CurrDB.ipynb](https://github.com/microsoft/sql-server-samples/blob/master/samples/features/unicode/notebooks/CheckStorageReq_CurrDB.ipynb)** - In this notebook, you will be able to determine the UTF8 storage requirements for all tables and string columns in the database in scope. ### SQL Server 2019 Querying 1 TRILLION rows * **[OneTrillionRowsWarm.ipynb](https://github.com/microsoft/sql-server-samples/blob/master/samples/features/sql2019notebooks/OneTrillionRowsWarm.ipynb)** - This notebook shows how SQL Server 2019 reads **9 BILLION rows/second** using a 1 trillion row table using a warm cache, diff --git a/samples/features/unicode/CheckStorageReq_CurrDB.sql b/samples/features/unicode/CheckStorageReq_CurrDB.sql new file mode 100644 index 00000000..628fb746 --- /dev/null +++ b/samples/features/unicode/CheckStorageReq_CurrDB.sql @@ -0,0 +1,51 @@ +-- Assess space requirements for UTF8 in context database + +DROP TABLE IF EXISTS #tmpObjects; + +CREATE TABLE #tmpObjects (ObjectName sysname, + ColumnName sysname, + ColumnType sysname, + DefinedTypeSize smallint, + ActualMaxBytes smallint, + UTF8BytesNeeded smallint, + [isdone] bit, + CONSTRAINT PK_ObjName_ColName + PRIMARY KEY NONCLUSTERED (ObjectName, ColumnName) + WITH (IGNORE_DUP_KEY = ON) + ); + +INSERT INTO #tmpObjects +SELECT QUOTENAME(SS.[name]) + '.' + QUOTENAME(STbl.[name]), QUOTENAME(SC.[name]), ST.[name], SC.max_length, NULL, NULL, 0 +FROM sys.columns AS SC +INNER JOIN sys.types AS ST ON SC.user_type_id = ST.user_type_id +INNER JOIN sys.tables AS STbl ON STbl.[object_id] = SC.[object_id] +INNER JOIN sys.schemas AS SS ON STbl.[schema_id] = SS.[schema_id] +WHERE STbl.[type] = 'U' + AND STbl.is_ms_shipped = 0 + --AND STbl.temporal_type IN (0,1) + AND ST.system_type_id IN (167, 175, 231, 239) + AND ST.[name] <> 'sysname' + AND SC.is_hidden = 0 + AND SC.max_length > 0; + +DECLARE @OName sysname, @CName sysname, @CurrBytes smallint, @UTF8Bytes smallint, @sqlcmd NVARCHAR(4000), @params NVARCHAR(60), @cnt int, @maxcnt int + +SELECT @maxcnt = COUNT(*) FROM #tmpObjects; +SET @cnt = 0 +SET @params = '@CurrBytesOut smallint OUTPUT, @UTF8BytesOut smallint OUTPUT' + +WHILE @cnt < @maxcnt +BEGIN + SELECT TOP 1 @OName = ObjectName, @CName = ColumnName FROM #tmpObjects WHERE isdone = 0 + SELECT @sqlcmd = 'SELECT @CurrBytesOut = MAX(DATALENGTH(' + @CName + ')), @UTF8BytesOut = MAX(DATALENGTH(CAST(' + @CName + ' AS VARCHAR(4000)) COLLATE Latin1_General_100_CI_AI_SC_UTF8)) FROM ' + @OName; + + EXEC sp_executesql @sqlcmd, @params, @CurrBytesOut = @CurrBytes OUTPUT, @UTF8BytesOut = @UTF8Bytes OUTPUT + + UPDATE #tmpObjects + SET ActualMaxBytes = @CurrBytes, UTF8BytesNeeded = @UTF8Bytes, isdone = 1 + WHERE ObjectName = @OName AND ColumnName = @CName + + SET @cnt = @cnt + 1 +END; + +SELECT * FROM #tmpObjects; \ No newline at end of file diff --git a/samples/features/unicode/notebooks/CheckStorageReq_CurrDB.ipynb b/samples/features/unicode/notebooks/CheckStorageReq_CurrDB.ipynb new file mode 100644 index 00000000..df87b391 --- /dev/null +++ b/samples/features/unicode/notebooks/CheckStorageReq_CurrDB.ipynb @@ -0,0 +1,1503 @@ +{ + "metadata": { + "kernelspec": { + "name": "SQL", + "display_name": "SQL", + "language": "sql" + }, + "language_info": { + "name": "sql", + "version": "" + } + }, + "nbformat_minor": 2, + "nbformat": 4, + "cells": [ + { + "cell_type": "markdown", + "source": "# Determine the UTF8 storage requirements for all tables and string columns in the database in scope", + "metadata": {} + }, + { + "cell_type": "markdown", + "source": "The script below will determine the UTF8 storage requirements for all tables and string columns in the database in scope, and whether the defined data type length has to be changed when converting to UTF-8. The result will show the table and column names that map to CHAR, NCHAR, VARCHAR, and NVARCHAR data types (including UDTs), their current type size definition, actual byte size, and projected byte size once encoded into UTF-8. \r\n\r\nFor example, for the column **EmailAddress** of table **Application.People**, the data type definition is **nvarchar(512)** and the data length for the largest string found in that column is 66 bytes. If changed to **varchar(512)** under a ***_UTF8*** collation, the data length would be reduced to 33 bytes. In this case, converting the column's collation and data type (without changing the size definition) will not cause data loss. \r\n\r\nHowever, if the projected byte size for the column using UTF-8 would be larger than the current data type definition, then the defined data type length would also have to be enlarged. For example, if a column were defined originally as **nvarchar(100)**1, and projected byte size for the column in UTF-8 would be 120, then a changing the column type to a **varchar(100)**2 would result in data loss. The column would have to be defined at least as **varchar(120)**.\r\n\r\n1 Expresses byte-pairs, meaning the column is capable of storing up to 200 bytes of information \r\n2 Expresses bytes, meaning the column is capable of storing up to 100 bytes of information", + "metadata": {} + }, + { + "cell_type": "code", + "source": "SET NOCOUNT ON;\r\nGO\r\n\r\nUSE WideWorldImporters\r\nGO\r\n\r\nDROP TABLE IF EXISTS #tmpObjects;\r\nGO\r\n\r\nCREATE TABLE #tmpObjects (ObjectName sysname, \r\n\tColumnName sysname, \r\n\tColumnType sysname, \r\n\tDefinedTypeSize smallint, \r\n\tActualMaxBytes smallint,\r\n\tUTF8BytesNeeded smallint,\r\n\t[isdone] bit,\r\n CONSTRAINT PK_ObjName_ColName\r\n PRIMARY KEY NONCLUSTERED (ObjectName, ColumnName)\r\n\t\tWITH (IGNORE_DUP_KEY = ON)\r\n\t);\r\n\r\nINSERT INTO #tmpObjects\r\nSELECT QUOTENAME(SS.[name]) + '.' + QUOTENAME(STbl.[name]), QUOTENAME(SC.[name]), ST.[name], SC.max_length, NULL, NULL, 0\r\nFROM sys.columns AS SC\r\nINNER JOIN sys.types AS ST ON SC.user_type_id = ST.user_type_id\r\nINNER JOIN sys.tables AS STbl ON STbl.[object_id] = SC.[object_id]\r\nINNER JOIN sys.schemas AS SS ON STbl.[schema_id] = SS.[schema_id]\r\nWHERE STbl.[type] = 'U' \r\n\tAND STbl.is_ms_shipped = 0\r\n\t--AND STbl.temporal_type IN (0,1)\r\n\tAND ST.system_type_id IN (167, 175, 231, 239)\r\n\tAND ST.[name] <> 'sysname'\r\n\tAND SC.is_hidden = 0\r\n\tAND SC.max_length > 0;\r\n\r\nDECLARE @OName sysname, @CName sysname, @CurrBytes smallint, @UTF8Bytes smallint, @sqlcmd NVARCHAR(4000), @params NVARCHAR(60), @cnt int, @maxcnt int\r\n\r\nSELECT @maxcnt = COUNT(*) FROM #tmpObjects;\r\nSET @cnt = 0 \r\nSET @params = '@CurrBytesOut smallint OUTPUT, @UTF8BytesOut smallint OUTPUT'\r\n\r\nWHILE @cnt < @maxcnt\r\nBEGIN\r\n\tSELECT TOP 1 @OName = ObjectName, @CName = ColumnName FROM #tmpObjects WHERE isdone = 0\r\n\tSELECT @sqlcmd = 'SELECT @CurrBytesOut = MAX(DATALENGTH(' + @CName + ')), @UTF8BytesOut = MAX(DATALENGTH(CAST(' + @CName + ' AS VARCHAR(4000)) COLLATE Latin1_General_100_CI_AI_SC_UTF8)) FROM ' + @OName; \r\n\r\n\tEXEC sp_executesql @sqlcmd, @params, @CurrBytesOut = @CurrBytes OUTPUT, @UTF8BytesOut = @UTF8Bytes OUTPUT\r\n\r\n\tUPDATE #tmpObjects\r\n\tSET ActualMaxBytes = @CurrBytes, UTF8BytesNeeded = @UTF8Bytes, isdone = 1 \r\n\tWHERE ObjectName = @OName AND ColumnName = @CName\r\n\r\n\tSET @cnt = @cnt + 1\r\nEND;\r\n\r\nSELECT * FROM #tmpObjects;", + "metadata": {}, + "outputs": [ + { + "output_type": "display_data", + "data": { + "text/html": "Commands completed successfully." + }, + "metadata": {} + }, + { + "output_type": "display_data", + "data": { + "text/html": "Total execution time: 00:00:00.0028408" + }, + "metadata": {} + }, + { + "output_type": "display_data", + "data": { + "text/html": "Commands completed successfully." + }, + "metadata": {} + }, + { + "output_type": "display_data", + "data": { + "text/html": "Total execution time: 00:00:00.0015389" + }, + "metadata": {} + }, + { + "output_type": "display_data", + "data": { + "text/html": "Commands completed successfully." + }, + "metadata": {} + }, + { + "output_type": "display_data", + "data": { + "text/html": "Total execution time: 00:00:00.0048617" + }, + "metadata": {} + }, + { + "output_type": "display_data", + "data": { + "text/html": "Warning: Null value is eliminated by an aggregate or other SET operation." + }, + "metadata": {} + }, + { + "output_type": "display_data", + "data": { + "text/html": "Warning: Null value is eliminated by an aggregate or other SET operation." + }, + "metadata": {} + }, + { + "output_type": "display_data", + "data": { + "text/html": "Warning: Null value is eliminated by an aggregate or other SET operation." + }, + "metadata": {} + }, + { + "output_type": "display_data", + "data": { + "text/html": "Warning: Null value is eliminated by an aggregate or other SET operation." + }, + "metadata": {} + }, + { + "output_type": "display_data", + "data": { + "text/html": "Warning: Null value is eliminated by an aggregate or other SET operation." + }, + "metadata": {} + }, + { + "output_type": "display_data", + "data": { + "text/html": "Warning: Null value is eliminated by an aggregate or other SET operation." + }, + "metadata": {} + }, + { + "output_type": "display_data", + "data": { + "text/html": "Warning: Null value is eliminated by an aggregate or other SET operation." + }, + "metadata": {} + }, + { + "output_type": "display_data", + "data": { + "text/html": "Warning: Null value is eliminated by an aggregate or other SET operation." + }, + "metadata": {} + }, + { + "output_type": "display_data", + "data": { + "text/html": "Warning: Null value is eliminated by an aggregate or other SET operation." + }, + "metadata": {} + }, + { + "output_type": "display_data", + "data": { + "text/html": "Warning: Null value is eliminated by an aggregate or other SET operation." + }, + "metadata": {} + }, + { + "output_type": "display_data", + "data": { + "text/html": "Warning: Null value is eliminated by an aggregate or other SET operation." + }, + "metadata": {} + }, + { + "output_type": "display_data", + "data": { + "text/html": "Warning: Null value is eliminated by an aggregate or other SET operation." + }, + "metadata": {} + }, + { + "output_type": "display_data", + "data": { + "text/html": "Warning: Null value is eliminated by an aggregate or other SET operation." + }, + "metadata": {} + }, + { + "output_type": "display_data", + "data": { + "text/html": "Warning: Null value is eliminated by an aggregate or other SET operation." + }, + "metadata": {} + }, + { + "output_type": "display_data", + "data": { + "text/html": "Warning: Null value is eliminated by an aggregate or other SET operation." + }, + "metadata": {} + }, + { + "output_type": "display_data", + "data": { + "text/html": "Warning: Null value is eliminated by an aggregate or other SET operation." + }, + "metadata": {} + }, + { + "output_type": "display_data", + "data": { + "text/html": "Warning: Null value is eliminated by an aggregate or other SET operation." + }, + "metadata": {} + }, + { + "output_type": "display_data", + "data": { + "text/html": "Warning: Null value is eliminated by an aggregate or other SET operation." + }, + "metadata": {} + }, + { + "output_type": "display_data", + "data": { + "text/html": "Warning: Null value is eliminated by an aggregate or other SET operation." + }, + "metadata": {} + }, + { + "output_type": "display_data", + "data": { + "text/html": "Warning: Null value is eliminated by an aggregate or other SET operation." + }, + "metadata": {} + }, + { + "output_type": "display_data", + "data": { + "text/html": "Total execution time: 00:00:01.1670323" + }, + "metadata": {} + }, + { + "output_type": "execute_result", + "metadata": {}, + "execution_count": 7, + "data": { + "application/vnd.dataresource+json": { + "schema": { + "fields": [ + { + "name": "ObjectName" + }, + { + "name": "ColumnName" + }, + { + "name": "ColumnType" + }, + { + "name": "DefinedTypeSize" + }, + { + "name": "ActualMaxBytes" + }, + { + "name": "UTF8BytesNeeded" + }, + { + "name": "isdone" + } + ] + }, + "data": [ + { + "0": "[Application].[Cities]", + "1": "[CityName]", + "2": "nvarchar", + "3": "100", + "4": "70", + "5": "35", + "6": "1" + }, + { + "0": "[Application].[Cities_Archive]", + "1": "[CityName]", + "2": "nvarchar", + "3": "100", + "4": "32", + "5": "16", + "6": "1" + }, + { + "0": "[Application].[Countries]", + "1": "[Continent]", + "2": "nvarchar", + "3": "60", + "4": "46", + "5": "23", + "6": "1" + }, + { + "0": "[Application].[Countries]", + "1": "[CountryName]", + "2": "nvarchar", + "3": "120", + "4": "42", + "5": "23", + "6": "1" + }, + { + "0": "[Application].[Countries]", + "1": "[CountryType]", + "2": "nvarchar", + "3": "40", + "4": "30", + "5": "15", + "6": "1" + }, + { + "0": "[Application].[Countries]", + "1": "[FormalName]", + "2": "nvarchar", + "3": "120", + "4": "104", + "5": "52", + "6": "1" + }, + { + "0": "[Application].[Countries]", + "1": "[IsoAlpha3Code]", + "2": "nvarchar", + "3": "6", + "4": "6", + "5": "3", + "6": "1" + }, + { + "0": "[Application].[Countries]", + "1": "[Region]", + "2": "nvarchar", + "3": "60", + "4": "16", + "5": "8", + "6": "1" + }, + { + "0": "[Application].[Countries]", + "1": "[Subregion]", + "2": "nvarchar", + "3": "60", + "4": "50", + "5": "25", + "6": "1" + }, + { + "0": "[Application].[Countries_Archive]", + "1": "[Continent]", + "2": "nvarchar", + "3": "60", + "4": "26", + "5": "13", + "6": "1" + }, + { + "0": "[Application].[Countries_Archive]", + "1": "[CountryName]", + "2": "nvarchar", + "3": "120", + "4": "36", + "5": "18", + "6": "1" + }, + { + "0": "[Application].[Countries_Archive]", + "1": "[CountryType]", + "2": "nvarchar", + "3": "40", + "4": "30", + "5": "15", + "6": "1" + }, + { + "0": "[Application].[Countries_Archive]", + "1": "[FormalName]", + "2": "nvarchar", + "3": "120", + "4": "74", + "5": "37", + "6": "1" + }, + { + "0": "[Application].[Countries_Archive]", + "1": "[IsoAlpha3Code]", + "2": "nvarchar", + "3": "6", + "4": "6", + "5": "3", + "6": "1" + }, + { + "0": "[Application].[Countries_Archive]", + "1": "[Region]", + "2": "nvarchar", + "3": "60", + "4": "16", + "5": "8", + "6": "1" + }, + { + "0": "[Application].[Countries_Archive]", + "1": "[Subregion]", + "2": "nvarchar", + "3": "60", + "4": "50", + "5": "25", + "6": "1" + }, + { + "0": "[Application].[DeliveryMethods]", + "1": "[DeliveryMethodName]", + "2": "nvarchar", + "3": "100", + "4": "54", + "5": "27", + "6": "1" + }, + { + "0": "[Application].[DeliveryMethods_Archive]", + "1": "[DeliveryMethodName]", + "2": "nvarchar", + "3": "100", + "4": "32", + "5": "16", + "6": "1" + }, + { + "0": "[Application].[PaymentMethods]", + "1": "[PaymentMethodName]", + "2": "nvarchar", + "3": "100", + "4": "22", + "5": "11", + "6": "1" + }, + { + "0": "[Application].[PaymentMethods_Archive]", + "1": "[PaymentMethodName]", + "2": "nvarchar", + "3": "100", + "4": "22", + "5": "11", + "6": "1" + }, + { + "0": "[Application].[People]", + "1": "[EmailAddress]", + "2": "nvarchar", + "3": "512", + "4": "66", + "5": "33", + "6": "1" + }, + { + "0": "[Application].[People]", + "1": "[FaxNumber]", + "2": "nvarchar", + "3": "40", + "4": "28", + "5": "14", + "6": "1" + }, + { + "0": "[Application].[People]", + "1": "[FullName]", + "2": "nvarchar", + "3": "100", + "4": "58", + "5": "29", + "6": "1" + }, + { + "0": "[Application].[People]", + "1": "[LogonName]", + "2": "nvarchar", + "3": "100", + "4": "64", + "5": "32", + "6": "1" + }, + { + "0": "[Application].[People]", + "1": "[PhoneNumber]", + "2": "nvarchar", + "3": "40", + "4": "28", + "5": "14", + "6": "1" + }, + { + "0": "[Application].[People]", + "1": "[PreferredName]", + "2": "nvarchar", + "3": "100", + "4": "40", + "5": "20", + "6": "1" + }, + { + "0": "[Application].[People]", + "1": "[SearchName]", + "2": "nvarchar", + "3": "202", + "4": "92", + "5": "46", + "6": "1" + }, + { + "0": "[Application].[People_Archive]", + "1": "[EmailAddress]", + "2": "nvarchar", + "3": "512", + "4": "66", + "5": "33", + "6": "1" + }, + { + "0": "[Application].[People_Archive]", + "1": "[FaxNumber]", + "2": "nvarchar", + "3": "40", + "4": "28", + "5": "14", + "6": "1" + }, + { + "0": "[Application].[People_Archive]", + "1": "[FullName]", + "2": "nvarchar", + "3": "100", + "4": "46", + "5": "23", + "6": "1" + }, + { + "0": "[Application].[People_Archive]", + "1": "[LogonName]", + "2": "nvarchar", + "3": "100", + "4": "64", + "5": "32", + "6": "1" + }, + { + "0": "[Application].[People_Archive]", + "1": "[PhoneNumber]", + "2": "nvarchar", + "3": "40", + "4": "28", + "5": "14", + "6": "1" + }, + { + "0": "[Application].[People_Archive]", + "1": "[PreferredName]", + "2": "nvarchar", + "3": "100", + "4": "40", + "5": "20", + "6": "1" + }, + { + "0": "[Application].[People_Archive]", + "1": "[SearchName]", + "2": "nvarchar", + "3": "202", + "4": "82", + "5": "41", + "6": "1" + }, + { + "0": "[Application].[StateProvinces]", + "1": "[SalesTerritory]", + "2": "nvarchar", + "3": "100", + "4": "28", + "5": "14", + "6": "1" + }, + { + "0": "[Application].[StateProvinces]", + "1": "[StateProvinceCode]", + "2": "nvarchar", + "3": "10", + "4": "4", + "5": "2", + "6": "1" + }, + { + "0": "[Application].[StateProvinces]", + "1": "[StateProvinceName]", + "2": "nvarchar", + "3": "100", + "4": "58", + "5": "29", + "6": "1" + }, + { + "0": "[Application].[StateProvinces_Archive]", + "1": "[SalesTerritory]", + "2": "nvarchar", + "3": "100", + "4": "28", + "5": "14", + "6": "1" + }, + { + "0": "[Application].[StateProvinces_Archive]", + "1": "[StateProvinceCode]", + "2": "nvarchar", + "3": "10", + "4": "4", + "5": "2", + "6": "1" + }, + { + "0": "[Application].[StateProvinces_Archive]", + "1": "[StateProvinceName]", + "2": "nvarchar", + "3": "100", + "4": "52", + "5": "26", + "6": "1" + }, + { + "0": "[Application].[SystemParameters]", + "1": "[DeliveryAddressLine1]", + "2": "nvarchar", + "3": "120", + "4": "16", + "5": "8", + "6": "1" + }, + { + "0": "[Application].[SystemParameters]", + "1": "[DeliveryAddressLine2]", + "2": "nvarchar", + "3": "120", + "4": "72", + "5": "36", + "6": "1" + }, + { + "0": "[Application].[SystemParameters]", + "1": "[DeliveryPostalCode]", + "2": "nvarchar", + "3": "20", + "4": "10", + "5": "5", + "6": "1" + }, + { + "0": "[Application].[SystemParameters]", + "1": "[PostalAddressLine1]", + "2": "nvarchar", + "3": "120", + "4": "26", + "5": "13", + "6": "1" + }, + { + "0": "[Application].[SystemParameters]", + "1": "[PostalAddressLine2]", + "2": "nvarchar", + "3": "120", + "4": "32", + "5": "16", + "6": "1" + }, + { + "0": "[Application].[SystemParameters]", + "1": "[PostalPostalCode]", + "2": "nvarchar", + "3": "20", + "4": "10", + "5": "5", + "6": "1" + }, + { + "0": "[Application].[TransactionTypes]", + "1": "[TransactionTypeName]", + "2": "nvarchar", + "3": "100", + "4": "58", + "5": "29", + "6": "1" + }, + { + "0": "[Application].[TransactionTypes_Archive]", + "1": "[TransactionTypeName]", + "2": "nvarchar", + "3": "100", + "4": "12", + "5": "6", + "6": "1" + }, + { + "0": "[Purchasing].[PurchaseOrderLines]", + "1": "[Description]", + "2": "nvarchar", + "3": "200", + "4": "170", + "5": "85", + "6": "1" + }, + { + "0": "[Purchasing].[PurchaseOrders]", + "1": "[SupplierReference]", + "2": "nvarchar", + "3": "40", + "4": "18", + "5": "9", + "6": "1" + }, + { + "0": "[Purchasing].[SupplierCategories]", + "1": "[SupplierCategoryName]", + "2": "nvarchar", + "3": "100", + "4": "54", + "5": "27", + "6": "1" + }, + { + "0": "[Purchasing].[SupplierCategories_Archive]", + "1": "[SupplierCategoryName]", + "2": "nvarchar", + "3": "100", + "4": "14", + "5": "7", + "6": "1" + }, + { + "0": "[Purchasing].[Suppliers]", + "1": "[BankAccountBranch]", + "2": "nvarchar", + "3": "100", + "4": "62", + "5": "31", + "6": "1" + }, + { + "0": "[Purchasing].[Suppliers]", + "1": "[BankAccountCode]", + "2": "nvarchar", + "3": "40", + "4": "12", + "5": "6", + "6": "1" + }, + { + "0": "[Purchasing].[Suppliers]", + "1": "[BankAccountName]", + "2": "nvarchar", + "3": "100", + "4": "48", + "5": "24", + "6": "1" + }, + { + "0": "[Purchasing].[Suppliers]", + "1": "[BankAccountNumber]", + "2": "nvarchar", + "3": "40", + "4": "20", + "5": "10", + "6": "1" + }, + { + "0": "[Purchasing].[Suppliers]", + "1": "[BankInternationalCode]", + "2": "nvarchar", + "3": "40", + "4": "10", + "5": "5", + "6": "1" + }, + { + "0": "[Purchasing].[Suppliers]", + "1": "[DeliveryAddressLine1]", + "2": "nvarchar", + "3": "120", + "4": "16", + "5": "8", + "6": "1" + }, + { + "0": "[Purchasing].[Suppliers]", + "1": "[DeliveryAddressLine2]", + "2": "nvarchar", + "3": "120", + "4": "52", + "5": "26", + "6": "1" + }, + { + "0": "[Purchasing].[Suppliers]", + "1": "[DeliveryPostalCode]", + "2": "nvarchar", + "3": "20", + "4": "10", + "5": "5", + "6": "1" + }, + { + "0": "[Purchasing].[Suppliers]", + "1": "[FaxNumber]", + "2": "nvarchar", + "3": "40", + "4": "28", + "5": "14", + "6": "1" + }, + { + "0": "[Purchasing].[Suppliers]", + "1": "[PhoneNumber]", + "2": "nvarchar", + "3": "40", + "4": "28", + "5": "14", + "6": "1" + }, + { + "0": "[Purchasing].[Suppliers]", + "1": "[PostalAddressLine1]", + "2": "nvarchar", + "3": "120", + "4": "24", + "5": "12", + "6": "1" + }, + { + "0": "[Purchasing].[Suppliers]", + "1": "[PostalAddressLine2]", + "2": "nvarchar", + "3": "120", + "4": "20", + "5": "10", + "6": "1" + }, + { + "0": "[Purchasing].[Suppliers]", + "1": "[PostalPostalCode]", + "2": "nvarchar", + "3": "20", + "4": "10", + "5": "5", + "6": "1" + }, + { + "0": "[Purchasing].[Suppliers]", + "1": "[SupplierName]", + "2": "nvarchar", + "3": "200", + "4": "48", + "5": "24", + "6": "1" + }, + { + "0": "[Purchasing].[Suppliers]", + "1": "[SupplierReference]", + "2": "nvarchar", + "3": "40", + "4": "22", + "5": "11", + "6": "1" + }, + { + "0": "[Purchasing].[Suppliers]", + "1": "[WebsiteURL]", + "2": "nvarchar", + "3": "512", + "4": "74", + "5": "37", + "6": "1" + }, + { + "0": "[Purchasing].[Suppliers_Archive]", + "1": "[BankAccountBranch]", + "2": "nvarchar", + "3": "100", + "4": "62", + "5": "31", + "6": "1" + }, + { + "0": "[Purchasing].[Suppliers_Archive]", + "1": "[BankAccountCode]", + "2": "nvarchar", + "3": "40", + "4": "12", + "5": "6", + "6": "1" + }, + { + "0": "[Purchasing].[Suppliers_Archive]", + "1": "[BankAccountName]", + "2": "nvarchar", + "3": "100", + "4": "48", + "5": "24", + "6": "1" + }, + { + "0": "[Purchasing].[Suppliers_Archive]", + "1": "[BankAccountNumber]", + "2": "nvarchar", + "3": "40", + "4": "20", + "5": "10", + "6": "1" + }, + { + "0": "[Purchasing].[Suppliers_Archive]", + "1": "[BankInternationalCode]", + "2": "nvarchar", + "3": "40", + "4": "10", + "5": "5", + "6": "1" + }, + { + "0": "[Purchasing].[Suppliers_Archive]", + "1": "[DeliveryAddressLine1]", + "2": "nvarchar", + "3": "120", + "4": "16", + "5": "8", + "6": "1" + }, + { + "0": "[Purchasing].[Suppliers_Archive]", + "1": "[DeliveryAddressLine2]", + "2": "nvarchar", + "3": "120", + "4": "52", + "5": "26", + "6": "1" + }, + { + "0": "[Purchasing].[Suppliers_Archive]", + "1": "[DeliveryPostalCode]", + "2": "nvarchar", + "3": "20", + "4": "10", + "5": "5", + "6": "1" + }, + { + "0": "[Purchasing].[Suppliers_Archive]", + "1": "[FaxNumber]", + "2": "nvarchar", + "3": "40", + "4": "28", + "5": "14", + "6": "1" + }, + { + "0": "[Purchasing].[Suppliers_Archive]", + "1": "[PhoneNumber]", + "2": "nvarchar", + "3": "40", + "4": "28", + "5": "14", + "6": "1" + }, + { + "0": "[Purchasing].[Suppliers_Archive]", + "1": "[PostalAddressLine1]", + "2": "nvarchar", + "3": "120", + "4": "24", + "5": "12", + "6": "1" + }, + { + "0": "[Purchasing].[Suppliers_Archive]", + "1": "[PostalAddressLine2]", + "2": "nvarchar", + "3": "120", + "4": "20", + "5": "10", + "6": "1" + }, + { + "0": "[Purchasing].[Suppliers_Archive]", + "1": "[PostalPostalCode]", + "2": "nvarchar", + "3": "20", + "4": "10", + "5": "5", + "6": "1" + }, + { + "0": "[Purchasing].[Suppliers_Archive]", + "1": "[SupplierName]", + "2": "nvarchar", + "3": "200", + "4": "48", + "5": "24", + "6": "1" + }, + { + "0": "[Purchasing].[Suppliers_Archive]", + "1": "[SupplierReference]", + "2": "nvarchar", + "3": "40", + "4": "22", + "5": "11", + "6": "1" + }, + { + "0": "[Purchasing].[Suppliers_Archive]", + "1": "[WebsiteURL]", + "2": "nvarchar", + "3": "512", + "4": "74", + "5": "37", + "6": "1" + }, + { + "0": "[Purchasing].[SupplierTransactions]", + "1": "[SupplierInvoiceNumber]", + "2": "nvarchar", + "3": "40", + "4": "8", + "5": "4", + "6": "1" + }, + { + "0": "[Sales].[BuyingGroups]", + "1": "[BuyingGroupName]", + "2": "nvarchar", + "3": "100", + "4": "26", + "5": "13", + "6": "1" + }, + { + "0": "[Sales].[BuyingGroups_Archive]", + "1": "[BuyingGroupName]", + "2": "nvarchar", + "3": "100", + "4": "NULL", + "5": "NULL", + "6": "1" + }, + { + "0": "[Sales].[CustomerCategories]", + "1": "[CustomerCategoryName]", + "2": "nvarchar", + "3": "100", + "4": "32", + "5": "16", + "6": "1" + }, + { + "0": "[Sales].[CustomerCategories_Archive]", + "1": "[CustomerCategoryName]", + "2": "nvarchar", + "3": "100", + "4": "16", + "5": "8", + "6": "1" + }, + { + "0": "[Sales].[Customers]", + "1": "[CustomerName]", + "2": "nvarchar", + "3": "200", + "4": "76", + "5": "38", + "6": "1" + }, + { + "0": "[Sales].[Customers]", + "1": "[DeliveryAddressLine1]", + "2": "nvarchar", + "3": "120", + "4": "18", + "5": "9", + "6": "1" + }, + { + "0": "[Sales].[Customers]", + "1": "[DeliveryAddressLine2]", + "2": "nvarchar", + "3": "120", + "4": "52", + "5": "26", + "6": "1" + }, + { + "0": "[Sales].[Customers]", + "1": "[DeliveryPostalCode]", + "2": "nvarchar", + "3": "20", + "4": "10", + "5": "5", + "6": "1" + }, + { + "0": "[Sales].[Customers]", + "1": "[DeliveryRun]", + "2": "nvarchar", + "3": "10", + "4": "0", + "5": "0", + "6": "1" + }, + { + "0": "[Sales].[Customers]", + "1": "[FaxNumber]", + "2": "nvarchar", + "3": "40", + "4": "28", + "5": "14", + "6": "1" + }, + { + "0": "[Sales].[Customers]", + "1": "[PhoneNumber]", + "2": "nvarchar", + "3": "40", + "4": "28", + "5": "14", + "6": "1" + }, + { + "0": "[Sales].[Customers]", + "1": "[PostalAddressLine1]", + "2": "nvarchar", + "3": "120", + "4": "22", + "5": "11", + "6": "1" + }, + { + "0": "[Sales].[Customers]", + "1": "[PostalAddressLine2]", + "2": "nvarchar", + "3": "120", + "4": "42", + "5": "21", + "6": "1" + }, + { + "0": "[Sales].[Customers]", + "1": "[PostalPostalCode]", + "2": "nvarchar", + "3": "20", + "4": "10", + "5": "5", + "6": "1" + }, + { + "0": "[Sales].[Customers]", + "1": "[RunPosition]", + "2": "nvarchar", + "3": "10", + "4": "0", + "5": "0", + "6": "1" + }, + { + "0": "[Sales].[Customers]", + "1": "[WebsiteURL]", + "2": "nvarchar", + "3": "512", + "4": "104", + "5": "52", + "6": "1" + }, + { + "0": "[Sales].[Customers_Archive]", + "1": "[CustomerName]", + "2": "nvarchar", + "3": "200", + "4": "46", + "5": "23", + "6": "1" + }, + { + "0": "[Sales].[Customers_Archive]", + "1": "[DeliveryAddressLine1]", + "2": "nvarchar", + "3": "120", + "4": "16", + "5": "8", + "6": "1" + }, + { + "0": "[Sales].[Customers_Archive]", + "1": "[DeliveryAddressLine2]", + "2": "nvarchar", + "3": "120", + "4": "48", + "5": "24", + "6": "1" + }, + { + "0": "[Sales].[Customers_Archive]", + "1": "[DeliveryPostalCode]", + "2": "nvarchar", + "3": "20", + "4": "10", + "5": "5", + "6": "1" + }, + { + "0": "[Sales].[Customers_Archive]", + "1": "[DeliveryRun]", + "2": "nvarchar", + "3": "10", + "4": "0", + "5": "0", + "6": "1" + }, + { + "0": "[Sales].[Customers_Archive]", + "1": "[FaxNumber]", + "2": "nvarchar", + "3": "40", + "4": "28", + "5": "14", + "6": "1" + }, + { + "0": "[Sales].[Customers_Archive]", + "1": "[PhoneNumber]", + "2": "nvarchar", + "3": "40", + "4": "28", + "5": "14", + "6": "1" + }, + { + "0": "[Sales].[Customers_Archive]", + "1": "[PostalAddressLine1]", + "2": "nvarchar", + "3": "120", + "4": "22", + "5": "11", + "6": "1" + }, + { + "0": "[Sales].[Customers_Archive]", + "1": "[PostalAddressLine2]", + "2": "nvarchar", + "3": "120", + "4": "34", + "5": "17", + "6": "1" + }, + { + "0": "[Sales].[Customers_Archive]", + "1": "[PostalPostalCode]", + "2": "nvarchar", + "3": "20", + "4": "10", + "5": "5", + "6": "1" + }, + { + "0": "[Sales].[Customers_Archive]", + "1": "[RunPosition]", + "2": "nvarchar", + "3": "10", + "4": "0", + "5": "0", + "6": "1" + }, + { + "0": "[Sales].[Customers_Archive]", + "1": "[WebsiteURL]", + "2": "nvarchar", + "3": "512", + "4": "96", + "5": "48", + "6": "1" + }, + { + "0": "[Sales].[InvoiceLines]", + "1": "[Description]", + "2": "nvarchar", + "3": "200", + "4": "170", + "5": "85", + "6": "1" + }, + { + "0": "[Sales].[Invoices]", + "1": "[ConfirmedReceivedBy]", + "2": "nvarchar", + "3": "8000", + "4": "58", + "5": "29", + "6": "1" + }, + { + "0": "[Sales].[Invoices]", + "1": "[CustomerPurchaseOrderNumber]", + "2": "nvarchar", + "3": "40", + "4": "10", + "5": "5", + "6": "1" + }, + { + "0": "[Sales].[Invoices]", + "1": "[DeliveryRun]", + "2": "nvarchar", + "3": "10", + "4": "0", + "5": "0", + "6": "1" + }, + { + "0": "[Sales].[Invoices]", + "1": "[RunPosition]", + "2": "nvarchar", + "3": "10", + "4": "0", + "5": "0", + "6": "1" + }, + { + "0": "[Sales].[OrderLines]", + "1": "[Description]", + "2": "nvarchar", + "3": "200", + "4": "170", + "5": "85", + "6": "1" + }, + { + "0": "[Sales].[Orders]", + "1": "[CustomerPurchaseOrderNumber]", + "2": "nvarchar", + "3": "40", + "4": "10", + "5": "5", + "6": "1" + }, + { + "0": "[Sales].[SpecialDeals]", + "1": "[DealDescription]", + "2": "nvarchar", + "3": "60", + "4": "48", + "5": "24", + "6": "1" + }, + { + "0": "[Warehouse].[Colors]", + "1": "[ColorName]", + "2": "nvarchar", + "3": "40", + "4": "22", + "5": "11", + "6": "1" + }, + { + "0": "[Warehouse].[Colors_Archive]", + "1": "[ColorName]", + "2": "nvarchar", + "3": "40", + "4": "8", + "5": "4", + "6": "1" + }, + { + "0": "[Warehouse].[PackageTypes]", + "1": "[PackageTypeName]", + "2": "nvarchar", + "3": "100", + "4": "12", + "5": "6", + "6": "1" + }, + { + "0": "[Warehouse].[PackageTypes_Archive]", + "1": "[PackageTypeName]", + "2": "nvarchar", + "3": "100", + "4": "NULL", + "5": "NULL", + "6": "1" + }, + { + "0": "[Warehouse].[StockGroups]", + "1": "[StockGroupName]", + "2": "nvarchar", + "3": "100", + "4": "38", + "5": "19", + "6": "1" + }, + { + "0": "[Warehouse].[StockGroups_Archive]", + "1": "[StockGroupName]", + "2": "nvarchar", + "3": "100", + "4": "16", + "5": "8", + "6": "1" + }, + { + "0": "[Warehouse].[StockItemHoldings]", + "1": "[BinLocation]", + "2": "nvarchar", + "3": "40", + "4": "8", + "5": "4", + "6": "1" + }, + { + "0": "[Warehouse].[StockItems]", + "1": "[Barcode]", + "2": "nvarchar", + "3": "100", + "4": "26", + "5": "13", + "6": "1" + }, + { + "0": "[Warehouse].[StockItems]", + "1": "[Brand]", + "2": "nvarchar", + "3": "100", + "4": "18", + "5": "9", + "6": "1" + }, + { + "0": "[Warehouse].[StockItems]", + "1": "[Size]", + "2": "nvarchar", + "3": "40", + "4": "26", + "5": "13", + "6": "1" + }, + { + "0": "[Warehouse].[StockItems]", + "1": "[StockItemName]", + "2": "nvarchar", + "3": "200", + "4": "170", + "5": "85", + "6": "1" + }, + { + "0": "[Warehouse].[StockItems_Archive]", + "1": "[Barcode]", + "2": "nvarchar", + "3": "100", + "4": "26", + "5": "13", + "6": "1" + }, + { + "0": "[Warehouse].[StockItems_Archive]", + "1": "[Brand]", + "2": "nvarchar", + "3": "100", + "4": "18", + "5": "9", + "6": "1" + }, + { + "0": "[Warehouse].[StockItems_Archive]", + "1": "[Size]", + "2": "nvarchar", + "3": "40", + "4": "26", + "5": "13", + "6": "1" + }, + { + "0": "[Warehouse].[StockItems_Archive]", + "1": "[StockItemName]", + "2": "nvarchar", + "3": "200", + "4": "170", + "5": "85", + "6": "1" + }, + { + "0": "[Warehouse].[VehicleTemperatures]", + "1": "[FullSensorData]", + "2": "nvarchar", + "3": "2000", + "4": "392", + "5": "196", + "6": "1" + }, + { + "0": "[Warehouse].[VehicleTemperatures]", + "1": "[VehicleRegistration]", + "2": "nvarchar", + "3": "40", + "4": "18", + "5": "9", + "6": "1" + } + ] + }, + "text/html": "
| ObjectName | ColumnName | ColumnType | DefinedTypeSize | ActualMaxBytes | UTF8BytesNeeded | isdone |
|---|---|---|---|---|---|---|
| [Application].[Cities] | [CityName] | nvarchar | 100 | 70 | 35 | 1 |
| [Application].[Cities_Archive] | [CityName] | nvarchar | 100 | 32 | 16 | 1 |
| [Application].[Countries] | [Continent] | nvarchar | 60 | 46 | 23 | 1 |
| [Application].[Countries] | [CountryName] | nvarchar | 120 | 42 | 23 | 1 |
| [Application].[Countries] | [CountryType] | nvarchar | 40 | 30 | 15 | 1 |
| [Application].[Countries] | [FormalName] | nvarchar | 120 | 104 | 52 | 1 |
| [Application].[Countries] | [IsoAlpha3Code] | nvarchar | 6 | 6 | 3 | 1 |
| [Application].[Countries] | [Region] | nvarchar | 60 | 16 | 8 | 1 |
| [Application].[Countries] | [Subregion] | nvarchar | 60 | 50 | 25 | 1 |
| [Application].[Countries_Archive] | [Continent] | nvarchar | 60 | 26 | 13 | 1 |
| [Application].[Countries_Archive] | [CountryName] | nvarchar | 120 | 36 | 18 | 1 |
| [Application].[Countries_Archive] | [CountryType] | nvarchar | 40 | 30 | 15 | 1 |
| [Application].[Countries_Archive] | [FormalName] | nvarchar | 120 | 74 | 37 | 1 |
| [Application].[Countries_Archive] | [IsoAlpha3Code] | nvarchar | 6 | 6 | 3 | 1 |
| [Application].[Countries_Archive] | [Region] | nvarchar | 60 | 16 | 8 | 1 |
| [Application].[Countries_Archive] | [Subregion] | nvarchar | 60 | 50 | 25 | 1 |
| [Application].[DeliveryMethods] | [DeliveryMethodName] | nvarchar | 100 | 54 | 27 | 1 |
| [Application].[DeliveryMethods_Archive] | [DeliveryMethodName] | nvarchar | 100 | 32 | 16 | 1 |
| [Application].[PaymentMethods] | [PaymentMethodName] | nvarchar | 100 | 22 | 11 | 1 |
| [Application].[PaymentMethods_Archive] | [PaymentMethodName] | nvarchar | 100 | 22 | 11 | 1 |
| [Application].[People] | [EmailAddress] | nvarchar | 512 | 66 | 33 | 1 |
| [Application].[People] | [FaxNumber] | nvarchar | 40 | 28 | 14 | 1 |
| [Application].[People] | [FullName] | nvarchar | 100 | 58 | 29 | 1 |
| [Application].[People] | [LogonName] | nvarchar | 100 | 64 | 32 | 1 |
| [Application].[People] | [PhoneNumber] | nvarchar | 40 | 28 | 14 | 1 |
| [Application].[People] | [PreferredName] | nvarchar | 100 | 40 | 20 | 1 |
| [Application].[People] | [SearchName] | nvarchar | 202 | 92 | 46 | 1 |
| [Application].[People_Archive] | [EmailAddress] | nvarchar | 512 | 66 | 33 | 1 |
| [Application].[People_Archive] | [FaxNumber] | nvarchar | 40 | 28 | 14 | 1 |
| [Application].[People_Archive] | [FullName] | nvarchar | 100 | 46 | 23 | 1 |
| [Application].[People_Archive] | [LogonName] | nvarchar | 100 | 64 | 32 | 1 |
| [Application].[People_Archive] | [PhoneNumber] | nvarchar | 40 | 28 | 14 | 1 |
| [Application].[People_Archive] | [PreferredName] | nvarchar | 100 | 40 | 20 | 1 |
| [Application].[People_Archive] | [SearchName] | nvarchar | 202 | 82 | 41 | 1 |
| [Application].[StateProvinces] | [SalesTerritory] | nvarchar | 100 | 28 | 14 | 1 |
| [Application].[StateProvinces] | [StateProvinceCode] | nvarchar | 10 | 4 | 2 | 1 |
| [Application].[StateProvinces] | [StateProvinceName] | nvarchar | 100 | 58 | 29 | 1 |
| [Application].[StateProvinces_Archive] | [SalesTerritory] | nvarchar | 100 | 28 | 14 | 1 |
| [Application].[StateProvinces_Archive] | [StateProvinceCode] | nvarchar | 10 | 4 | 2 | 1 |
| [Application].[StateProvinces_Archive] | [StateProvinceName] | nvarchar | 100 | 52 | 26 | 1 |
| [Application].[SystemParameters] | [DeliveryAddressLine1] | nvarchar | 120 | 16 | 8 | 1 |
| [Application].[SystemParameters] | [DeliveryAddressLine2] | nvarchar | 120 | 72 | 36 | 1 |
| [Application].[SystemParameters] | [DeliveryPostalCode] | nvarchar | 20 | 10 | 5 | 1 |
| [Application].[SystemParameters] | [PostalAddressLine1] | nvarchar | 120 | 26 | 13 | 1 |
| [Application].[SystemParameters] | [PostalAddressLine2] | nvarchar | 120 | 32 | 16 | 1 |
| [Application].[SystemParameters] | [PostalPostalCode] | nvarchar | 20 | 10 | 5 | 1 |
| [Application].[TransactionTypes] | [TransactionTypeName] | nvarchar | 100 | 58 | 29 | 1 |
| [Application].[TransactionTypes_Archive] | [TransactionTypeName] | nvarchar | 100 | 12 | 6 | 1 |
| [Purchasing].[PurchaseOrderLines] | [Description] | nvarchar | 200 | 170 | 85 | 1 |
| [Purchasing].[PurchaseOrders] | [SupplierReference] | nvarchar | 40 | 18 | 9 | 1 |
| [Purchasing].[SupplierCategories] | [SupplierCategoryName] | nvarchar | 100 | 54 | 27 | 1 |
| [Purchasing].[SupplierCategories_Archive] | [SupplierCategoryName] | nvarchar | 100 | 14 | 7 | 1 |
| [Purchasing].[Suppliers] | [BankAccountBranch] | nvarchar | 100 | 62 | 31 | 1 |
| [Purchasing].[Suppliers] | [BankAccountCode] | nvarchar | 40 | 12 | 6 | 1 |
| [Purchasing].[Suppliers] | [BankAccountName] | nvarchar | 100 | 48 | 24 | 1 |
| [Purchasing].[Suppliers] | [BankAccountNumber] | nvarchar | 40 | 20 | 10 | 1 |
| [Purchasing].[Suppliers] | [BankInternationalCode] | nvarchar | 40 | 10 | 5 | 1 |
| [Purchasing].[Suppliers] | [DeliveryAddressLine1] | nvarchar | 120 | 16 | 8 | 1 |
| [Purchasing].[Suppliers] | [DeliveryAddressLine2] | nvarchar | 120 | 52 | 26 | 1 |
| [Purchasing].[Suppliers] | [DeliveryPostalCode] | nvarchar | 20 | 10 | 5 | 1 |
| [Purchasing].[Suppliers] | [FaxNumber] | nvarchar | 40 | 28 | 14 | 1 |
| [Purchasing].[Suppliers] | [PhoneNumber] | nvarchar | 40 | 28 | 14 | 1 |
| [Purchasing].[Suppliers] | [PostalAddressLine1] | nvarchar | 120 | 24 | 12 | 1 |
| [Purchasing].[Suppliers] | [PostalAddressLine2] | nvarchar | 120 | 20 | 10 | 1 |
| [Purchasing].[Suppliers] | [PostalPostalCode] | nvarchar | 20 | 10 | 5 | 1 |
| [Purchasing].[Suppliers] | [SupplierName] | nvarchar | 200 | 48 | 24 | 1 |
| [Purchasing].[Suppliers] | [SupplierReference] | nvarchar | 40 | 22 | 11 | 1 |
| [Purchasing].[Suppliers] | [WebsiteURL] | nvarchar | 512 | 74 | 37 | 1 |
| [Purchasing].[Suppliers_Archive] | [BankAccountBranch] | nvarchar | 100 | 62 | 31 | 1 |
| [Purchasing].[Suppliers_Archive] | [BankAccountCode] | nvarchar | 40 | 12 | 6 | 1 |
| [Purchasing].[Suppliers_Archive] | [BankAccountName] | nvarchar | 100 | 48 | 24 | 1 |
| [Purchasing].[Suppliers_Archive] | [BankAccountNumber] | nvarchar | 40 | 20 | 10 | 1 |
| [Purchasing].[Suppliers_Archive] | [BankInternationalCode] | nvarchar | 40 | 10 | 5 | 1 |
| [Purchasing].[Suppliers_Archive] | [DeliveryAddressLine1] | nvarchar | 120 | 16 | 8 | 1 |
| [Purchasing].[Suppliers_Archive] | [DeliveryAddressLine2] | nvarchar | 120 | 52 | 26 | 1 |
| [Purchasing].[Suppliers_Archive] | [DeliveryPostalCode] | nvarchar | 20 | 10 | 5 | 1 |
| [Purchasing].[Suppliers_Archive] | [FaxNumber] | nvarchar | 40 | 28 | 14 | 1 |
| [Purchasing].[Suppliers_Archive] | [PhoneNumber] | nvarchar | 40 | 28 | 14 | 1 |
| [Purchasing].[Suppliers_Archive] | [PostalAddressLine1] | nvarchar | 120 | 24 | 12 | 1 |
| [Purchasing].[Suppliers_Archive] | [PostalAddressLine2] | nvarchar | 120 | 20 | 10 | 1 |
| [Purchasing].[Suppliers_Archive] | [PostalPostalCode] | nvarchar | 20 | 10 | 5 | 1 |
| [Purchasing].[Suppliers_Archive] | [SupplierName] | nvarchar | 200 | 48 | 24 | 1 |
| [Purchasing].[Suppliers_Archive] | [SupplierReference] | nvarchar | 40 | 22 | 11 | 1 |
| [Purchasing].[Suppliers_Archive] | [WebsiteURL] | nvarchar | 512 | 74 | 37 | 1 |
| [Purchasing].[SupplierTransactions] | [SupplierInvoiceNumber] | nvarchar | 40 | 8 | 4 | 1 |
| [Sales].[BuyingGroups] | [BuyingGroupName] | nvarchar | 100 | 26 | 13 | 1 |
| [Sales].[BuyingGroups_Archive] | [BuyingGroupName] | nvarchar | 100 | NULL | NULL | 1 |
| [Sales].[CustomerCategories] | [CustomerCategoryName] | nvarchar | 100 | 32 | 16 | 1 |
| [Sales].[CustomerCategories_Archive] | [CustomerCategoryName] | nvarchar | 100 | 16 | 8 | 1 |
| [Sales].[Customers] | [CustomerName] | nvarchar | 200 | 76 | 38 | 1 |
| [Sales].[Customers] | [DeliveryAddressLine1] | nvarchar | 120 | 18 | 9 | 1 |
| [Sales].[Customers] | [DeliveryAddressLine2] | nvarchar | 120 | 52 | 26 | 1 |
| [Sales].[Customers] | [DeliveryPostalCode] | nvarchar | 20 | 10 | 5 | 1 |
| [Sales].[Customers] | [DeliveryRun] | nvarchar | 10 | 0 | 0 | 1 |
| [Sales].[Customers] | [FaxNumber] | nvarchar | 40 | 28 | 14 | 1 |
| [Sales].[Customers] | [PhoneNumber] | nvarchar | 40 | 28 | 14 | 1 |
| [Sales].[Customers] | [PostalAddressLine1] | nvarchar | 120 | 22 | 11 | 1 |
| [Sales].[Customers] | [PostalAddressLine2] | nvarchar | 120 | 42 | 21 | 1 |
| [Sales].[Customers] | [PostalPostalCode] | nvarchar | 20 | 10 | 5 | 1 |
| [Sales].[Customers] | [RunPosition] | nvarchar | 10 | 0 | 0 | 1 |
| [Sales].[Customers] | [WebsiteURL] | nvarchar | 512 | 104 | 52 | 1 |
| [Sales].[Customers_Archive] | [CustomerName] | nvarchar | 200 | 46 | 23 | 1 |
| [Sales].[Customers_Archive] | [DeliveryAddressLine1] | nvarchar | 120 | 16 | 8 | 1 |
| [Sales].[Customers_Archive] | [DeliveryAddressLine2] | nvarchar | 120 | 48 | 24 | 1 |
| [Sales].[Customers_Archive] | [DeliveryPostalCode] | nvarchar | 20 | 10 | 5 | 1 |
| [Sales].[Customers_Archive] | [DeliveryRun] | nvarchar | 10 | 0 | 0 | 1 |
| [Sales].[Customers_Archive] | [FaxNumber] | nvarchar | 40 | 28 | 14 | 1 |
| [Sales].[Customers_Archive] | [PhoneNumber] | nvarchar | 40 | 28 | 14 | 1 |
| [Sales].[Customers_Archive] | [PostalAddressLine1] | nvarchar | 120 | 22 | 11 | 1 |
| [Sales].[Customers_Archive] | [PostalAddressLine2] | nvarchar | 120 | 34 | 17 | 1 |
| [Sales].[Customers_Archive] | [PostalPostalCode] | nvarchar | 20 | 10 | 5 | 1 |
| [Sales].[Customers_Archive] | [RunPosition] | nvarchar | 10 | 0 | 0 | 1 |
| [Sales].[Customers_Archive] | [WebsiteURL] | nvarchar | 512 | 96 | 48 | 1 |
| [Sales].[InvoiceLines] | [Description] | nvarchar | 200 | 170 | 85 | 1 |
| [Sales].[Invoices] | [ConfirmedReceivedBy] | nvarchar | 8000 | 58 | 29 | 1 |
| [Sales].[Invoices] | [CustomerPurchaseOrderNumber] | nvarchar | 40 | 10 | 5 | 1 |
| [Sales].[Invoices] | [DeliveryRun] | nvarchar | 10 | 0 | 0 | 1 |
| [Sales].[Invoices] | [RunPosition] | nvarchar | 10 | 0 | 0 | 1 |
| [Sales].[OrderLines] | [Description] | nvarchar | 200 | 170 | 85 | 1 |
| [Sales].[Orders] | [CustomerPurchaseOrderNumber] | nvarchar | 40 | 10 | 5 | 1 |
| [Sales].[SpecialDeals] | [DealDescription] | nvarchar | 60 | 48 | 24 | 1 |
| [Warehouse].[Colors] | [ColorName] | nvarchar | 40 | 22 | 11 | 1 |
| [Warehouse].[Colors_Archive] | [ColorName] | nvarchar | 40 | 8 | 4 | 1 |
| [Warehouse].[PackageTypes] | [PackageTypeName] | nvarchar | 100 | 12 | 6 | 1 |
| [Warehouse].[PackageTypes_Archive] | [PackageTypeName] | nvarchar | 100 | NULL | NULL | 1 |
| [Warehouse].[StockGroups] | [StockGroupName] | nvarchar | 100 | 38 | 19 | 1 |
| [Warehouse].[StockGroups_Archive] | [StockGroupName] | nvarchar | 100 | 16 | 8 | 1 |
| [Warehouse].[StockItemHoldings] | [BinLocation] | nvarchar | 40 | 8 | 4 | 1 |
| [Warehouse].[StockItems] | [Barcode] | nvarchar | 100 | 26 | 13 | 1 |
| [Warehouse].[StockItems] | [Brand] | nvarchar | 100 | 18 | 9 | 1 |
| [Warehouse].[StockItems] | [Size] | nvarchar | 40 | 26 | 13 | 1 |
| [Warehouse].[StockItems] | [StockItemName] | nvarchar | 200 | 170 | 85 | 1 |
| [Warehouse].[StockItems_Archive] | [Barcode] | nvarchar | 100 | 26 | 13 | 1 |
| [Warehouse].[StockItems_Archive] | [Brand] | nvarchar | 100 | 18 | 9 | 1 |
| [Warehouse].[StockItems_Archive] | [Size] | nvarchar | 40 | 26 | 13 | 1 |
| [Warehouse].[StockItems_Archive] | [StockItemName] | nvarchar | 200 | 170 | 85 | 1 |
| [Warehouse].[VehicleTemperatures] | [FullSensorData] | nvarchar | 2000 | 392 | 196 | 1 |
| [Warehouse].[VehicleTemperatures] | [VehicleRegistration] | nvarchar | 40 | 18 | 9 | 1 |