2011-02-08 7 views
0

私はXMLXSD:文字列長> 255をコードする方法は?

<xs:element minOccurs="0" name="FIELDNAME" type="xs:string" /> 

から文字列をインポートするには、次のコードを試してみました。しかし、いくつかのフィールドが255文字以上です。そこで、文字を追加しようとしました。

<xs:element minOccurs="0" name="FIELDNAME"> 
    <xs:simpleType> 
     <xs:restriction base="xs:string"> 
      <xs:maxLength value="1024" /> 
     </xs:restriction> 
    </xs:simpleType> 
</xs:element> 

検証に失敗したデータは、CDATAを含む長さが194文字です。

<FIELDNAME><![CDATA[ 
                   ' 
900207 4.5" FOOTED BOWL      <BR> 
                     ' 
]]></FIELDNAME> 

SQL ServerのSSIS 2008年にエラーがある:それは(彼らはホワイトスペースを表示するためにあります)単一引用符が含まれていません

Error: 0xC02090FA at Import, XML Source [1]: The "component "XML Source" (1)" 
failed because truncation occurred, and the truncation row disposition on 
"output column "FIELDNAME" (149)" at "output "DATA" (10)" specifies failure 
on truncation. A truncation error occurred on the specified object of the 
specified component. 

私が最初にリストされているXMLスキーマを構築する方法をこのデータをエラーなくインポートするには?

答えて

4

ええええええええええと、それについては、まだDBについて知りません。

xmlソースコンポーネントを右クリックすると、「show advanced editor」オプションがありますか?

場合は、入力と出力のプロパティのタブに移動し、そこから列のメタデータを変更することができます。

+0

うわー。驚いたことに、私は "Advanced Editor"に行き、 "Input and Output Properties"をクリックし、 "External Columns"をクリックし、XSDをリロードするために "refresh"と書かれた下部ボタンをクリックしなければならなかった時間。それがトリックでした。ありがとう。 –

+0

問題はありません、良いものをお持ちください。 – clamchoda

1

データベースの列自体に制限がないのは確実ですか?

私はこの問題をアクセスしたばかりで、フィールドタイプを「テキスト」から「メモ」に変更しました。

おそらく、あなたをvarchar(max)に変更する必要があります。 (注:Maxはキーワードであり、挿入する数字ではありません)

+1

"データフロー"ステップには、 "XMLソース"と "OLE DBデスティネーション"があります。このエラーは、まだデータベースについて知らないXMLソースで発生します。しかし、私はデータベーステーブルのフィールドを拡大しましたが、何の効果もありませんでした。 –

2

切り捨てが問題ではない場合は(私はそれと仮定していますが)、エラーを無視するか、行をリダイレクトするようにその列のXMLソースからエラー出力を設定できます。

関連する問題