IDatabaseMetaData.GetCrossReference 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
检索给定外键表中外键列的说明,这些外键列引用主键或表示父表的唯一约束的列(可以是相同或不同的表)。
[Android.Runtime.Register("getCrossReference", "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/sql/ResultSet;", "GetGetCrossReference_Ljava_lang_String_Ljava_lang_String_Ljava_lang_String_Ljava_lang_String_Ljava_lang_String_Ljava_lang_String_Handler:Java.Sql.IDatabaseMetaDataInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")]
public Java.Sql.IResultSet? GetCrossReference(string? parentCatalog, string? parentSchema, string? parentTable, string? foreignCatalog, string? foreignSchema, string? foreignTable);
[<Android.Runtime.Register("getCrossReference", "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/sql/ResultSet;", "GetGetCrossReference_Ljava_lang_String_Ljava_lang_String_Ljava_lang_String_Ljava_lang_String_Ljava_lang_String_Ljava_lang_String_Handler:Java.Sql.IDatabaseMetaDataInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")>]
abstract member GetCrossReference : string * string * string * string * string * string -> Java.Sql.IResultSet
参数
- parentCatalog
- String
目录名称;必须与存储在数据库中的目录名称匹配;“”检索那些没有目录的目录; null 表示从选择条件中删除目录名称
- parentSchema
- String
架构名称;必须与存储在数据库中的架构名称匹配;“”检索没有架构的那些项; null 表示从选择条件中删除架构名称
- parentTable
- String
导出密钥的表的名称;必须与表名匹配,因为它存储在数据库中
- foreignCatalog
- String
目录名称;必须与存储在数据库中的目录名称匹配;“”检索那些没有目录的目录; null 表示从选择条件中删除目录名称
- foreignSchema
- String
架构名称;必须与存储在数据库中的架构名称匹配;“”检索没有架构的那些项; null 表示从选择条件中删除架构名称
- foreignTable
- String
导入密钥的表的名称;必须与表名匹配,因为它存储在数据库中
返回
ResultSet - 每行都是外键列说明
- 属性
例外
如果出现数据库错误,则为
注解
检索给定外键表中外键列的说明,这些外键列引用主键或表示父表的唯一约束的列(可以是相同或不同的表)。 从父表返回的列数必须与构成外键的列数匹配。 它们按FKTABLE_CAT、FKTABLE_SCHEM、FKTABLE_NAME和KEY_SEQ排序。
每个外键列说明具有以下列:OL>LI B PKTABLE_CAT/B> String => 父键表目录(可能) null<LI B>>PKTABLE_SCHEM</B> String => 父键表架构 (可能 ) null><<LI><B>PKTABLE_NAME</B> String => 父键表名称 <LI><><B>PKCOLUMN_NAME<</B String => 父键列名 <LI><B>FKTABLE_CAT</B>><<字符串 => 正在导出的外键表目录 (可能null) <nullLI B>FKTABLE_SCHEM/B> String => 外键表架构 (可能) null正在导出 (可能是 null)><< LI B>FKTABLE_NAME</B> String => 正在导出><<的外键表名称 LI><B FKCOLUMN_NAME<</B String => 正在导出<的外键列名 LI><B>>KEY_SEQ</B>> short =>外键中的序列号(值 1 表示外键的第一列,值为 2 表示外键中的第二列)。
<LI B UPDATE_RULE/B> short => 更新父密钥时外键会发生什么情况:<UL<>LI importedNoAction - 如果已导入 <LI>> importedKeyCascade ,则不允许更新父密钥 - 更改导入的密钥以同意父密钥更新 <LI> importedKeySetNull - 更改导入密钥(NULL如果已更新<其父密钥 LI>)<>><importedKeySetDefault - 如果已更新<其父密钥 LI importedKeyRestrict,请将导入的密钥更改为默认值 - 与 importedKeyNoAction (对于 ODBC 2.x 兼容性)</UL<>LI><> B>DELETE_RULE</B> short => 删除父键时外键会发生什么情况。
<UL><LI importedKeyNoAction - 如果已导入 <LI> importedKeyCascade,则不允许删除父密钥 - 删除导入已删除密钥 <LI>> importedKeySetNull 的行 - 如果主键具有,请将导入的密钥更改为 NULL 已删除 <LI> importedKeyRestrict - 与 importedKeyNoAction (for ODBC 2.x compatibility) <LI> importedKeySetDefault 相同 - 如果已删除<其父密钥 /UL><LI><B,请将导入的密钥更改为默认值FK_NAME/B> String => 外键名称 (可能null) <LI B>PK_NAME</B> String => 父键名称 (可能 null) <LI><B>DEFERRABILITY</B> short => 可以延迟评估外键约束,直到提交 <UL<>LI> importedKeyInitiallyDeferred - 请参阅 SQL92 for definition LI><> importedKeyInitiallyImmediate - 请参阅 SQL92 for definition <LI><><importedKeyNotDeferrable - 有关定义 </UL></OL,请参阅 SQL92>
本页的某些部分是根据 创建和共享的工作进行的修改,并根据 许可证中所述的条款使用。