MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

MySQLで特定のテーブルの主キー「列名」を取得するにはどうすればよいですか?


まず、主キーCustomerId-

を持つテーブルを作成しましょう。
mysql> create table DemoTable
   (
   CustomerId int NOT NULL AUTO_INCREMENT,
   CustomerName varchar(20),
   CustomerAge int,
   CustomerCountryName varchar(100),
   PRIMARY KEY(CustomerId)
   );
Query OK, 0 rows affected (0.94 sec)
>

以下は、MySQLの特定のテーブルの主キー「列名」を取得するためのクエリです-

mysql> SELECT COLUMN_NAME
FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE
WHERE TABLE_NAME = 'DemoTable'
AND CONSTRAINT_NAME = 'PRIMARY';

これにより、次の出力が生成されます-

+-------------+
| COLUMN_NAME |
+-------------+
| CustomerId  |
+-------------+
1 row in set, 2 warnings (0.12 sec)

  1. MySQLを使用してJavaでResultSetの列名を取得するにはどうすればよいですか?

    結果セットの列名を取得するには、getMetaData()メソッドを使用する必要があります。 getMetadata()のプロトタイプは次のとおりです- ResultSetMetaData getMetaData throws SQLException; 5つの列名を持つMySQLテーブルを作成します。テーブルを作成するためのクエリは次のとおりです- mysql> create table javagetallcolumnnames    -> (    -> Id int NOT NULL AUTO_INCREMENT,  

  2. 列が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` = yourT