Windows2000でSQLServerを使用しています。

テーブルは作成したのですが、後からある項目にPrimary Key を
エンタープライズマネージャを使用せず、スクリプトで追加したいのですが、
構文がわかりません。
どなたか教えていただけませんでしょうか。
よろしくお願いいたします。

このQ&Aに関連する最新のQ&A

A 回答 (2件)

あけましておめでとうございます。


遅くなりましたが再度。

現在、自由にいじれるSQLServerの環境がないので、動作確認はしてないのですが、ちょこっと調べた感じだと、補足の内容はできないようです。
一度DropしてからAddしないとダメ、のようなこと書いてありました。
もしかしたら調べ方が悪いのかも、ですがあまり可能性はなさそうです。

お力になれなくてすみません。

参考URL:http://www.users.gr.jp/
    • good
    • 0

こんばんは。



Alter Table tablename(テーブル名) Add Constraint constraint_definition(制約定義)
のような感じ。

「Constraint」を使用して、プライマリキー制約を追加します。
すでにあるデータ行に設定したいときは、その内容がチェックされてNULLや重複行があればエラーが返ります。
すでに設定済みの場合もエラーが返ってきます。

この回答への補足

noopeeさん。早々のお答えありがとうございます!!
すみません。色々しましたかどーーしても上手くいかないので補足します。

T_TEMP(テーブル名)
KomokuA(Primary Key)
KomokuB(Primary Key)
KomokuC
KomokuD ←これにPrimaryKeyを追加したい。

↑仮にこんな状態のテーブルです。


Alter Table T_TEMP Add Constraint KomokuD Primary Key

のようなことをすると、「既にそのテーブルで定義された主キーを持っています。」とか制約が・・とか2行ほど言われてしまいます。

ためしにテーブルのPrimaryKeyを全て外して、複数PrimaryKeyを指定したら
上手く動いたんですけど・・。

もしよろしければ具体的に教えていただけませんでしょうか?
よろしくお願いします。

