Postgresql 触发器或别名是否在Postgres中返回数据?
Postgres 9.2.2、Django 1.6.5、Python 2.7.5Postgresql 触发器或别名是否在Postgres中返回数据?,postgresql,Postgresql,Postgres 9.2.2、Django 1.6.5、Python 2.7.5 Column | Type | Modifiers ---------------+------------------------+------------------------------------ id | integer | not null default nextval('emp
Column | Type | Modifiers
---------------+------------------------+------------------------------------
id | integer | not null default nextval('employee_id_seq'::regclass)
first_name | character varying(75) | not null
surname | character varying(75) | not null
mname | character varying(75) |
date_of_birth | date |
staff_id | character varying(20) |
img1 | character varying(100) |
slug | character varying(50) |
created | date | not null
modified | date | not null
ppsn | character varying(20) |
Indexes:
"employee_pkey" PRIMARY KEY, btree (id)
"employee_slug_key" UNIQUE, btree (slug)
"employee_slug_like" btree (slug varchar_pattern_ops)
Referenced by:
TABLE "employeedynamic" CONSTRAINT "employee_id_refs_id_71e22023" FOREIGN KEY (employee_id) REFERENCES employee(id) DEFERRABLE INITIAL
LY DEFERRED
TABLE "drvliclicence" CONSTRAINT "employee_id_refs_id_afc65012" FOREIGN KEY (employee_id) REFERENCES employee(id) DEFERRABLE INITIALLY
DEFERRED
TABLE "coursedetail_attendance" CONSTRAINT "employee_id_refs_id_c8466b5f" FOREIGN KEY (employee_id) REFERENCES employee(id) DEFERRABLE
INITIALLY DEFERRED
问题:a.name
如何返回这些详细信息?
我试着查找别名和触发器,但我想不出来
检查触发器:
=# \dft
List of functions
Schema | Name | Result data type | Argument data types | Type
--------+------+------------------+---------------------+------
(0 rows)
或
知道我如何找到导致
a.name
返回数据的原因吗?上面显示的employee
表中没有name
字段。查询与表定义不匹配。您在查询输出中显示的内容看起来像一个复合类型,只是缺少结束符)
。编辑错误?@Craig输出可能需要关闭)。即使您正确地说name
不是employee
字段,该查询也可以正常工作。我想知道这是怎么回事。我找不到答案。我想知道Djangosyncdb
命令是否可以在Postgres模式中创建别名或触发器。我在models.py
和views.py
中都看不到这方面的证据。复合类型是什么意思?复合类型是使用createtypename作为(…)
创建的数据类型。能否将表格显示为CREATE table
语句?您可以从pg_dump-t
获取它。还有几行示例数据。创建表employee(id整数不为空、名字字符变化(75)不为空、姓氏字符变化(75)不为空、mname字符变化(75)、出生日期、职员id字符变化(20)、img1字符变化(100)、slug字符变化(50),创建日期不为空,修改日期不为空,ppsn字符变化(20));将表public.employee OWNER改为postgres;从stdin复制员工(id、姓名、姓氏、mname、出生日期、员工id、img1、slug、创建、修改、ppsn);233 Damien Dowds\N 2068-07-31 13392\N Damien 233 2014-12-19 2014-12-19 1234567a 235 Christy Crow\N 2040-07-15 7792\N christyc235 2014-12-19 2014-12-12-19-19 1234567a 244 John Cornaly\N\N\N\N johnc244 2014-12-19 2014-12-19-19\N 251 Seamus Flaherty\N\N\N\N\N\N\N\N seamusf251 2014-12-19-12-19 2014-12-12-12-12-19\N\N字段中没有名称employee
您在上面显示的表格。查询与表定义不匹配。您在查询输出中显示的内容看起来像一个复合类型,只是缺少结束符)
。编辑错误?@Craig输出可能需要关闭)。即使您正确地说name
不是employee
字段,该查询也可以正常工作。我想知道这是怎么回事。我找不到答案。我想知道Djangosyncdb
命令是否可以在Postgres模式中创建别名或触发器。我在models.py
和views.py
中都看不到这方面的证据。复合类型是什么意思?复合类型是使用createtypename作为(…)
创建的数据类型。能否将表格显示为CREATE table
语句?您可以从pg_dump-t
获取它。还有几行示例数据。创建表employee(id整数不为空、名字字符变化(75)不为空、姓氏字符变化(75)不为空、mname字符变化(75)、出生日期、职员id字符变化(20)、img1字符变化(100)、slug字符变化(50),创建日期不为空,修改日期不为空,ppsn字符变化(20));将表public.employee OWNER改为postgres;从stdin复制员工(id、姓名、姓氏、mname、出生日期、员工id、img1、slug、创建、修改、ppsn);233 Damien Dowds\N 2068-07-31 13392\N Damien 233 2014-12-19 2014-12-19 1234567a 235 Christy Crow\N 2040-07-15 7792\N christyc235 2014-12-19 2014-12-12-19-19 1234567a 244 John Cornaly\N\N\N johnc244 2014-12-19 2014-12-19\N 251 Seamus Flaherty
=# \dft
List of functions
Schema | Name | Result data type | Argument data types | Type
--------+------+------------------+---------------------+------
(0 rows)
=# SELECT tgname FROM pg_trigger, pg_class WHERE tgrelid=pg_class.oid and relname = 'employee';
RI_ConstraintTrigger_101722
RI_ConstraintTrigger_101723
RI_ConstraintTrigger_101732
RI_ConstraintTrigger_101733
RI_ConstraintTrigger_101737
RI_ConstraintTrigger_101738
(6 rows)