Никак не могу разобраться, почему SQLXMLBULKLOAD не импортирует элементы типа date.
Дошел до того, что пытаюсь создать набор таблиц с помощью SQLXMLBulkLoad (что б посмотреть, чего там создается.)
Создаю так:
Так вот, когда элемент описан как:
<xsd:element name="DATA" type="sqltypes:datetime" />
он создается.
А когда описан как:
<xsd:element name="DATA" type="sqltypes:date" />
То вылазит ошибка: The definition for column 'DATA' must include a data type.
Намспейсы импортирую так:
Причем в "http://schemas.microsoft.com/sqlserver/2004/sqltypes" этот тип есть, и описан:
И ровно в таком виде представлен в хмл.
Помогите разобраться, я только пытаюсь начать это осваивать.
Дошел до того, что пытаюсь создать набор таблиц с помощью SQLXMLBulkLoad (что б посмотреть, чего там создается.)
Создаю так:
Dim objBL = CreateObject("SQLXMLBulkLoad.SQLXMLBulkLoad") objBL.ConnectionString = "Provider=sqloledb;server=" + _Server + ";database=" + _Database + ";integrated security=SSPI" objBL.ErrorLogFile = "c:\error.log" objBL.SchemaGen = True objBL.SGDropTables = True objBL.Bulkload = False 'objBL.KeepIdentity = False objBL.Execute(xsdFilePath, xmlFilePath) objBL = Nothing
Так вот, когда элемент описан как:
<xsd:element name="DATA" type="sqltypes:datetime" />
он создается.
А когда описан как:
<xsd:element name="DATA" type="sqltypes:date" />
То вылазит ошибка: The definition for column 'DATA' must include a data type.
Намспейсы импортирую так:
<xsd:schema xmlns:schema="urn:schemas-microsoft-com:sql:SqlRowSet" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:sqltypes="http://schemas.microsoft.com/sqlserver/2004/sqltypes" xmlns:sql="urn:schemas-microsoft-com:mapping-schema" elementFormDefault="qualified"> <xsd:import namespace="http://schemas.microsoft.com/sqlserver/2004/sqltypes" schemaLocation="http://schemas.microsoft.com/sqlserver/2004/sqltypes/sqltypes.xsd" />
Причем в "http://schemas.microsoft.com/sqlserver/2004/sqltypes" этот тип есть, и описан:
<xsd:simpleType name="date"> <xsd:restriction base="xsd:date"> <xsd:pattern value="((000[1-9])|(00[1-9][0-9])|(0[1-9][0-9]{2})|([1-9][0-9]{3}))-((0[1-9])|(1[012]))-((0[1-9])|([12][0-9])|(3[01]))"/> <xsd:maxInclusive value="9999-12-31"/> <xsd:minInclusive value="0001-01-01"/> </xsd:restriction> </xsd:simpleType>
И ровно в таком виде представлен в хмл.
Помогите разобраться, я только пытаюсь начать это осваивать.