

DBのテーブルの列数は258です。
インサートするデータファイルの列数は65です。
データファイルは","で区切られたファイルです。
SQL Serverは2005です。
コマンドを下記のように書きました。
SQLCMD -S"\SQLEXPRESS" -U"user" -P"pass" -d"計測" -Q"INSERT INTO [計測データ] SELECT 4,CONVERT(datetime,年月),データ1,データ2,データ3,データ4,データ5,・・・データ256 FROM OPENROWSET(BULK 'D:\200906.csv', FORMATFILE='D:\test.fmt',FIRSTROW = 2) x"
フォーマットファイルは、
8.0
68
1SQLCHAR01""0 Firsrt_QUOTE ""
2SQLCHAR020"\","1年月 ""
3SQLCHAR010","2データ1 ""
4SQLCHAR010","3データ2 ""
5SQLCHAR010","4データ3 ""
・・・
66SQLCHAR010"\r\n"65データ64 ""
しかしエラーになってしまいます。
そもそも列数が違うと無理なのでしょうか。
No.1ベストアンサー
- 回答日時:
bcpとsqlcmdによるOPENROWSETの実行は別物です。
同じようなことはできますが、まずは区別して認識しましょう。
OPENROWSETは、ファイルをテーブルに見立ててSELECTする方法です。
だから書いているクエリも"INSERT INTO ~ SELECT ~"です。
列数の少ないテーブルAから列数の多いテーブルBにINSERTするとき、どうしていますか?
INSERT INTO テーブルA
(列1,列2,列3,...,列10)
SELECT 列1,列2,列3,....,列10 FROM テーブルB
って書きますよね?
やっているのは全く同じことです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
BULK INSERT時のNull許容について
SQL Server
-
BCPでCSV内の文字列をテーブルのDatetime型カラムに取り込む方法
その他(データベース)
-
BULK INSERTについて
SQL Server
-
-
4
CSVファイルをBULK INSERTでSQLserverに読み込むことは可能?
その他(データベース)
-
5
SQLSever 一括インポートについて
その他(パソコン・スマホ・電化製品)
-
6
BULKINSERTのWITHオプションについて
SQL Server
-
7
INSERT文でフィールドの1つだけを他のテーブルから取ってきた値を入れたい
その他(データベース)
-
8
bcp in でエラー
SQL Server
-
9
IDENTITY列を持つテーブルへBCPでインポート
SQL Server
-
10
バッチファイルからのBCP起動について
SQL Server
-
11
csvファイル 項目数取得
Visual Basic(VBA)
-
12
ストアドをまたがるローカル一時テーブル
SQL Server
-
13
ユーザー定義関数内でのsp_executesqlプロシージャの使用
SQL Server
-
14
Transact-SQLのBULK INSERTでエラーをキャッチしたい
SQL Server
-
15
bcpインサートでのフォーマットファイルの書き方
SQL Server
-
16
SELECT文で、指定カラム以外の全カラムを一括指定って可能でしょうか
MySQL
-
17
テーブルに主キーを作らないデメリットは?
その他(Microsoft Office)
-
18
CSVファイルの中で、「 , 」カンマを使いたい
その他(コンピューター・テクノロジー)
-
19
ファイルの最後に文字列挿入
その他(プログラミング・Web制作)
-
20
『列名 '担当者CD' があいまいです。』
Microsoft ASP
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
外部参照してるキーを主キーに...
-
SELECT 文 GROUP での1件目を...
-
UPDATE文のWHERE条件に他のテー...
-
列番号による項目の取得について
-
Access:クエリーにて集計後に...
-
SQLで列名を変数にできないでし...
-
”+”の符号をつける方法
-
列のヘッダーを含めるのをデフ...
-
SQLite3 の UpdateCommand エラー
-
SQLでどうやったらできますか?
-
Accessのリストボックスについて
-
項目名に大文字と小文字の混在...
-
【VB.NET】日付型の列にNULLを...
-
IDENTITY列の更新で失敗する
-
フィルターかけた後、重複を除...
-
差し込み後、元データを変更し...
-
SQLで特定の項目の重複のみを排...
-
エクセルで最後の文字だけ置き...
-
SQLにて特定の文字を除いた検索...
-
SQL Left Join で重複を排除す...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
外部参照してるキーを主キーに...
-
SELECT 文 GROUP での1件目を...
-
UPDATE文のWHERE条件に他のテー...
-
SQLで列名を変数にできないでし...
-
列番号による項目の取得について
-
列のヘッダーを含めるのをデフ...
-
Access:クエリーにて集計後に...
-
【VB.NET】日付型の列にNULLを...
-
SQLによる"あいうえお"順でソー...
-
テーブル列数とデータファイル...
-
Excel の簡単な操作について
-
ふと疑問
-
特定の文字列で列を区切るには?
-
v$processのPROGRAM列に関する質問
-
複数列の最大値を求めたい
-
エクセルでワイルドカード検索...
-
Accessでの全データから空白削除
-
列の数字を足し合わせたい
-
EXCEL 集計の方法
-
SQL文の関数らしいのですが、意...
おすすめ情報