DatabaseLink`
DatabaseLink`
SQLTableExportedKeys
SQLTableExportedKeys[conn,table]
table の主キーを参照する外部キーについての情報を返す.
詳細とオプション
- SQLTableExportedKeysを使うためには,まずNeeds["DatabaseLink`"]を使って DatabaseLink をロードする必要がある.
- 使用可能なオプション
-
"Catalog" None 使用するデータベースカタログ "Schema" None 使用するデータベーススキーマ "ShowColumnHeadings" False 結果とともに見出しを返すかどうか
例題
例 (1)
Needs["DatabaseLink`"]このセクションの例を実際に試してみて,記載の通りに動作しなかった場合は,データベースの例の使用で述べているようにDatabaseLink`DatabaseExamples`パッケージを使ってデータベースをインストールするか,もとの状態に戻す必要がある可能性がある.
conn = OpenSQLConnection["demo"];SQLCreateTable[conn, SQLTable["PEOPLE"], {SQLColumn["id", "DataTypeName" -> "Integer", "PrimaryKey" -> True], SQLColumn["Name", "DataTypeName" -> "VARCHAR", "DataLength" -> 255],
SQLColumn["Age", "DataTypeName" -> "Integer"]
}]もう一つ表を作成する."\"\!\(\*StyleBox[\"PersonId\", \"InlineCode\"]\)\!\(\*StyleBox[\"\\\"\", \"InlineCode\"]\)"列は"PEOPLE"表の主キーを参照する外部キー制約として使われる:
SQLCreateTable[conn, SQLTable["EMPLOYEES"], {SQLColumn["id", "DataTypeName" -> "Integer", "PrimaryKey" -> True],
SQLColumn["PersonId", "DataTypeName" -> "Integer"], SQLColumn["Department", "DataTypeName" -> "VARCHAR", "DataLength" -> 255],
SQLColumn["Tenure", "DataTypeName" -> "Integer"]
}]SQLExecute[conn, "ALTER TABLE EMPLOYEES ADD CONSTRAINT FK_PersonId FOREIGN KEY (PersonId) REFERENCES PEOPLE(id)"]SQLTableIndexInformation[conn, "EMPLOYEES", "ShowColumnHeadings" -> True]//TableForm"PEOPLE"表の主キー列はエキスポートされたキーとなる:
SQLTableExportedKeys[conn, "PEOPLE", "ShowColumnHeadings" -> True]//TableFormSQLDropTable[conn, "EMPLOYEES"]SQLDropTable[conn, "PEOPLE"]CloseSQLConnection[conn];