ISBNコードは、今私はDBに非本のものを追加したい、主キーとして使用されている - 私は、EANに移行する必要がありますか?

StackOverflow https://stackoverflow.com/questions/2610000

質問

私はISBN番号は項目の主キーですインベントリデータベースを構築しました。項目は本だったので、これはしばらくの間、素晴らしい仕事しました。今私は非本を追加します。非本のいくつかは、いくつかはしないでください、EANSまたはISSNsを持っています。

これは、管理のためのフロントエンドとJSONのAPIに加え、いくつかの支援のpythonコマンドラインツールのためのDjangoアプリではPostgreSQLにあります。問題の項目はほとんどが自費出版されているそのうちのいくつかの書籍やアーティストの版画、されます。

どのような主キーとしてのISBNを使用してのいいリレーショナル整合性の上で、あなたはISBNコードを検証するための便利なユーティリティの多くを得ることであると、自動的に本項目に不足しているか、付加的な情報見上げ、エトセトラ、その多くのI」活用してまし。このようないくつかのツールは、(PyAWSなどPyISBN、)既製であり、一部は手巻きしている - 私は、これらの部品の素敵なのすべてを維持しようとしたと切り離されていますが、物事が得ることができる方法を知っている。

私は「プライベートISBNコード」や「自己割り当てISBNコード」について、オンラインで何かを見つけることができませんでしたが、それは私がやってに興味があったものの一種です。私はISBN番号での見かけ上の実行がすでに存在しているので、私は、上の落ち着くだろう何を疑うます。

私はEAN番号については、すべてを一新、または一般に主キーとしてのISBNをオフに移行する必要がありますか?誰もがこれらのシステムでの作業の経験を持っている場合、私はそれについて聞いてみたい、あなたのアドバイスは大歓迎です。

役に立ちましたか?

解決

あなたはISBN-10Sを使用している場合、それらは既に廃止されて、

、その後、あなたは間違いなく、何か他のものに移行する必要があります。あなたは簡単にISBN-10Sを取ると、(ウィキペディアのを参照してください)ISBN-13Sにそれらを回すことができました私は、EAN-互換(再び、ウィキペディアの参照)をしていると思うが、the_lotusが示唆するように、それはおそらくですより良いEAN / ISBNは/ etcます。

には、外部の主キーとしての意味と、インデックスを自動インクリメント整数のいくつかの並べ替えを持っています

他のヒント

私はpostgresのを知りませんが、通常ISBMは、一意のインデックスキーが、主要ではないだろう。これは、プライマリ/外部キーとして整数を持っている方が良いでしょう。その方法は、あなたが唯一のnullとして、新たなフィールドEAN / ISSNを追加する必要があります。

私はISBNが主キーのためのお粗末な選択ではなく、少なくともので、the_lotusに同意する

データ賢明な、それはユニーク十分ではありません。クラスタ化された場合、それはかなり広いですし、非数値

簡単な解決策(ただし、間違いなく良いかどうかを)使用することです(ISBN、タイトル)または(ISBN、著者)すべきではかなり保証一意。イデオロギーは素晴らしいですが、実用性にも目的を果たしています。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top