Difference between revisions of "Sales.Individual (table)"
| Line 2: | Line 2: | ||
{| border="1" cellpadding="5" cellspacing="0" style="border-collapse:collapse" | {| border="1" cellpadding="5" cellspacing="0" style="border-collapse:collapse" | ||
| − | |- | + | |- valign="top" |
| '''Table | | '''Table | ||
| Sales.Individual | | Sales.Individual | ||
| Line 8: | Line 8: | ||
| '''Description | | '''Description | ||
| Demographic data about customers that purchase Adventure Works products online. | | Demographic data about customers that purchase Adventure Works products online. | ||
| − | |||
|} | |} | ||
| − | |||
=== Columns === | === Columns === | ||
| Line 20: | Line 18: | ||
| '''Default | | '''Default | ||
| '''Description | | '''Description | ||
| − | + | ||
|- valign="top" | |- valign="top" | ||
| CustomerID | | CustomerID | ||
| Line 52: | Line 50: | ||
| '''Primary Key | | '''Primary Key | ||
| '''Columns | | '''Columns | ||
| − | |- | + | |- valign="top" |
| PK_Individual_CustomerID | | PK_Individual_CustomerID | ||
| CustomerID | | CustomerID | ||
| Line 63: | Line 61: | ||
| '''Type | | '''Type | ||
| '''Columns | | '''Columns | ||
| − | + | ||
| − | |- | + | |- valign="top" |
| PXML_Individual_Demographics | | PXML_Individual_Demographics | ||
| | | | ||
| Demographics | | Demographics | ||
| − | |- | + | |- valign="top" |
| XMLPATH_Individual_Demographics | | XMLPATH_Individual_Demographics | ||
| | | | ||
| Demographics | | Demographics | ||
| − | |- | + | |- valign="top" |
| XMLPROPERTY_Individual_Demographics | | XMLPROPERTY_Individual_Demographics | ||
| | | | ||
| Demographics | | Demographics | ||
| − | |- | + | |- valign="top" |
| XMLVALUE_Individual_Demographics | | XMLVALUE_Individual_Demographics | ||
| | | | ||
| Line 88: | Line 86: | ||
| '''Column | | '''Column | ||
| '''Referenced Column | | '''Referenced Column | ||
| − | + | ||
| − | |- | + | |- valign="top" |
| [[Person.Contact_(table)|Person.Contact]] | | [[Person.Contact_(table)|Person.Contact]] | ||
| ContactID | | ContactID | ||
| ContactID | | ContactID | ||
| − | |- | + | |- valign="top" |
| [[Sales.Customer_(table)|Sales.Customer]] | | [[Sales.Customer_(table)|Sales.Customer]] | ||
| CustomerID | | CustomerID | ||
| Line 102: | Line 100: | ||
{| border="1" cellpadding="5" cellspacing="0" style="border-collapse:collapse" | {| border="1" cellpadding="5" cellspacing="0" style="border-collapse:collapse" | ||
|- style="background:silver" | |- style="background:silver" | ||
| − | | ''' | + | | '''Trigger |
| '''Type | | '''Type | ||
| − | + | ||
| − | |- | + | |- valign="top" |
| iuIndividual | | iuIndividual | ||
| ON INSERT UPDATE | | ON INSERT UPDATE | ||
|} | |} | ||
| − | + | ==== Trigger iuIndividual ==== | |
<pre> | <pre> | ||
CREATE TRIGGER [Sales].[iuIndividual] ON [Sales].[Individual] | CREATE TRIGGER [Sales].[iuIndividual] ON [Sales].[Individual] | ||
| Line 158: | Line 156: | ||
END; | END; | ||
</pre> | </pre> | ||
| − | + | ||
=== References === | === References === | ||
{| border="1" cellpadding="5" cellspacing="0" style="border-collapse:collapse" | {| border="1" cellpadding="5" cellspacing="0" style="border-collapse:collapse" | ||
| Line 169: | Line 167: | ||
| '''Child Object | | '''Child Object | ||
| − | |- | + | |- valign="top" |
| Schema | | Schema | ||
| Schema | | Schema | ||
| Line 176: | Line 174: | ||
| | | | ||
| | | | ||
| − | |- | + | |- valign="top" |
| Data Type | | Data Type | ||
| XML Schema Collection | | XML Schema Collection | ||
| − | | [[Sales.IndividualSurveySchemaCollection_( | + | | [[Sales.IndividualSurveySchemaCollection_(xml schema collection)|Sales.IndividualSurveySchemaCollection]] |
| | | | ||
| | | | ||
| − | |- | + | |- valign="top" |
| Update | | Update | ||
| Table | | Table | ||
| Line 190: | Line 188: | ||
| Trigger | | Trigger | ||
| iuIndividual | | iuIndividual | ||
| − | |- | + | |- valign="top" |
| Select | | Select | ||
| Table | | Table | ||
| Line 209: | Line 207: | ||
| '''Child Object | | '''Child Object | ||
| − | |- | + | |- valign="top" |
| Select | | Select | ||
| View | | View | ||
| Line 216: | Line 214: | ||
| | | | ||
| | | | ||
| − | |- | + | |- valign="top" |
| Select | | Select | ||
| View | | View | ||
| Line 223: | Line 221: | ||
| | | | ||
| | | | ||
| − | |- | + | |- valign="top" |
| Select | | Select | ||
| SQL table-valued-function | | SQL table-valued-function | ||
| Line 230: | Line 228: | ||
| | | | ||
| | | | ||
| − | |- | + | |- valign="top" |
| Update | | Update | ||
| Table | | Table | ||
| Line 237: | Line 235: | ||
| Trigger | | Trigger | ||
| iuIndividual | | iuIndividual | ||
| − | |- | + | |- valign="top" |
| Update | | Update | ||
| Table | | Table | ||
| Line 244: | Line 242: | ||
| Trigger | | Trigger | ||
| iduSalesOrderDetail | | iduSalesOrderDetail | ||
| − | |- | + | |- valign="top" |
| Select | | Select | ||
| Table | | Table | ||
Latest revision as of 23:17, 23 June 2010
Contents
wikibot[edit]
| Table | Sales.Individual |
| Description | Demographic data about customers that purchase Adventure Works products online. |
Columns[edit]
| Column | Data Type | Nullable | Default | Description |
| CustomerID | int | not null | Unique customer identification number. Foreign key to Customer.CustomerID. | |
| ContactID | int | not null | Identifies the customer in the Contact table. Foreign key to Contact.ContactID. | |
| Demographics | xml | null | Personal information such as hobbies, and income collected from online shoppers. Used for sales analysis. | |
| ModifiedDate | datetime | not null | (getdate()) | Date and time the record was last updated. |
Primary Key[edit]
| Primary Key | Columns |
| PK_Individual_CustomerID | CustomerID |
Indexes[edit]
| Index | Type | Columns |
| PXML_Individual_Demographics | Demographics | |
| XMLPATH_Individual_Demographics | Demographics | |
| XMLPROPERTY_Individual_Demographics | Demographics | |
| XMLVALUE_Individual_Demographics | Demographics |
Foreign Keys[edit]
| Relation | Column | Referenced Column |
| Person.Contact | ContactID | ContactID |
| Sales.Customer | CustomerID | CustomerID |
Triggers[edit]
| Trigger | Type |
| iuIndividual | ON INSERT UPDATE |
Trigger iuIndividual[edit]
CREATE TRIGGER [Sales].[iuIndividual] ON [Sales].[Individual]
AFTER INSERT, UPDATE NOT FOR REPLICATION AS
BEGIN
DECLARE @Count int;
SET @Count = @@ROWCOUNT;
IF @Count = 0
RETURN;
SET NOCOUNT ON;
-- Only allow the Customer to be a Store OR Individual
IF EXISTS (SELECT * FROM inserted INNER JOIN [Sales].[Store]
ON inserted.[CustomerID] = [Sales].[Store].[CustomerID])
BEGIN
-- Rollback any active or uncommittable transactions
IF @@TRANCOUNT > 0
BEGIN
ROLLBACK TRANSACTION;
END
END;
IF UPDATE([CustomerID]) OR UPDATE([Demographics])
BEGIN
UPDATE [Sales].[Individual]
SET [Sales].[Individual].[Demographics] = N'<IndividualSurvey xmlns="http://schemas.microsoft.com/sqlserver/2004/07/adventure-works/IndividualSurvey">
<TotalPurchaseYTD>0.00</TotalPurchaseYTD>
</IndividualSurvey>'
FROM inserted
WHERE [Sales].[Individual].[CustomerID] = inserted.[CustomerID]
AND inserted.[Demographics] IS NULL;
UPDATE [Sales].[Individual]
SET [Demographics].modify(N'declare default element namespace "http://schemas.microsoft.com/sqlserver/2004/07/adventure-works/IndividualSurvey";
insert <TotalPurchaseYTD>0.00</TotalPurchaseYTD>
as first
into (/IndividualSurvey)[1]')
FROM inserted
WHERE [Sales].[Individual].[CustomerID] = inserted.[CustomerID]
AND inserted.[Demographics] IS NOT NULL
AND inserted.[Demographics].exist(N'declare default element namespace
"http://schemas.microsoft.com/sqlserver/2004/07/adventure-works/IndividualSurvey";
/IndividualSurvey/TotalPurchaseYTD') <> 1;
END;
END;
References[edit]
| Dependency Type | Object Type | Referenced Object | Child Type | Child Object |
| Schema | Schema | Sales | ||
| Data Type | XML Schema Collection | Sales.IndividualSurveySchemaCollection | ||
| Update | Table | Sales.Individual | Trigger | iuIndividual |
| Select | Table | Sales.Store | Trigger | iuIndividual |
Dependencies[edit]
| Reference Type | Object Type | Referencing Object | Child Type | Child Object |
| Select | View | Sales.vIndividualCustomer | ||
| Select | View | Sales.vIndividualDemographics | ||
| Select | SQL table-valued-function | dbo.ufnGetContactInformation | ||
| Update | Table | Sales.Individual | Trigger | iuIndividual |
| Update | Table | Sales.SalesOrderDetail | Trigger | iduSalesOrderDetail |
| Select | Table | Sales.Store | Trigger | iStore |
automatically generated[edit]
| Table | Sales.Individual |
| Description | Demographic data about customers that purchase Adventure Works products online. |
| Column | Data Type | Nullable | Default | Description / PK / Index |
| CustomerID | int | not null | Unique customer identification number. Foreign key to Customer.CustomerID. PK_Individual_CustomerID | |
| ContactID | int | not null | Identifies the customer in the Contact table. Foreign key to Contact.ContactID. | |
| Demographics | XML | null | Personal information such as hobbies, and income collected from online shoppers. Used for sales analysis. PXML_Individual_DemographicsXMLPATH_Individual_DemographicsXMLPROPERTY_Individual_DemographicsXMLVALUE_Individual_Demographics | |
| ModifiedDate | datetime | not null | (GETDATE()) | Date and time the record was last updated. |
| Relation | Column | Referenced Column |
| Person.Contact | ContactID | ContactID |
| Sales.Customer | CustomerID | CustomerID |
| Triggers | Type |
| iuIndividual | ON INSERT UPDATE |
| Dependency Type | Object Type | Referenced Object | Child Type | Child Object |
| Schema | Schema | Sales | ||
| Data Type | XML Schema Collection | Sales.IndividualSurveySchemaCollection | ||
| Update | Table | Sales.Individual | Trigger | iuIndividual |
| Select | Table | Sales.Store | Trigger | iuIndividual |
| Reference Type | Object Type | Referencing Object | Child Type | Child Object |
| Select | View | Sales.vIndividualCustomer | ||
| Select | View | Sales.vIndividualDemographics | ||
| Select | SQL table-valued-function | dbo.ufnGetContactInformation | ||
| Update | Table | Sales.Individual | Trigger | iuIndividual |
| Update | Table | Sales.SalesOrderDetail | Trigger | iduSalesOrderDetail |
| Select | Table | Sales.Store | Trigger | iStore |