aboutsummaryrefslogtreecommitdiff
path: root/src/xsd/sql/SqlDatabase.xsd
diff options
context:
space:
mode:
authorRob Mensching <rob@firegiant.com>2026-03-04 13:10:37 -0800
committerRob Mensching <rob@firegiant.com>2026-03-05 07:36:42 -0800
commita444435287f81b5e0ac66b849db7387f9def1d82 (patch)
tree662dce1adf9c40fdc24bad6f444dff58a1416e24 /src/xsd/sql/SqlDatabase.xsd
parent918332a0e80e8761eca20e801ae7ce3631fdbaea (diff)
downloadwix-a444435287f81b5e0ac66b849db7387f9def1d82.tar.gz
wix-a444435287f81b5e0ac66b849db7387f9def1d82.tar.bz2
wix-a444435287f81b5e0ac66b849db7387f9def1d82.zip
Split XSDs into individual XSD fragments per element and type
This majorly improves the developer experience when editing documentation for each WiX element or type.
Diffstat (limited to 'src/xsd/sql/SqlDatabase.xsd')
-rw-r--r--src/xsd/sql/SqlDatabase.xsd126
1 files changed, 126 insertions, 0 deletions
diff --git a/src/xsd/sql/SqlDatabase.xsd b/src/xsd/sql/SqlDatabase.xsd
new file mode 100644
index 00000000..b151645b
--- /dev/null
+++ b/src/xsd/sql/SqlDatabase.xsd
@@ -0,0 +1,126 @@
1<element name="SqlDatabase">
2 <annotation>
3 <appinfo>
4 <parent namespace="http://wixtoolset.org/schemas/v4/wxs" ref="Component" />
5 <parent namespace="http://wixtoolset.org/schemas/v4/wxs" ref="Fragment" />
6 <parent namespace="http://wixtoolset.org/schemas/v4/wxs" ref="Module" />
7 <parent namespace="http://wixtoolset.org/schemas/v4/wxs" ref="Package" />
8 <remarks>
9 Nesting SqlDatabase under a Component element will result in a SqlDatabase being installed to the machine as the package is installed.
10
11 Nesting SqlDatabase under Package, Fragment, or Module
12 results in a database "locator" record being created in
13 the SqlDatabase table. This means that the database
14 itself is neither installed nor uninstalled by the MSI
15 package. It does make the database available for referencing
16 from a SqlString or SqlScript record. This allows MSI to install
17 SqlScripts or SqlStrings to already existing databases on the machine.
18 The install will fail if the database does not exist in these cases.
19
20 The User attribute references credentials specified in a User element.
21 If a user is not specified then Windows Authentication will be used by default
22 using the credentials of the user performing the install to execute sql
23 strings, etc.
24 </remarks>
25 <seeAlso namespace="http://wixtoolset.org/schemas/v4/wxs/util" ref="User" />
26 </appinfo>
27 <documentation>SQL Database</documentation>
28 </annotation>
29 <complexType>
30 <choice minOccurs="0" maxOccurs="unbounded">
31 <element ref="SqlFileSpec" />
32 <element ref="SqlLogFileSpec" />
33 <element ref="SqlScript" />
34 <element ref="SqlString" />
35 <any namespace="##other" processContents="lax">
36 <annotation>
37 <documentation>
38 Extensibility point in the WiX XML Schema. Schema extensions can register additional
39 elements at this point in the schema.
40 </documentation>
41 </annotation>
42 </any>
43 </choice>
44 <attribute name="Id" type="xs:string">
45 <annotation>
46 <documentation>Unique identifier in your installation package for this database. If an Id is not provided, one will generated for you.</documentation>
47 </annotation>
48 </attribute>
49 <attribute name="Server" type="xs:string" use="required">
50 <annotation>
51 <documentation>Database server name.</documentation>
52 </annotation>
53 </attribute>
54 <attribute name="Instance" type="xs:string">
55 <annotation>
56 <documentation>Optional database server instance.</documentation>
57 </annotation>
58 </attribute>
59 <attribute name="Database" type="xs:string" use="required">
60 <annotation>
61 <documentation>
62 The name of the database. The value can be a literal value or derived from a
63 Property element using the [Formatted](https://learn.microsoft.com/en-us/windows/win32/msi/formatted)
64 syntax.
65 </documentation>
66 </annotation>
67 </attribute>
68 <attribute name="User" type="xs:string">
69 <annotation>
70 <documentation>Optional user used to connect to database.</documentation>
71 </annotation>
72 </attribute>
73 <attribute name="CreateOnInstall" type="wxs:YesNoTypeUnion">
74 <annotation>
75 <documentation>Create the database during installation.</documentation>
76 </annotation>
77 </attribute>
78 <attribute name="CreateOnReinstall" type="wxs:YesNoTypeUnion">
79 <annotation>
80 <documentation>
81 Specifies whether to create the database when the associated component is reinstalled. Setting CreateOnInstall to yes does <b>not</b> imply CreateOnReinstall is set to yes. CreateOnReinstall must be set in addition to CreateOnInstall for it to be created during both install and reinstall.
82 </documentation>
83 </annotation>
84 </attribute>
85 <attribute name="CreateOnUninstall" type="wxs:YesNoTypeUnion">
86 <annotation>
87 <documentation>Create the database during uninstallation.</documentation>
88 </annotation>
89 </attribute>
90 <attribute name="DropOnInstall" type="wxs:YesNoTypeUnion">
91 <annotation>
92 <documentation>Drop the database during installation.</documentation>
93 </annotation>
94 </attribute>
95 <attribute name="DropOnReinstall" type="wxs:YesNoTypeUnion">
96 <annotation>
97 <documentation>
98 Specifies whether to drop the database when the associated component is reinstalled. Setting DropOnInstall to yes does <b>not</b> imply DropOnReinstall is set to yes. DropOnReinstall must be set in addition to DropOnInstall for it to be dropped during both install and reinstall.
99 </documentation>
100 </annotation>
101 </attribute>
102 <attribute name="DropOnUninstall" type="wxs:YesNoTypeUnion">
103 <annotation>
104 <documentation>Drop the database during uninstallation.</documentation>
105 </annotation>
106 </attribute>
107 <attribute name="ContinueOnError" type="wxs:YesNoTypeUnion">
108 <annotation>
109 <documentation>Continue even if the database operation fails.</documentation>
110 </annotation>
111 </attribute>
112 <attribute name="ConfirmOverwrite" type="wxs:YesNoTypeUnion">
113 <annotation>
114 <documentation>Prompt the user to overwrite the database.</documentation>
115 </annotation>
116 </attribute>
117 <anyAttribute namespace="##other" processContents="lax">
118 <annotation>
119 <documentation>
120 Extensibility point in the WiX XML Schema. Schema extensions can register additional
121 attributes at this point in the schema.
122 </documentation>
123 </annotation>
124 </anyAttribute>
125 </complexType>
126 </element> \ No newline at end of file