列がMySQLの主キーであるかどうかをどのように取得しますか?
列が主キーであるかどうかを取得するには、COLUMN_NAMEおよびCOLUMN_KEY='PRI'を使用します。これで、全体の構文は次のようになります-
select column_name, case when column_key= 'PRI' then 'yourMessage1' else ''yourMessage2' end as anyAliasName from information_schema.columns where table_schema =database() and `table_name` = yourTableName order by `table_name`, ordinal_position;
上記の構文を理解するために、テーブルを作成しましょう-
mysql> create table DemoTable1886 ( Id int NOT NULL, FirstName varchar(20), LastName varchar(20), Age int, DateOfBirth datetime, Education varchar(40), PRIMARY KEY(Id) ); Query OK, 0 rows affected (0.00 sec)
特定の列が主キーであるかどうかを取得するためのクエリは次のとおりです-
mysql> select column_name, case when column_key= 'PRI' then 'This is a Primary key Column' else 'This is not a Primary key Column' end as Output from information_schema.columns where table_schema =database() and `table_name` = 'DemoTable1886' order by `table_name`, ordinal_position;
これにより、次の出力が生成されます-
+-------------+--------------------------------+ | COLUMN_NAME | Output | +-------------+--------------------------------+ | Id | This is a Primary key Column | | FirstName |This is not a Primary key Column| | LastName |This is not a Primary key Column| | Age |This is not a Primary key Column| | DateOfBirth |This is not a Primary key Column| | Education |This is not a Primary key Column| +-------------+--------------------------------+ 6 rows in set (0.00 sec)
-
MySQLを使用してJavaでResultSetの列名を取得するにはどうすればよいですか?
結果セットの列名を取得するには、getMetaData()メソッドを使用する必要があります。 getMetadata()のプロトタイプは次のとおりです- ResultSetMetaData getMetaData throws SQLException; 5つの列名を持つMySQLテーブルを作成します。テーブルを作成するためのクエリは次のとおりです- mysql> create table javagetallcolumnnames -> ( -> Id int NOT NULL AUTO_INCREMENT,  
-
MySQLのさまざまなテーブルに対して主キーを外部として参照するにはどうすればよいですか?
以下は構文です- alter table yourSecondTableName add constraint `yourConstraintName` foreign key(`yourSecondTableNamePrimaryKey`) references yourFirstTableName(yourFirstTablePrimaryKeyColumnName); 上記の構文を理解するために、最初にテーブルを作成しましょう- mysql> create table demo65 −> ( −> id int not null primary