プライマリキーの削除を行うには?

解決


困ったちゃん  2005-09-24 16:04:25  No: 17692  IP: 192.*.*.*

またお世話になります。
TTableでプライマリキーの削除の方法、または変更はできるでしょうか?
IndexDefsをいじっているのですが効果なしです。

編集 削除
篠田雅夫  2005-09-24 16:25:08  No: 17693  IP: 192.*.*.*

私も試したことがないのですが、制約を解除してから行うとどこかに書いてあった気がしますが?
IndexDefのOptionをクリアして、IndexDefs.Updateではだめですか?

編集 削除
困ったちゃん  2005-09-24 16:27:12  No: 17694  IP: 192.*.*.*

篠田雅夫さん、早々ありがとうございます。
> IndexDefのOptionをクリアして、IndexDefs.Updateではだめですか?
はい、まったくだめです。
困っています。

編集 削除
篠田雅夫  2005-09-25 18:24:58  No: 17695  IP: 192.*.*.*

ユニークキーならTTable.DeleteIndexにインデックス名を
渡せば削除できるようですね。

編集 削除
困ったちゃん  2005-09-26 06:26:08  No: 17696  IP: 192.*.*.*

> ユニークキーならTTable.DeleteIndexにインデックス名を
> 渡せば削除できるようですね。

やってみたところ、「排他的オープンではありません」って起こられてしまうのです。
どうでしょうこれ?

編集 削除
篠田雅夫  2005-09-26 09:26:16  No: 17697  IP: 192.*.*.*

「排他的オープンではありません」の件ですが、テーブルを開かないで実行するといいと思いますよ。<- これについて理由はわかりませんが…。

編集 削除
困ったちゃん  2005-09-27 12:08:11  No: 17698  IP: 192.*.*.*

篠田さんの言われたとおりテーブルを開かないで実行すると削除できました。
ありがとうございます。

編集 削除