補足日時:2001/12/28 10:37
    • good
    • 0

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Q(^^♪ さいきんときどき聞く「プライマリー・バランス」という経済用語、どういう意味でしょうか?

 テレビで、さいきんときどき「プライマリー・バランス」という英語を耳にします。経済に関係したことばのようですが、どういう意味でしょうか?
 日本語に訳せば、どうなるんでしょうか?

 こういう横文字を聞くと、発言してる人は「自分はかしこいんだ、こういうことばも知ってるんだぞ」と言ってるようで、ちょっとむかつきます。

 テレビに出てしゃべるくらいだから、かしこいのはわかってるんで、もっとわかりやすいことばで、ゆっくり話してほしいと思うのですが……

 もしかしたら、わかりやすい日本語でゆっくりしゃべると、ボロが出るので、わざとわけがわからないように早口でしゃべってるのでしょうか?

Aベストアンサー

この「プライマリー・バランス」ということばを流行らせたのは、竹中平蔵大臣だろうと思っています。最近の教科書は見ていませんが、この概念は「プライマリー・バランス」と記述しているはずです。翻訳できないので、そのまま使っているのですが、「根本となる収支の釣り合い」?、無理に訳せば、そんな意味です。

竹中大臣が「プライマリー・バランス」というとき、暗に「プライマリー・バランス」の問題が重要だから、国債の発行はこれ以上増やせないのだという前提で議論しますよという意味合いが入っています。

日本は、90年代前半頃は、これ以上国債発行したら、だめなので、国債発行に頼ることのない国家体制にかえるべきだと考える人と、不況の時は、国債発行で景気を回復させれば、自然に租税が増えて、それにより国債を減らしていけると考える人の二通りがあったのです。

どの家庭でも、まず、もらってきた給料で生活するのが基本なのだけれど、家を建てようと思うと、借金して建てないといけなくなると言うのと似ています。

この借金が、国の場合、国債に当たるのですが、今の日本の状態は、借金して建てた家の子どもが増えたので、それぞれの子ども部屋を作ろうと再び借金して建て増ししたところ、お父さんのご両親の在宅介護が必要になり、再び借金して建て増しをし、おじいさんとおばあさんの部屋を建てたような感じで、借金だらけです。
しかも、お父さんの給料は増えないし、仕方がないから、この借金は子どもたちに返してもらおうということになっているのです。

しかし、世代をまたがらせると、yumi18さんは、大きな家に住めるかも知れないけれど、お父さんの借金を受け継いでずっと借金返済に明け暮れないといけなくなるのです。

この喩えで分かるように、国民の誰にでも、特に若い人たちに分かると、まずいので、我々大人で、多少とも経済学などを勉強した人だけに分かるように話していると言えるかもしれません。

「プライマリー・バランス」の本来の意味は、すでに回答があるので参考にされてください。

この「プライマリー・バランス」ということばを流行らせたのは、竹中平蔵大臣だろうと思っています。最近の教科書は見ていませんが、この概念は「プライマリー・バランス」と記述しているはずです。翻訳できないので、そのまま使っているのですが、「根本となる収支の釣り合い」?、無理に訳せば、そんな意味です。

竹中大臣が「プライマリー・バランス」というとき、暗に「プライマリー・バランス」の問題が重要だから、国債の発行はこれ以上増やせないのだという前提で議論しますよという意味合いが入ってい...続きを読む

QPostgreSQL : 多値従属性(第四正規化)のprimary key 設定

一つの項目の主キーを指定する際、
例えば
day date primary key
と指定しますよね。

2つの項目を1つとし、主キーを指定する記述の仕方がわかりません。

確かOracleでは,例えば
(n_code,s_code)primari key
でしたっけ??あまり自信がないですが、こんなような記述の仕方を
していたような覚えがあります。

よろしくお願い致します。

Aベストアンサー

たとえば...

CREATE TABLE hoge (
n_code INTEGER,
s_code INTEGER,
PRIMARY KEY( n_code, s_code )
);

という感じです。

Qプライマリーバランスとはどういう意味でしょうか

教えてください。宜しくお願いします。

Aベストアンサー

http://allabout.co.jp/career/economyabc/closeup/CU20060530A/index2.htm#2

プライマリーバランスとは?

過去の借金の返済が重くのしかかる国の予算。今後はどうなる?
例えば、単純に、今年返済するローンの元本と利息が18兆円強なら、借りるのも18兆円強に収まるようにすればローンの残高は増えて行きません。もしくは、借りるのが30兆円なら、過去のローンも30兆円返済していけば、増えて行きません。
この両方が寄り添う形で、新しく今年借りるローンが減って、返済する分を増やしていけば、ローン全体の残高は減っていくことになります。

このように、新しく今年借りるローンの額と、今年返済する過去の元本と利息が同じ額になる水準を、「プライマリーバランスが取れている」とか、「プライマリーバランスの均衡」といいます。


http://www.yomiuri.co.jp/atmoney/yougo/000338.htm

プライマリーバランス
 国などの財政状況を示す。国債などの借金を除いた歳入と、過去の借金の元利払いを除く歳出を比較する。歳出の方が多ければ赤字となり、将来の借金負担が経済規模に比べ増大することになる。黒字になれば、新たな借金は過去の借金返済に充てられるため、財政が健全であることを示す。政府は歳出削減などで、2010年代初頭の黒字を目指している。


http://www.yomiuri.co.jp/atmoney/special/47/naruhodo162.htm
プライマリーバランスとは、国の借金である国債発行による収入と、過去に発行した国債の償還や利払いを除いた国の「支出と収入のバランス」のことだ。
 言い換えれば、公共事業や社会保障など国の政策に使う支出や、国から地方への交付金などが、税収など本来の収入でどの程度まかなえているかを指す。これらの支出より収入の方が多く、新たに借金を増やさなくてもいい状態になることを、「プライマリーバランスの黒字化」とい
う。

http://allabout.co.jp/career/economyabc/closeup/CU20060530A/index2.htm#2

プライマリーバランスとは?

過去の借金の返済が重くのしかかる国の予算。今後はどうなる?
例えば、単純に、今年返済するローンの元本と利息が18兆円強なら、借りるのも18兆円強に収まるようにすればローンの残高は増えて行きません。もしくは、借りるのが30兆円なら、過去のローンも30兆円返済していけば、増えて行きません。
この両方が寄り添う形で、新しく今年借りるローンが減って、返済する分を増やしていけば、ロー...続きを読む

QどれがPrimary Key、ForeignKeyか調べるSQL教えて

テーブルの中には通常、Primary Key および Foreign Keyが設定されていると思いますが、あるテーブルの中でどれがPrimary Key および Foreign Keyとされているのか見れるSQLコマンドって、あるのでしょうか、教えてください。

Aベストアンサー

Primary Key(主キー制約)、Foreign Key(参照整合性制約)は共にデータ整合性をチェックする為の「制約」です。
それらはCreate tableやAlter tableというSQL構文で作成することは出来ますが、どの列に設定されているか参照する為のSQL文はありません。
Oracleの場合、User_ConstraintsやUser_Cons_columnsの「データディクショナリ」表をSelect文で表の情報(もちろん制約の情報も)がわかります。
例:Select * from User_Constraints;
他のデータベース(SYBASEとかSQLSERVERとか)は違うかもしれないので確認した方が宜しいと思います。

Qprimary currentの意味は?

primary currentってなんのことでしょうか?
当方、理系の大学生で論文を読んでいるのですが「primary current」の意味がわからず、辞書にも載っていなく困っています。脳、脳磁気などの関係の論文です。
よろしくお願いします。

Aベストアンサー

工業的な用語ですけど、”一次電流”と日本語では呼んでいます。
対象が脳なので、正確な意味はわかりませんけど、一次電流と呼ぶからには二次電流の存在が暗に示されていることになります。

通常たとえばトランスなどでは一次電流が流れるとそれに応じた二次電流が誘起されます。
つまり基本の初めの電流をプライマリ、それに呼応して流れる電流をセカンダリと呼んでいる可能性がありますね。

脳の機能の説明でこれが何を意味するのかはよくわかりませんけど。

QSQLServer:SQL文でシングルクオテーションを混在させたフィールドを追加したい

SQLServer2000を使用しております。

タイトルのとおりなのですが、
SQL文でシングルクオテーションを混在させたフィールドを追加するにはどのように記述すればよいのでしょうか。

レコードに混在させるには2つシングルクオテーションを記述すればよいというのはわかったのですが、
ALTER TABLE 等でフィールドを追加するときは、
この記述では追加が行われませんでした。

どなたかご教授の程、宜しくお願い致します。

Aベストアンサー

フィールド名(列名)にシングルクオテーションが含まれている場合と言うことでしょうか?

それでしたら、フィールド名を[]で囲めば良いと思います。

ALTER TABLE dbo.TABLE1 ADD
[TEXT'1] char(10) NULL
GO

的はずれな回答でしたらごめんなさい。

Qpresentの意味です。

Mr. Edwards, the winner of the South Carolina primary in 2004, also slashed into his leading rival in the state, Mr. Obama, by portraying him as weak-willed for voting “present” -- rather than yea or nay -- on scores of bills as an Illinois state senator.

このpresentとon scores of billsが何を指しているのかが分かりません。
どうぞよろしくおねがいします。

Aベストアンサー

ちょっと検索してみたところ、アメリカの議会では投票はボタンを押して自分の意志を示すようで、そのボタンにはyea, nay, present つまり賛成、反対、出席の3種類があるようです。
で、この「出席」というのは日本で言えば白票か棄権に当たるようで、出席していることは示しているものの、賛成か反対かの態度を示していないわけですね。

on scores of bills は「多数の議案において」ということですので、議員として多数の議案に白票を投じるとはなんと意志薄弱な人物であることか、と非難したということかと思います。

QOracleのテーブル作成スクリプトを作成したい

Oracle8i のDBA Studioで数十の表を作成したのですが、ここからテーブルの作成スクリプトを出そうとして困りました。いわゆる Create Table文なのですが、これを自動で簡単に作る方法はないでしょうか?SQL-ServerのEnterprise Managerでは、SQLスクリプトの作成があって、Create文を簡単に生成できるのですが、これと同じような感覚で、既に作成してあるテーブルのCreate文を出力する方法はないでしょうか?Oracleには、ほとんど慣れていないので、方法があると思うのですが、探し方が悪いらしく途方にくれています。どなたかよい方法を御存じないでしょうか。

Aベストアンサー

Exportユーティリティは、通常はコマンドプロンプトから起動します。
Oracle8iの場合は "exp"
Oracle8.0の場合は"exp80"
だったと思います。

コマンドの後にログインID/パスワード、オプションパラメータを色々と
設定します。DBA StudioのようにGUI操作ではありませんが、Oracleは
本来はコマンドラインからコマンドを入力するのが、本来の操作方法です。

これを機会に、コマンドでOracleを操作する方法も勉強されてはどうですか?


#Oracleは、本来はプロフェッショナル向けのデータベースソフトです。
#初心者向けの簡単な操作方法を希望するのならば、他のDBに
#乗り換えた方がいいでしょう。

QSeeの意味

The increased productivity we are seeing today is one of the primary reasons we have responded to this recession more effectively than in previous downturn.

上記の英文を訳すと、
”我々が、現在経験している生産性の向上が、以前の景気低迷期より効果的に今般の不況に対処した最大の理由です。”となるのですが、
要するに、生産性の向上を目指して、不況に対して迅速に対応したということだと思うのですが、実際に訳す時は、”we are seeing today”などはどの様に訳したら良いのでしょうか?

Aベストアンサー

大ざっぱに言って、seeは「見ている」でいいのではないでしょうか。weは一般的なわれわれなので、we are seeing todayは、主語がなくてもいい日本語なら「今日見られる」と受け身に言い換えてもいいでしょう。すると、The increased productivity we are seeing todayは、「今日見られる生産性の増加」になります。

全体の意味は、「いま生産性が向上しているのは、今回は不況に対して効果的に対応してきた証拠だ」といった感じだろうと思います。

QSQLServerをlocalhost接続のみで使用

SQLServerをlocalhost接続のみで使用して、外部からの接続を遮断したいと思います。
どのように設定すればよろいいでしょうか?

Windows2000Server
SQLServer2000
ターミナルサービスによりクライアントから接続

Aベストアンサー

手っ取り早く、パケットフィルタリングで、ポート3389以外を拒否するようにしとくとか。


人気Q&Aランキング

おすすめ情報