SQL Serverの主キーの設定


━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
vol277

これならわかるマイクロソフトアクセス活用法
            -->SQL Serverの主キーの設定
              
発行者:高内 章治 2017年1月25日
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
┏ 今日の内容 ━━━━━━━━━━━━━━━━━━━━━━━━┓

┃【01 - ご挨拶    】
┃【02 - トピックス  】SQL Serverの主キーの設定

┃【03 - 編集後記    】

┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛

─────────────────────────────────
【01 - ご挨拶    】          
─────────────────────────────────

こんにちは、高内(こうない)です。

今回は、

「SQL Serverの主キーの設定」

についてお話したいと思います。




─────────────────────────────────

【02 - トピックス】: SQL Serverの主キーの設定

─────────────────────────────────

現在、「Access」のシステムを「SQL Server 2016 Express」へ移行する教材を販売しています。

その中で、よく質問があります。

「Access」のテーブルを、「SQL Server 2016 Express」のテーブルへ移行できたのですが、データの入力が出来ないという問題です。

多くの原因は、「主キー」が設定されていないことです。

「主キー」とは
「テーブル」の各レコード(データ)を識別するために1意のデータです。
「フィールド」や「フィールド」の組み合わせを「主キー」として設定します。

「Access」は、「主キー」を設定していなくても、入力や更新ができます。
本来は、「Access」でも「主キー」を設定するようにすれば、よいのですが、マイクロソフトは、そこまではやっていません。

その「主キー」の無い「テーブル」をそのまま、「SQL Server 2016 Express」の「テーブル」へ移行すると入力や更新が出来ません。

「SQL Server 2016 Express」の「テーブル」は「主キー」が絶対に必要です。


解決案としては、

  • まず、「SQL Server 2016 Express」の「主キー」の無い「テーブル」を削除します。

  • 次に、「Access」の「主キー」の無いテーブルに「主キー」を追加します。

  • 「Access」の「主キー」の入った「テーブル」を再度、「SQL Server 2016 Express」へ移行します。


でも、ここで、問題が出ます。

「Access」の「主キー」の無いテーブルに「主キー」を追加する場合、「主キー」に設定できる項目が無い場合です。

「主キー」は、テーブルの各レコード(データ)を識別するために1意のデータです。
データの無い状態、「NULL」があっても、「主キー」を設定することはできません。

その時は、「ID」などの項目(フィールド)を追加して「オートナンバー」を設定することを、お勧めしています。

でも、「主キー」のない「テーブル」に「オートナンバー」の「ID」の項目(フィールド)をそのまま追加しても、「オートナンバー」の番号などは、作成できません。

ですので、以下のようにします。

  1. 現在の「主キー」の無い「テーブル」をデータ構造だけコピーします。

  2. コピーした「テーブル」に「ID」を追加します。
    「オートナンバー」で「主キー」にします。

  3. 現在の「主キー」の無い「テーブル」のデータを全部選択して、コピーして「ID」の 入ったテーブルに 貼り付けます。
    「オートナンバー」で番号が自動で出来ると思います。 

その「オートナンバー」の入った「テーブル」を「SQL Server 2016 Express」へ移行します。


本来は、最初から「Access」で「テーブル」を作成するときは、「主キー」を設定しておいた方がよいですね。


参考にしてください。



─────────────────────────────────
【03 - 編集後記    】       
─────────────────────────────────

トランプ大統領が誕生しました。

毎日、トランプ大統領のニュースが多いですね。

先日、環太平洋パートナーシップ協定(TPP)の離脱を承認しました。
これで、現時点では、TPPは無くなったそうです。

北米自由貿易協定(NAFTA)の見直しも言及しています。

これから、世界に影響が出ますね。

どうなるのでしょうか。


◆私がアクセスをマスターできたのは!!
http://www.sk-access.com/kyozai/zaiko1.html  

テーブル作成からVBAまでマスターできます。 
「在庫管理システムをアクセスで作ってみよう」教材です。
http://www.sk-access.com/kyozai/zaiko2.html  


━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
●ご意見・ご感想・ご質問
 
『メルマガでもっとお役にたてる情報を配信したいと思いますので、日ごろから疑問に思っていることを教えてください。
宛先はこちらへです』

  •  kohnai★vega.ocn.ne.jp
      (高内:こうない:)
    (メールするときは、★を@に変えてください)

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━


◎「これならわかるマイクロソフトアクセス活用法」 のバックナンバー・配信停止はこちら

archive.mag2.com/0000222659/index.html

◎以下のホームページからでもバックナンバーを見ることができます。

http://www.sk-access.com/mailmaga/index.html

登録・解除につきましてはご自身でお願いいたします。

※このメールマガジンの転送はOKですが、掲載された記事の内容を許可無く転載することをを禁止させて頂きます。
必ず事前にご相談ください。

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━


1週間でアクセス(Access)のシステム開発ができる〜
「在庫管理システムをアクセスで作ってみよう」教材

「アクセスのプログラム/システムを短期間で開発したい方」、
「アクセスのフォーム/VBAを完全にマスターしたい方」のための
アクセス(Access)を使って1週間でシステム開発する究極の方法とは?

「アクセス(Access)のシステムを無料のSQL Server 2016 Expressへ
移行してみよう」教材

あなたの会社のアクセス(Access)のデータベースやシステムに不安を感じていませんか?
アクセスのデータ量が多くなり処理スピードが遅くなった。
アクセスのデータを共有したい。
セキュリティに不安がある。などと、感じている方は!!
(SQL Server 2016 Expressバージョンです。)


「アクセス(Access)プログラムの仕様書の作り方」教材
マイクロソフトアクセスを使用して、プログラムの作成/システム開発をおこないたい方の為に、
アクセス(Access)のプログラム開発に成功するために絶対に必要な「仕様書」とは?



[↑一番上へ]
[マイクロソフトアクセス活用法(メールマガジン)(ホームへ)]
12:502003

アクセス全体

VBA

SQL Server