0

私は現在、多くの支店を持つ会社向けの小規模な請求システムを開発しています。各支店に基づいて異なる請求書の自動番号を生成する方法を知りたいと思っていました。table のテーブル構造は次のとおりinvoice_headerです。

id | number | cust | grand_total

ブランチごとに異なるテーブルを作成する必要がありますか? たとえばinvoice_header_1, invoice_header_2 , invoice_header_3

4

2 に答える 2

0

を使用する場合ENGINE=MyISAM、MySQLはこれを行います。

CREATE TABLE invoice_header(
branch_id INT UNSIGNED NOT NULL、
id INT UNSIGNED NOT NULL AUTO_INCREMENT、
番号INTUNSIGNEDNOT NULL DEFAULT 1、
INT UNSIGNED NOT NULL、
grand_total DECIMAL(10,2)NOT NULL DEFAULT 0、
主キー(branch_id、id)
)ENGINE = MyISAM;

MySQLはid、1から始まる列の一意の値を生成しますが、異なる値ごとに生成しますbranch_id。これは、エンジンが。の場合にのみ機能しMyISAMます。

詳細については、 http://dev.mysql.com/doc/refman/5.0/en/example-auto-increment.htmlで「複数列のインデックス」を検索してください。

于 2012-08-12T17:45:47.480 に答える
0

ブランチの種類を含むテーブルを作成する方が、より適切で実行しやすくなります。次に、invoice_header テーブルに列を 1 つだけ追加し、ブランチ テーブルからの正確なブランチの ID を指定します。

このようにして、これら2つを接続して、きれいに保つことができます. そして編集しやすい。

したがって、テーブルinvoice_header id | 数 | 顧客 | 総計 | branch_id

テーブル ブランチ ID | 支店名

于 2012-08-12T17:08:54.873 に答える