一般的に言うと、データベースの列定義( Excel 等の表のタイトルのようなもの ) に
特殊な属性を指定すると、データを作成する時に、その列には何もいれなくても、
データベースが連続する番号をセットしてくれるというものです。
ちゃんとしたシステム設計では、使わないほうが良いとされている機能ですが、
プロがお金を取って作るシステム以外なら、時間短縮や効率考えて使われている
事が多いものです。
で、落とし穴。
外部にデータをバックアップしておいて、イザ、それを戻す時に、
自動的に番号を付けてしまうので、バックアップしたデータの番号が無視されてしまいます。
その番号は、ふつう主キーと呼ばれる ID になっていますので、変えるわけにはいきません。
データによって、データを元に戻す方法には何通りかありますが、
BCP というのは、コマンドラインで 主に CSV 形式のテキストファイルとして
データベースからデータを出力したり、データベースにデータを戻したりするものです。
SQLServer を扱っていて、これを知らなかったら完全に「モグリ(潜り)」ですね。
前置きが長くなりましたが、要は -E つけるだけです。
|
【DB関連の最新記事】
- 複数行のグループデータを1行にまとめるSQL
- テーブル設計書作成 : VBScript + Excel.Application + SQLServer
- select 社員コード,氏名,(select count(*) from 得意先マスタ where 担当者 = 社員コード) as 件数 from 社員マスタ : 件数を where で使いたい場合..
- SQL Server とそのコンポーネントのバージョンとエディションを確認
- land.to での PHP + PostgreSQLでの接続テスト
- SQL*PlusだけでCSVを作成する
- PHP と MySQL 限定で SQL インジェクションを考えた場合
- Oracle11g + Windows7 : InstantClient を使用した軽量接続 ( Win32 )
- MySQL:GPLな再配布。プログラムは無しでデータのみ追加
- MySQL5.1.4の半手動インストール(インストール場所の変更)
- グループ関数の原則
- Oracleエクスポートユーティリティ(expdp)パラメータ入力支援HTMLアプリケーション
- 今年もPL/SQLはFunctionから
- OracleInstantClientによる接続確認
- SYSTEMユーザからスキーマを作成、販売管理データを投入する
- SQLExpress2005のインストールから最速設定(2)
- SQLExpress2005のインストールから最速設定(3)
- SQLExpress2005のインストールから最速設定(1)
- 【Oracle10g接続】InstantClientを使用した接続
- MySQL5.1.26をUSBメモリに入れて使用する