0

約 300K レコードのテーブルがあります。元のファイルに存在していたとおりにインポートするため。元のファイルには、パイプとチルダの区切り文字が含まれていました。フィールドがテキストとして入力されるように、パイプ チルダをパイプ アポストロフィに置き換えました。ここで、アポストロフィを取り除く必要があります。データベースは、実際にはフィールドをテキストではなく ntext として保存しています。ここでの本当の問題は、フィールドの多くがゼロで埋められたフィールドであり、データベース内でそれらをゼロで埋めたままにする必要があることです。

テキストのサンプルはこちらです。最初の行はヘッダーです。

Rec '記事番号' Substit. 「グループSKU」大学。製品 コード '商品の説明 'Cat' 部門の説明 'P.Cla' 製品クラスの説明 'SC' サブクラスの説明
'FLY' ファミリーの説明 'ベンダーの記事番号 'Pur 'Shi '総重量 'UniWT'正味
重量
'UniDim' ボリューム 'UniVol' ベンダー番号 'Mfr 価格
'ベンダー名 'Mgr' カテゴリ マネージャー名
00 '000000000022404373'

「 67000 SBC ハウス ブレンド
T ディスク

FT3 '0000008228''M BLOCK AND SONS INC'017'Patty
Dunham 00'000000000022404658''
'400224046585'NFR 2010 Merry Christmas 20Pk'071
'非商品記事' 30001'OfficeMax
'11 'Merchandise '01 'Gift Card Program 'SV1003846 'EA 'EA ' 16.000 'OZ '
16.000 ' 4.250 ' 1.950 ' 4.500 'IN ' 0.022 'FT3 '0000934003 ''CERIDIAN STORED VALUE SOLUTIONS' 0 '000000000022404676' '
' 75353105641"'プチプチ封筒 10.5""x15 5Pk
"EA'EA'14.200'OZ'14.200'

ぺんてるオブアメリカ株式会社 '004'ブライアント・スペンサー






データベース内のすべての列のテキスト フィールドと、上記のサンプルに表示されている値 (先行ゼロを含む) を作成する必要があります。

4

2 に答える 2

0

テーブルはどこですか?それはSQL Serverにありますか?その場合は、 のような状態を更新しますupdate table set column = replace(column, '''', '')。次に、を行うことができますalter table table_name alter column column_name varchar(some length)。タイプと先頭の0の問題に基づいてAccessデータベースについて話しているように聞こえますが。上記で回答が得られなかった場合は、質問を明確にしてください。

于 2013-06-28T18:13:32.723 に答える
0

このリンクを参照してください(そのクエリでは、「」と「」を何も置き換えることができません):

CREATE TABLE TEST(
  FIELD VARCHAR(8000))

INSERT INTO TEST(FIELD) VALUES(
  'Rec ''Article Number ''Substit. ''Group SKU ''Univ. Prod. Code ''Article Description ''Cat ''Department Description ''P.Cla ''Product CLass Description ''SC ''Sub CLass Description
''FLY ''Family Description ''Vendor article Number ''Pur ''Shi ''Gross weight ''UniWT ''Net weight
''Length ''Width ''Height
''UniDim ''Volume ''UniVol ''Vendor Num ''Mfr Price
''Vendor Name ''Mgr ''Category Mgr Name
00 ''000000000022404373 '' '' ''43000670002
''67000 SBC House Blend T-Discs ''063 ''Office Consumables
''12560 ''Office Consumables ''01 ''Hot Beverage
''01 ''COFFEE ''67000
''EA ''EA '' 14.700 ''OZ '' 11.040 ''
8.600 '' 7.000 '' 3.100 ''IN '' 0.108 ''FT3 ''0000008228 '' ''M BLOCK AND SONS INC
''017 ''Patty Dunham 00 ''000000000022404658 '' ''
''400224046585 ''NFR 2010 Merry Christmas 20Pk
''071 ''Non-Merchandise Articles ''30001 ''OfficeMax
''11 ''Merchandise ''01 ''Gift Card Program ''SV1003846 ''EA ''EA '' 16.000 ''OZ ''
16.000 '' 4.250 '' 1.950 '' 4.500 ''IN '' 0.022 ''FT3 ''0000934003 '' ''CERIDIAN STORED VALUE SOLUTIONS INC ''ZN1 ''Non-Merchandise 00 ''000000000022404676 '' '' ''75353105641 "''Bubble Envelope 10.5""x15 5Pk " ''046 ''Mailroom/Moving
''07303 ''KRAFT WRAP/MAILERS ''01 ''MAILERS
''02 ''BUBBLE ''756618
''EA ''EA '' 14.200 ''OZ '' 14.200 ''
16.500 '' 11.250 '' 1.250 ''IN '' 0.134 ''FT3 ''0000008162 '' ''SHURTECH BRANDS
''021 ''Mailroom 00 ''000000000022404756 '' ''
''72512244814 ''Champ .5mm 12pk Asstd Colors
''053 ''Writing Instruments ''10453 ''Mechanical Pencils ''02 ''Refillable
''01 ''Added Value (Refilla ''AL15BP12M
''EA ''EA '' 5.000 ''OZ '' 4.100 ''
7.600 '' 4.200 '' 1.000 ''IN '' 0.018 ''FT3 ''0000000146 '' ''PENTEL OF AMERICA LTD.
''004 ''Bryant Spencer'
  )

SELECT REPLACE(REPLACE(FIELD,'''',''),'''''','') FROM TEST
于 2013-06-28T18:31:27.633 に答える