我想就如何在SQL中显示创建的表的所有CONSTRAINT提供一些建议。
我创建了一个表格:
CREATE TABLE ACCOUNT( USERNAME VARCHAR(15) UNIQUE, PASSWORD VARCHAR(15), CONSTRAINT ACCOUNT_UNIQUE UNIQUE(USERNAME), CONSTRAINT ACCOUNT_PK PRIMARY KEY(USERNAME,PASSWORD)我想发现这些约束,因为当我在SQL命令行中执行/或运行命令时,我无法再显示这些约束。
有没有办法显示表ACCOUNT的所有CONSTRAINT?
I would like to have some suggestions on how to display all the CONSTRAINTs of a created table in SQL.
I created a table:
CREATE TABLE ACCOUNT( USERNAME VARCHAR(15) UNIQUE, PASSWORD VARCHAR(15), CONSTRAINT ACCOUNT_UNIQUE UNIQUE(USERNAME), CONSTRAINT ACCOUNT_PK PRIMARY KEY(USERNAME,PASSWORD)I would like to discover these constraints because when I do / or RUN command in the SQL command line, I can't display those constraints anymore.
Is there a way to display all the CONSTRAINTs for the table ACCOUNT?
最满意答案
对于Oracle:
SELECT * FROM USER_CONSTRAINTS WHERE table_name = 'ACCOUNT';对于mySQL
您可以使用DESCRIBE ACCOUNT来查看表结构,包含约束,或者还可以使用SHOW CREATE TABLE ACCOUNT来查看包含约束的创建代码。
另一种方法是:
SELECT COLUMN_NAME, CONSTRAINT_NAME, REFERENCED_COLUMN_NAME, REFERENCED_TABLE_NAME FROM information_schema.KEY_COLUMN_USAGE WHERE TABLE_NAME = 'ACCOUNT';For Oracle:
SELECT * FROM USER_CONSTRAINTS WHERE table_name = 'ACCOUNT';For mySQL
You can use DESCRIBE ACCOUNTto view the table structure, included the constraints, or also SHOW CREATE TABLE ACCOUNT to see the creation code, which includes the constraints.
Another way is:
SELECT COLUMN_NAME, CONSTRAINT_NAME, REFERENCED_COLUMN_NAME, REFERENCED_TABLE_NAME FROM information_schema.KEY_COLUMN_USAGE WHERE TABLE_NAME = 'ACCOUNT';更多推荐
发布评论