рдпрд╣ рд▓реЗрдЦ рдХрд╛ рддреАрд╕рд░рд╛ рднрд╛рдЧ рд╣реИ рдЬреЛ рд╕рд┐рд╕реНрдЯрдо рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдУрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рджреНрд╡рд╛рд░рд╛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИ: pg_class, pg_attribute, pg_constraints, рдЖрджрд┐ред
рд▓реЗрдЦ рдХрд╛ рдпрд╣ рдЦрдВрдб рдЙрди рдХрд╛рд░реНрдпреЛрдВ рдХреА рдЪрд░реНрдЪрд╛ рдХрд░рддрд╛ рд╣реИ рдЬреЛ
рдЕрдиреБрдХреНрд░рдореЛрдВ, рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рдорд┐рд▓реА рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдФрд░
рддрд╛рд▓рд┐рдХрд╛ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреА рд╡рд┐рд╢реЗрд╖ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЛ рд╡рд╛рдкрд╕ рдХрд░рддреЗ рд╣реИрдВ ред
рдпрд╣ рднреА рджреЗрдЦреЗрдВ
PostgreSQL рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдХреЗ рд▓рд┐рдП рдХрд╛рд░реНрдпред рднрд╛рдЧ рдПрдХ ;
PostgreSQL рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдХреЗ рд▓рд┐рдП рдХрд╛рд░реНрдпред рднрд╛рдЧ рджреЛ ;
PostgreSQL рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдХреЗ рд▓рд┐рдП рдХрд╛рд░реНрдпред рдЕрдВрдд (рднрд╛рдЧ рдЪрд╛рд░) ред
рд▓реЗрдЦ рдХреА рдкрд╣рд▓реА рдЫрдорд╛рд╣реА рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдкрд░ рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдВ рдкреНрд░рджрд╛рди рдХрд░рддреА рд╣реИред рджреВрд╕рд░рд╛ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рд╕реНрд░реЛрдд рдХреЛрдб рд╣реИред рдЙрди рдкрд╛рдардХреЛрдВ рдХреЗ рд▓рд┐рдП рдЬреЛ рдХреЗрд╡рд▓ рд╕реНрд░реЛрдд рдЧреНрд░рдВрдереЛрдВ рдореЗрдВ рд░реБрдЪрд┐ рд░рдЦрддреЗ рд╣реИрдВ, рд╣рдо рддреБрд░рдВрдд рдкрд░рд┐рд╢рд┐рд╖реНрдЯ рдореЗрдВ рдЖрдЧреЗ рдмрдврд╝рдиреЗ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреЗрддреЗ рд╣реИрдВред
рдПрдХ рдлрд╝рдВрдХреНрд╢рди рдХреА рд╕рдВрд░рдЪрдирд╛ рдЬреЛ рддрд╛рд▓рд┐рдХрд╛ рдЕрдиреБрдХреНрд░рдореЛрдВ рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреА рдПрдХ рд╕реВрдЪреА рд▓реМрдЯрд╛рддреА рд╣реИ
рдЕрдВрдЬреАрд░ред 2. рдХрд╛рд░реНрдп рдЬрд┐рд╕ рдкрд░ adtf_Table_Sequences рдлрд╝рдВрдХреНрд╢рди рдирд┐рд░реНрднрд░ рдХрд░рддреЗ рд╣реИрдВрддрд╛рд▓рд┐рдХрд╛ 11. рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рдЙрджреНрджреЗрд╢реНрдпредрд╕рдВрдЦреНрдпрд╛ | рдирд╛рдо | рдирд┐рдпреБрдХреНрддрд┐ |
---|
1 | admtf_Sequence_Features | рдлрд╝рдВрдХреНрд╢рди рддрд╛рд▓рд┐рдХрд╛ рдЕрдиреБрдХреНрд░рдо рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреА рдПрдХ рд╕реВрдЪреА рджреЗрддрд╛ рд╣реИред |
2 | admtf_Table_Sequences | рдлрд╝рдВрдХреНрд╢рди рдбреЗрдЯрд╛рдмреЗрд╕ рддрд╛рд▓рд┐рдХрд╛ рдЕрдиреБрдХреНрд░рдореЛрдВ рдФрд░ рдЙрдирдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреА рдПрдХ рд╕реВрдЪреА рджреЗрддрд╛ рд╣реИред |
Admtf_Sequence_Features рдлрд╝рдВрдХреНрд╢рди - рдбреЗрдЯрд╛рдмреЗрд╕ рдЕрдиреБрдХреНрд░рдо рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреА рд╕реВрдЪреА
Adtf_Sequence_Features рдлрд╝рдВрдХреНрд╢рди рдбреЗрдЯрд╛рдмреЗрд╕ рдЕрдиреБрдХреНрд░рдо рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреА рдПрдХ рд╕реВрдЪреА рджреЗрддрд╛ рд╣реИред рд╕реЛрд░реНрд╕ рдХреЛрдб рдХреЛ рдпрд╣рд╛рдВ рджреЗрдЦрд╛ рдФрд░ рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ ред
Adtf_Sequence_Features рдлрд╝рдВрдХреНрд╢рди рдбреЗрдЯрд╛рдмреЗрд╕ рдЕрдиреБрдХреНрд░рдо рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ (рдЦреЛрдЬ) рдХреА рдПрдХ рд╕реВрдЪреА рд▓реМрдЯрд╛рддрд╛ рд╣реИ
ред
рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ, рдлрд╝рдВрдХреНрд╢рди рдЕрдиреБрдХреНрд░рдо рдХрд╛ рдирд╛рдо ( a_SequenceName ) рдФрд░ рдЙрд╕ рдпреЛрдЬрдирд╛ рдХрд╛ рдирд╛рдо рд▓реЗрддрд╛ рд╣реИ рдЬрд┐рд╕рдХреЗ рднреАрддрд░ рдЕрдиреБрдХреНрд░рдо рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ ( a_ShemaName )ред
Adtf_Sequence_Features рдлрд╝рдВрдХреНрд╢рди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдЙрддреНрдкрдиреНрди рд╣реБрдИ рдХреНрдпреЛрдВрдХрд┐ рдЕрдиреБрдХреНрд░рдо рдХреА рдореБрдЦреНрдп рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХреА рдЬрд╛рддреА рд╣реИрдВ рдЬрд┐рд╕рдХрд╛ рдирд╛рдо рдЕрдиреБрдХреНрд░рдо рдХреЗ рдирд╛рдо рд╕реЗ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИ, рдФрд░ рдбреЗрдЯрд╛ рдХрд╛ рдЪрдпрди рдЪрдпрди рдХрдерди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдЕрдиреБрдХреНрд░рдо рдХрд╛ рдирд╛рдо, рдпреЛрдЬрдирд╛ рдХрд╛ рдирд╛рдо рдФрд░ рдЕрдиреБрдХреНрд░рдо рдХреА рдЯрд┐рдкреНрдкрдгреА pg_class , pg_namespace рдФрд░ pg_description рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдУрдВ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХреА рдЬрд╛рддреА рд╣реИред
SELECT * FROM kr_road_network_vertices_pgr_id_seq;
рд░рд┐рдорд╛рд░реНрдХ 6
PostgreSQL 10 рдиреЗ рдЕрдиреБрдХреНрд░рдо рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдФрд░ рдЗрд╕рдХреЗ рд░рд╛рдЬреНрдпреЛрдВ рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЛ рдЕрд▓рдЧ рдХрд┐рдпрд╛ред рдЗрд╕рдХреЗ рд▓рд┐рдП, рдЕрдиреБрдХреНрд░рдо рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЗ рд╕рд╛рде pg_fterence рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдкреЗрд╢ рдХреА рдЧрдИ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдореВрд▓реНрдп ( start_value ), рд╡реЗрддрди рд╡реГрджреНрдзрд┐ ( increment_by ) рдФрд░ рдЕрдиреБрдХреНрд░рдо рдХрд╛ рдЕрдзрд┐рдХрддрдо рдореВрд▓реНрдп ( max_value ) рд╣реИред рдЕрдиреБрдХреНрд░рдо рджреНрд╡рд╛рд░рд╛ рдЕрдВрддрд┐рдо рдорд╛рди ( last_value ) рдХреЛ рдЕрдиреБрдХреНрд░рдо рдХреЗ рдирд╛рдо рдХреЗ рд╕рд╛рде "рддрд╛рд▓рд┐рдХрд╛" рдореЗрдВ рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдЯрд┐рдкреНрдкрдгреА рдХрд╛ рдЕрдВрддред
рддрд╛рд▓рд┐рдХрд╛ рдХреЗ рдПрдХ рдПрдирд╛рд▓реЙрдЧ рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рдЕрдиреБрдХреНрд░рдо рдХреА рдкреНрд░рд╕реНрддреБрддрд┐, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ, рдЕрдиреБрдХреНрд░рдо рдХреЗ рдЕрдВрддрд┐рдо рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рдореВрд▓реНрдп ( last_value ) рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╕реЗ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд╣реЛрддреА рд╣реИ, рдЬреЛ рдЕрдиреБрдХреНрд░рдо рдХреА рд╕реНрдерд┐рддрд┐ рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЕрдиреБрдХреНрд░рдо рд╣реА рдирд╣реАрдВред
Pg_class рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдЕрдиреБрдХреНрд░рдо рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рд╕рдВрдмрдВрдз рдкреНрд░рдХрд╛рд░ (relkind = 'S' ) рдХреЗ рдорд╛рди рд╕реЗ рддрд╛рд▓рд┐рдХрд╛ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рд╕реЗ рднрд┐рдиреНрди рд╣реЛрддреА рд╣реИред
рдПрдХ рдордирдорд╛рдирд╛ рдЕрдиреБрдХреНрд░рдо рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЛ рдирд┐рдХрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдЧрддрд┐рд╢реАрд▓ рдПрд╕рдХреНрдпреВрдПрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред
EXECUTE 'SELECT last_value,start_value,increment_by,max_value FROM '|| LOWER(a_SchemaName)||'.'||LOWER(a_SequenceName) INTO v_SequenceLastValue,v_SequenceStartValue, v_SequenceIncrementBy,v_SequenceMaxValue ;
рд╕рд╛рд░рдгреА 12. рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдирддреАрдЬрд╛ рд╣реИ adff_Sequence_Features ('рдЬрдирддрд╛', 'kr_road_network_vertices_pgr_id_seq')редрдирд╛рдо | рдЯрд┐рдкреНрдкрдгреА | рд╡рд░реНрддрдорд╛рди | рд╢реБрд░реБрдЖрдд | рд╡реГрджреНрдзрд┐ | рдЕрдВрдд |
---|
kr_road_network _vertices_pgr_id _seq | рдЕрдиреБрд╡рд░реНрддреА рд▓рдЧрд╛рддрд╛рд░ | 138,023 | 1 | 1 | 9223372036854775807 |
рдбреЗрдЯрд╛рдмреЗрд╕ рддрд╛рд▓рд┐рдХрд╛ рдЕрдиреБрдХреНрд░рдореЛрдВ рдФрд░ рдЙрдирдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреА рд╕реВрдЪреА admtf_Table_Sequences рд╕реВрдЪреА
Admtf_Table_Sequences рдлрд╝рдВрдХреНрд╢рди рдбреЗрдЯрд╛рдмреЗрд╕ рддрд╛рд▓рд┐рдХрд╛ рдХреЗ рдЕрдиреБрдХреНрд░рдо ( SEQUENCE ) рдХреА рдПрдХ рд╕реВрдЪреА рджреЗрддрд╛ рд╣реИ, рдЬреЛ рдЗрд╕рдХреЗ рдХреНрд╖реЗрддреНрд░реЛрдВ рдФрд░ рдЗрди рдЕрдиреБрдХреНрд░рдореЛрдВ рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЛ рдЙрддреНрдкрдиреНрди рдХрд░рддрд╛ рд╣реИред рд╕реНрд░реЛрдд рдХреЛрдб рдХреЛ рдпрд╣рд╛рдВ рджреЗрдЦрд╛ рдФрд░ рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ , рдФрд░ рдпрд╣рд╛рдВ рдПрдХ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдПрдХ рд╕рдВрд╕реНрдХрд░рдг рд╣реИ рдЬреЛ рдХрд░реНрд╕рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ ред
рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд░реВрдк рдореЗрдВ, рдлрд╝рдВрдХреНрд╢рди рд╕реНрд░реЛрдд рддрд╛рд▓рд┐рдХрд╛ ( a_TableName ) рдХрд╛ рдирд╛рдо рд▓реЗрддрд╛ рд╣реИ рдФрд░ рд╕реНрдХреАрдорд╛ рдХрд╛ рдирд╛рдо рдЬрд┐рд╕рдХреЗ рднреАрддрд░ рддрд╛рд▓рд┐рдХрд╛ рдмрдирд╛рдИ рдЧрдИ рд╣реИ (
a_SchemaName
)ред

рдЖрдХреГрддрд┐ рдореЗрдВ рдСрдкрд░реЗрдЯрд░ рдХрд╛ рд╕реНрд░реЛрдд рдХреЛрдб SELECT pseq.relname AS SequenceName,snsp.nspname AS SequenceSchemaName, COALESCE(dsc.description,', ' ||da.attname) AS SequenceDescription, d.depType AS DependcyType,da.attname AS AttributeName FROM pg_depend d INNER JOIN pg_class pseq ON d.objid = pseq.oid INNER JOIN pg_namespace snsp ON pseq.relnamespace=snsp.oid LEFT OUTER JOIN pg_Description dsc ON pseq.oid=dsc.objoid AND dsc.objsubid=0 INNER JOIN pg_class tbl ON d.refobjid = tbl.oid INNER JOIN pg_namespace nsp ON tbl.relnamespace=nsp.oid INNER JOIN pg_attribute da ON da.attrelid= d.refobjid AND da.attnum= d.refobjsubid WHERE LOWER(nsp.nspname)=LOWER(a_SchemaName) AND LOWER(tbl.relname)=LOWER(a_TableOID) AND tbl.relkind = 'r' AND pseq.relkind = 'S' ORDER BY pseq.relname;
рдПрдХрд▓ рдЕрдиреБрдХреНрд░рдо рдХрд╛ рд╡рд┐рд╡рд░рдг pg_class рдореЗрдВ рдПрдХ рд░рд┐рдХреЙрд░реНрдб рдХрд╛ рд╕рдВрдпреЛрдЬрди рд╣реИ, рдЬреЛ рдЗрд╕реЗ рд╢рд╛рд░реАрд░рд┐рдХ рд╕рдВрдмрдВрдз рдФрд░ рдЕрдиреБрдХреНрд░рдо рдХреА рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдкрд░ рдбреЗрдЯрд╛ рд╡рд╛рд▓реЗ рдЕрдиреБрдХреНрд░рдо рдХреЗ рдирд╛рдо рдХреЗ рд╕рд╛рде рдПрдХ рд╕рд╢рд░реНрдд рддрд╛рд▓рд┐рдХрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рд╡рд░реНрдгрд┐рдд рдХрд░рддрд╛ рд╣реИред
рдЕрдиреБрдХреНрд░рдо рдФрд░ рд╕реНрд░реЛрдд рддрд╛рд▓рд┐рдХрд╛ рдХреЗ рдмреАрдЪ рд╕рдВрдмрдВрдз рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА pg_dependence рд╕рд┐рд╕реНрдЯрдо рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХреА рдЬрд╛рддреА рд╣реИред
рддрд╛рд▓рд┐рдХрд╛ 13. рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ pg_depend рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдБредрдирд╛рдо | рд╡рд┐рд╡рд░рдг |
---|
ObjId | Pg_class рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдЕрдиреБрдХреНрд░рдо рдХрд╛ OID |
objsubid | рдЗрд╕ рдлрд╝реАрд▓реНрдб рдореЗрдВ рд╢реВрдиреНрдп рд╣реИ |
refobjid | рдЬрд┐рди рдХреНрд╖реЗрддреНрд░реЛрдВ рдореЗрдВ рдЕрдиреБрдХреНрд░рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд╡рд╣рд╛рдВ рддрд╛рд▓рд┐рдХрд╛ рдХрд╛ рдУрдЖрдИрдбреА |
refobjsubid | рддрд╛рд▓рд┐рдХрд╛ рд╡рд┐рд╢реЗрд╖рддрд╛ рд╕рдВрдЦреНрдпрд╛ рдЬрд┐рд╕рдХрд╛ рдорд╛рди рдПрдХ рдЕрдиреБрдХреНрд░рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЖрдмрд╛рджреА рд╣реИ |
рдЗрд╕рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд, рдлрд╝рдВрдХреНрд╢рди рдЕрдиреБрдХреНрд░рдо рдФрд░ рд╕реНрд░реЛрдд рддрд╛рд▓рд┐рдХрд╛ рджреЛрдиреЛрдВ рдХреЗ рдЖрд░реЗрдЦ рдФрд░ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреЛ рдирд┐рдХрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдХреИрдЯрд▓реЙрдЧ рдбреЗрдЯрд╛ pg_namespace рдФрд░ pg_description рддрдХ рдкрд╣реБрдВрдЪрддрд╛ рд╣реИред
рдХрд┐рд╕реА рддрд╛рд▓рд┐рдХрд╛ рдХрд╛ рдЧреБрдг рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд┐рд╕рдХрд╛ рдорд╛рди рдХрд┐рд╕реА рдЕрдиреБрдХреНрд░рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рднрд░рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдлрд╝рдВрдХреНрд╢рди рд╕реНрдерд┐рддрд┐ рдХреЗ рддрд╣рдд pg_attribute рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рддрдХ рдкрд╣реБрдБрдЪрддрд╛ рд╣реИ: attrelid = refobjid рдФрд░ attnum = refobjsubid ред (рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, pg_depend рдХреИрдЯрд▓реЙрдЧ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЗ рдирд╛рдо рдХреЛ рдмрд░рд╛рдмрд░ рдЪрд┐рд╣реНрди рдХреЗ рджрд╛рдИрдВ рдУрд░ рдЗрдВрдЧрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ)ред
рддрд╛рд▓рд┐рдХрд╛ рдЕрдиреБрдХреНрд░рдореЛрдВ рдХреА рд╡рд┐рд╢реЗрд╖ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЛ рдПрдХ рдкрд╛рд╢ рдореЗрдВ adtf_Sequence_Features рдХрд╣рдХрд░ рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ ред рдЪрдХреНрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рддрд╛рд▓рд┐рдХрд╛ рдХреЗ рдХреНрд╖реЗрддреНрд░реЛрдВ рдореЗрдВ рднрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реЗ рдЕрдзрд┐рдХ рдЕрдиреБрдХреНрд░рдо рд╕реМрдВрдкрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рддрд╛рд▓рд┐рдХрд╛ 14. рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкрд░рд┐рдгрд╛рдо adtf_Table_Sequences ('рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ', 'kr_road_network_vertices_pgr')редрдирд╛рдо | рдЯрд┐рдкреНрдкрдгреА | рд╢реБрд░реБрдЖрдд | рд╡реЗрддрди рд╡реГрджреНрдзрд┐ | рдЕрдВрдд | рдореИрджрд╛рди |
---|
kr_road_network _vertices_pgr_id _seq | рдЖрдИрдбреА рдлрд╝реАрд▓реНрдб рдорд╛рди рдЙрддреНрдкрдиреНрди рдХрд░рдирд╛ рдЕрдиреБрдХреНрд░рдо | 1 | 1 | 9223372036854775807 | рдЖрдИрдбреА |
рд╕рдВрд╕реНрдХрд░рдг рдХрд░реНрд╕рд░ рдХреЗ рдмрд┐рдирд╛
PostgreSQL рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рдЬрд┐рд╕рдХрд╛ рд╕рдВрд╕реНрдХрд░рдг 10 рд╕реЗ рдХрдо рд╣реИ, рдХрд░реНрд╕рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдмрд┐рдирд╛, Adtf_Table_Sequences рдлрд╝рдВрдХреНрд╢рди рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдЕрд╕рдВрднрд╡ рд╣реИред
рд▓реЗрдХрд┐рди рд╕рдВрд╕реНрдХрд░рдг 10 рдХреЗ рднрд╛рдЧреНрдпрд╢рд╛рд▓реА рдорд╛рд▓рд┐рдХ рдПрдХ рдХрд░реНрд╕рд░ рдХреЗ рдмрд┐рдирд╛ рднреА рдЕрдЪреНрдЫрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рдЙрдирдХреЗ рдкрд╛рд╕ рдЕрдкрдиреЗ рдирд┐рдкрдЯрд╛рди рдореЗрдВ pg_fterence рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╣реИред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЕрдиреБрдХреНрд░рдо рдХреА рд╕рднреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЛ рдПрдХрд▓ рдЪрдпрди рдХрдерди рдХреЗ рд╕рд╛рде рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рджрд┐рдП рдЧрдП рдлрд╝рдВрдХреНрд╢рди рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдореЗрдВ, рд╡рд┐рдВрдбреЛ рдлрд╝рдВрдХреНрд╢рди RANK () OVER (PARTITION BY pseq.relname) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рд╕реНрд░реЛрдд рддрд╛рд▓рд┐рдХрд╛ рдХреЛ рднрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рдЕрдиреБрдХреНрд░рдо рдХреА рдХреНрд░рдо рд╕рдВрдЦреНрдпрд╛ рдХреА рдЧрдгрдирд╛ рдХреА рдЬрд╛рддреА рд╣реИред

рдЖрдХреГрддрд┐ рдореЗрдВ рдСрдкрд░реЗрдЯрд░ рдХрд╛ рд╕реНрд░реЛрдд рдХреЛрдб SELECT RANK() OVER (PARTITION BY pseq.relname) AS SequenceNo, pseq.relname AS SequenceName,snsp.nspname AS SequenceSchemaName, COALESCE(dsc.description,', ' ||da.attname) AS SequenceDescription, seq.seqstart AS SequenceStartValue,seq.seqincrement AS SequenceIncrementBy, seq.seqmax AS SequenceMaxValue, d.depType AS DependcyType,da.attname AS AttributeName FROM pg_depend d INNER JOIN pg_class pseq ON d.objid = pseq.oid INNER JOIN pg_sequence seq ON seq.seqrelid= pseq.oid INNER JOIN pg_namespace snsp ON pseq.relnamespace=snsp.oid LEFT OUTER JOIN pg_Description dsc ON pseq.oid=dsc.objoid AND dsc.objsubid=0 INNER JOIN pg_class tbl ON d.refobjid = tbl.oid INNER JOIN pg_namespace nsp ON tbl.relnamespace=nsp.oid INNER JOIN pg_attribute da ON da.attrelid= d.refobjid AND da.attnum= d.refobjsubid WHERE LOWER(nsp.nspname)=LOWER(a_SchemaName) AND LOWER(tbl.relname)=LOWER(a_TableOID) AND tbl.relkind = 'r' AND pseq.relkind = 'S' ORDER BY pseq.relname;
рд░рд┐рдорд╛рд░реНрдХ 7
ред
рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдпрд╣ рд╕рдВрд╕реНрдХрд░рдг рдЕрдиреБрдХреНрд░рдо ( last_value ) рджреНрд╡рд╛рд░рд╛ рдЙрддреНрдкрдиреНрди рдЕрдВрддрд┐рдо рдорд╛рди рд╡рд╛рдкрд╕ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред
рдЯрд┐рдкреНрдкрдгреА рдХрд╛ рдЕрдВрддред
Admtf_Table_InheritanceChildrens рдлрд╝рдВрдХреНрд╢рди - рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рдорд┐рд▓реА рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреА рд╕реВрдЪреА
Admtf_Table_InheritanceChildrens рдлрд╝рдВрдХреНрд╢рди рдбреЗрдЯрд╛рдмреЗрд╕ рддрд╛рд▓рд┐рдХрд╛ рдХреА рд╡рд┐рд░рд╛рд╕рдд рддрд╛рд▓рд┐рдХрд╛рдУрдВ ( INHERITS ) рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреА рдПрдХ рд╕реВрдЪреА рджреЗрддрд╛ рд╣реИред рд╕реЛрд░реНрд╕ рдХреЛрдб рдХреЛ рдпрд╣рд╛рдВ рджреЗрдЦрд╛ рдФрд░ рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ ред
рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд░реВрдк рдореЗрдВ, рдлрд╝рдВрдХреНрд╢рди рд╕реНрд░реЛрдд рддрд╛рд▓рд┐рдХрд╛ ( a_TableName ) рдФрд░ рдЙрд╕ рдпреЛрдЬрдирд╛ рдХрд╛ рдирд╛рдо рд▓реЗрддрд╛ рд╣реИ рдЬрд┐рд╕рдХреЗ рднреАрддрд░ рддрд╛рд▓рд┐рдХрд╛ рдмрдирд╛рдИ рдЧрдИ рд╣реИ ( a_SchemaName )ред
рдПрдХрд▓ рд╡рд┐рд░рд╛рд╕рдд рддрд╛рд▓рд┐рдХрд╛ рдХрд╛ рд╡рд░реНрдгрди pg_class рдореЗрдВ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рдореЗрдВ рд╣реИред рд▓реЗрдХрд┐рди рд╕реНрд░реЛрдд рддрд╛рд▓рд┐рдХрд╛ рдХреЗ рдирд╛рдо рд╕реЗ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рдорд┐рд▓реА рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреА рдЦреЛрдЬ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ pg_dependence рд╕рд┐рд╕реНрдЯрдо рдХреИрдЯрд▓реЙрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ ред
рддрд╛рд▓рд┐рдХрд╛ 15. рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ pg_depend рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдБредрдирд╛рдо | рд╡рд┐рд╡рд░рдг |
---|
ObjId | Pg_class рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рдорд┐рд▓реА рддрд╛рд▓рд┐рдХрд╛ рдХрд╛ OID |
refobjid | рд╕реНрд░реЛрдд рддрд╛рд▓рд┐рдХрд╛ рдХрд╛ рдУрдЖрдИрдбреА |

рдЖрдХреГрддрд┐ рдореЗрдВ рдСрдкрд░реЗрдЯрд░ рдХрд╛ рд╕реНрд░реЛрдд рдХреЛрдб SELECT rtbl.relname,rnspc.nspname,rdsc.description,rtbl.relnatts::INTEGER, rtbl.relchecks::INTEGER, rtbl.relhaspkey,rtbl.relhasindex,rtbl.relhassubclass, rtbl.reltuples::INTEGER FROM pg_class tbl INNER JOIN pg_namespace nspc ON tbl.relnamespace = nspc.oid LEFT OUTER JOIN pg_Description dsc ON tbl.oid=dsc.objoid AND dsc.objsubid=0 INNER JOIN pg_depend dp ON tbl.oid=dp.refobjid INNER JOIN pg_class rtbl ON rtbl.OID=dp.objid INNER JOIN pg_namespace rnspc ON rtbl.relnamespace = rnspc.oid LEFT OUTER JOIN pg_Description rdsc ON rtbl.oid=rdsc.objoid AND rdsc.objsubid=0 WHERE LOWER(nspc.nspname)=LOWER(a_SchemaName) AND LOWER(tbl.relname)=LOWER(a_TableOID) AND tbl.relkind = 'r' AND rtbl.relkind = 'r' ORDER BY rtbl.relname;
рд╕рд╛рде рд╣реА, рдлрд╝рдВрдХреНрд╢рди рдбрд╛рдпрд░реЗрдХреНрдЯреНрд░реА рдбреЗрдЯрд╛ рдФрд░ рд╡рд┐рд░рд╛рд╕рдд рддрд╛рд▓рд┐рдХрд╛ рдФрд░ рд╕реНрд░реЛрдд рддрд╛рд▓рд┐рдХрд╛ рджреЛрдиреЛрдВ рдХреЗ рд▓рд┐рдП рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдВ рдирд┐рдХрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдбреЗрдЯрд╛ pg_namespace рдФрд░ pg_description рддрдХ рдкрд╣реБрдБрдЪрддрд╛ рд╣реИред
рддрд╛рд▓рд┐рдХрд╛ 16. рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкрд░рд┐рдгрд╛рдо adtf_Table_InheritanceChildrens ('рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ', 'np_house')редрдирд╛рдо | рдЯрд┐рдкреНрдкрдгреА | рдЧреБрдг | ? рдкреНрд░рд╛рдердорд┐рдХ рдХреБрдВрдЬреА | ? рд╕реВрдЪрдХрд╛рдВрдХ | ? рд╡рдВрд╢ | рд░рд┐рдХреЙрд░реНрдб рдХреА рд╕рдВрдЦреНрдпрд╛ |
---|
np_house 04201 000000 | рдмрд╕реНрддрд┐рдпреЛрдВ рдореЗрдВ рдШрд░ (рдЕрдЪрд┐рдВрд╕реНрдХреА рдЬрд┐рд▓рд╛) | 15 | рдЪ | рдЪ | рдЪ | 5651 |
np_house 4208 000 000 | рдмрд╕реНрддрд┐рдпреЛрдВ рдореЗрдВ рдШрд░ (рдмреЛрдЧреЛрдЯреЛрд▓рд╕реНрдХреА рдЬрд┐рд▓рд╛) | 15 | рдЪ | рдЪ | рдЪ | 4314 |
рдЙрддреНрдкрдиреНрди рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рд░рд┐рдХреЙрд░реНрдб рдХреА рд╕рдВрдЦреНрдпрд╛ pg_class рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреА reltuple рд╡рд┐рд╢реЗрд╖рддрд╛ рд╕реЗ рдЪреБрдиреА рдЧрдИ рд╣реИред рдФрд░ рдпрджреНрдпрдкрд┐ рдпрд╣ рдорд╛рди рдЕрдХреНрд╕рд░ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рдпреЛрдВ рдХреА рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдВрдЦреНрдпрд╛ рд╕реЗ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИ, рдпрд╣ рдЕрднреА рднреА рдПрдХ рдЕрдиреБрдорд╛рдирд┐рдд рдореВрд▓реНрдп рд╣реИред рдЗрд╕рд▓рд┐рдП, рдЖрдк рдкрд░рд┐рдгрд╛рдо рдХреЗ рд░реВрдк рдореЗрдВ рд╕рдЯреАрдХ рдореВрд▓реНрдп рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдЪрд╛рд╣ рд╕рдХрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЬреИрд╕рд╛ рдХрд┐ рдЖрдВрдХрдбрд╝реЗ рдореЗрдВ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред
EXECUTE 'SELECT COUNT(*) FROM '||LOWER(a_SchemaName)||'.'||LOWER(a_TableName) INTO v_TableNumberOfRowCalc;
рд▓реЗрдХрд┐рди, рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдкрд╛рда рдореЗрдВ рдЗрд╕ рдХрдерди рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдлрд╝рдВрдХреНрд╢рди adtf_Table_InheritanceChildrens рдХреЛ рдПрдХ рдХрд░реНрд╕рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред
рджреВрд╕рд░реЗ, рдореИрдВ рдпрд╣ рдЪрд╛рд╣реВрдВрдЧрд╛ рдХрд┐ рддрд╛рд▓рд┐рдХрд╛ рдХреА рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рдпреЛрдВ рдХреА рдЕрдиреБрдорд╛рдирд┐рдд рдФрд░ рд╕рдЯреАрдХ рд╕рдВрдЦреНрдпрд╛ рджреЛрдиреЛрдВ рдХреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПред
рдЗрд╕рд▓рд┐рдП, рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдПрдХ рдФрд░ рд╡реИрдХрд▓реНрдкрд┐рдХ рдкреИрд░рд╛рдореАрдЯрд░ рд╣реИ - рддрд╛рд▓рд┐рдХрд╛ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рдпреЛрдВ ( a_Mode ) рдХреА рд╕рдВрдЦреНрдпрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХрд╛ рддрд░реАрдХрд╛ , рдЬреЛ рдорд╛рди "рдЕрдиреБрдорд╛рди" ( рдЕрдиреБрдорд╛рди ) рдпрд╛ "рдмрд┐рд▓реНрдХреБрд▓" ( рдмрд┐рд▓реНрдХреБрд▓ ) рд▓реЗрддрд╛ рд╣реИред
рдЗрд╕рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд, admfn_Table_RowCount рдлрд╝рдВрдХреНрд╢рди рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ , рдЬреЛ рддрд╛рд▓рд┐рдХрд╛ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рдпреЛрдВ рдХреА рд╕рдЯреАрдХ рд╕рдВрдЦреНрдпрд╛ рд▓реМрдЯрд╛рддрд╛ рд╣реИ, рдФрд░ Reltuple рд╡рд┐рд╢реЗрд╖рддрд╛ рдХреЛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдирд┐рд░реНрдорд╛рдг рдХреЗ рд╕рд╛рде SELECT рд░рд┐рдЯрд░реНрди рд╕реВрдЪреА рдореЗрдВ рдмрджрд▓ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдЖрдХреГрддрд┐ рдореЗрдВ рдСрдкрд░реЗрдЯрд░ рдХрд╛ рд╕реНрд░реЛрдд рдХреЛрдб CASE WHEN a_Mode = 'exactly' THEN admfn_Table_RowCount(rnspc.nspname,rtbl.relname) ELSE reltuples END
рдирддреАрдЬрддрди, рдлрд╝рдВрдХреНрд╢рди рд╕рдВрдХреЗрддрдХ "рдЯреЗрдмрд▓ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рдпреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛" рдХрд╛ рдЕрдиреБрдорд╛рдирд┐рдд рдорд╛рди рд▓реМрдЯрд╛рддрд╛ рд╣реИ рдпрджрд┐ рдкреИрд░рд╛рдореАрдЯрд░ a_Mode рд╕рдЯреАрдХ рдорд╛рди рд╡рд╛рдкрд╕ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред
рдПрдХ рдлрд╝рдВрдХреНрд╢рди рдХреА рд╕рдВрд░рдЪрдирд╛ рдЬреЛ рддрд╛рд▓рд┐рдХрд╛ рд╡рд┐рд╢реЗрд╖рддрд╛ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреА рдПрдХ рд╕реВрдЪреА рд▓реМрдЯрд╛рддреА рд╣реИ
рдЕрдВрдЬреАрд░ред 3. рдХрд╛рд░реНрдп рдЬреЛ Adtf_Attribute_Features рдХреЙрд▓реНрд╕ рдХреЛ рдорд╛рдирддреЗ рд╣реИрдВ
рдЖрдХреГрддрд┐ рдореЗрдВ рддрд╛рд▓рд┐рдХрд╛ рдХрд╛ рдкрд╛рда рд╕рдВрд╕реНрдХрд░рдгрддрд╛рд▓рд┐рдХрд╛ 17. рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рдЙрджреНрджреЗрд╢реНрдпредрд╕рдВрдЦреНрдпрд╛ | рдирд╛рдо | рдирд┐рдпреБрдХреНрддрд┐ |
---|
1 | admtf_Attribute_PKFeatures | рдлрд╝рдВрдХреНрд╢рди рдкреНрд░рд╛рдердорд┐рдХ рдХреБрдВрдЬреА (PRIMARY KEY) рдореЗрдВ рд╡рд┐рд╢реЗрд╖рддрд╛ рдЙрдкрд╕реНрдерд┐рддрд┐ рд╡рд┐рд╢реЗрд╖рддрд╛ рджреЗрддрд╛ рд╣реИ, рд╕рд╛рде рд╣реА рдЗрд╕ рдХреБрдВрдЬреА рдХреЗ рднрд╛рдЧ рдХреЗ рд░реВрдк рдореЗрдВ рдЗрд╕рдХреА рдХреБрдЫ рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ рднреА рд╣реИрдВред |
2 | admtf_Attribute_FKFeatures | рдлрд╝рдВрдХреНрд╢рди рд╡рд┐рджреЗрд╢реА рдХреБрдВрдЬреА (FOREIGN KEY) рдореЗрдВ рд╡рд┐рд╢реЗрд╖рддрд╛ рдЙрдкрд╕реНрдерд┐рддрд┐ рд╡рд┐рд╢реЗрд╖рддрд╛ рджреЗрддрд╛ рд╣реИ, рд╕рд╛рде рд╣реА рдЗрд╕ рдХреБрдВрдЬреА рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рдХреЗ рд░реВрдк рдореЗрдВ рдЗрд╕рдХреА рдХреБрдЫ рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ рднреА рд╣реИрдВред |
3 | admtf_Attribute_Features | рдлрд╝рдВрдХреНрд╢рди рддрд╛рд▓рд┐рдХрд╛ рд╡рд┐рд╢реЗрд╖рддрд╛ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреА рдПрдХ рд╕реВрдЪреА рджреЗрддрд╛ рд╣реИред |
рдХрд╛рд░реНрдп рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░реЗрдВ - рд╡рд┐рд╢реЗрд╖рддрд╛_PKFeatures - - рдХреНрдпрд╛ рд╡рд┐рд╢реЗрд╖рддрд╛ рдкреНрд░рд╛рдердорд┐рдХ рдХреБрдВрдЬреА рдореЗрдВ рдореМрдЬреВрдж рд╣реИ
Adtf_Attribute_PKFeatures рдлрд╝рдВрдХреНрд╢рди рддрд╛рд▓рд┐рдХрд╛ рдХреА рдкреНрд░рд╛рдердорд┐рдХ рдХреБрдВрдЬреА (PRIMARY KEY) рдореЗрдВ рддрд╛рд▓рд┐рдХрд╛ рд╡рд┐рд╢реЗрд╖рддрд╛ рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдХрд╛ рд╕рдВрдХреЗрдд рджреЗрддрд╛ рд╣реИ, рдФрд░ рдпрджрд┐ рдпрд╣ рдореМрдЬреВрдж рд╣реИ, рддреЛ рдЗрд╕ рдХреБрдВрдЬреА рдореЗрдВ рдЗрд╕рдХрд╛ рд╕реАрд░рд┐рдпрд▓ рдирдВрдмрд░ рдХреНрдпрд╛ рд╣реИ, рдХрдм рд╕реЗ рдкреНрд░рд╛рдердорд┐рдХ рдХреБрдВрдЬреА рд╕рдордЧреНрд░ рд╣реЛ рд╕рдХрддреА рд╣реИред
рд╕реЛрд░реНрд╕ рдХреЛрдб рдХреЛ рдпрд╣рд╛рдВ рджреЗрдЦрд╛ рдФрд░ рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ ред
рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ, рдлрд╝рдВрдХреНрд╢рди рд╕реНрд░реЛрдд рддрд╛рд▓рд┐рдХрд╛ ( a_TableOID ) рдХрд╛ OID рдФрд░ рдЙрд╕рдореЗрдВ рд╡рд╛рдВрдЫрд┐рдд рд╡рд┐рд╢реЗрд╖рддрд╛ рдХрд╛ рд╕реАрд░рд┐рдпрд▓ рдирдВрдмрд░ ( a_AttributeNo ) рд▓реЗрддрд╛ рд╣реИ ред
рдлрд╝рдВрдХреНрд╢рди рдкреНрд░рд╛рдердорд┐рдХ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдореБрдЦреНрдп рддрд╛рд▓рд┐рдХрд╛ рд╕рд╣рд┐рдд рд╕реНрд░реЛрдд рддрд╛рд▓рд┐рдХрд╛ рдХреА (CONSTRAINT) рдмрд╛рдзрд╛рдУрдВ рд╡рд╛рд▓реА pg_constraint рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рд╕реЗ рдЖрд╡рд╢реНрдпрдХ рдбреЗрдЯрд╛ рдирд┐рдХрд╛рд▓рддрд╛ рд╣реИред рддрд╛рд▓рд┐рдХрд╛ OID рдХреЛ рдХреЙрдиреНрдлреНрд░рд┐рдб рдлрд╝реАрд▓реНрдб рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдкреНрд░рд╛рдердорд┐рдХ рдХреБрдВрдЬреА рд╡рд┐рд╡рд░рдг рдХреЛ рдПрдХ рд░рд┐рдХреЙрд░реНрдб рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдХреЙрдиреЛрдЯрд╛рдЗрдк рдлрд╝реАрд▓реНрдб рдореЗрдВ рдорд╛рди '' p '' рд╣реЛрддрд╛ рд╣реИред
ред
SELECT INTO v_PKAttributeList,rs_isAttributePK conkey,ARRAY[a_AttributeNo]<@conkey FROM pg_constraint c WHERE c.contype='p' AND c.conrelid=a_TableOID;
рдЗрд╕ рддрд░рд╣ рд╕реЗ рдкрд╛рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рд╢рдВрдХреБ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рд╡рд┐рд╢реЗрд╖рддрд╛ рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреА рдПрдХ рд╕рд░рдгреА рд╣реЛрддреА рд╣реИ рдЬреЛ рдкреНрд░рд╛рдердорд┐рдХ рдХреБрдВрдЬреА рдмрдирд╛рддреА рд╣реИред рдЗрд╕рд▓рд┐рдП, рдкреНрд░рд╛рдердорд┐рдХ рдХреБрдВрдЬреА рдореЗрдВ рд╕реНрд░реЛрдд рд╡рд┐рд╢реЗрд╖рддрд╛ рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдпрд╣ рддрд╛рд░реНрдХрд┐рдХ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ ARRAY [a_AttributeNo] <@ conkey рдХреА рдЧрдгрдирд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИред
рдпрджрд┐ рд╡рд┐рд╢реЗрд╖рддрд╛ рдкреНрд░рд╛рдердорд┐рдХ рдХреБрдВрдЬреА рдореЗрдВ рдореМрдЬреВрдж рд╣реИ, рддреЛ рдЗрд╕рдХреА рдЕрдиреБрдХреНрд░рдо рд╕рдВрдЦреНрдпрд╛ рд▓реВрдк рдореЗрдВ рдЧрдгрдирд╛ рдХреА рдЬрд╛рддреА рд╣реИред
рдлрдВрдХреНрд╢рди admtf_Attribute_FKFeatures - рдХреНрдпрд╛ рд╡рд┐рд╢реЗрд╖рддрд╛ рд╡рд┐рджреЗрд╢реА рдХреБрдВрдЬреА рдореЗрдВ рдореМрдЬреВрдж рд╣реИ
Adtf_Attribute_FKFeatures рдлрд╝рдВрдХреНрд╢рди рддрд╛рд▓рд┐рдХрд╛ рдХреА рдПрдХ рдпрд╛ рдЕрдзрд┐рдХ рд╡рд┐рджреЗрд╢реА рдХреБрдВрдЬрд┐рдпреЛрдВ (FOREIGN KEY) рдореЗрдВ рддрд╛рд▓рд┐рдХрд╛ рд╡рд┐рд╢реЗрд╖рддрд╛ рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдХрд╛ рд╕рдВрдХреЗрдд рджреЗрддрд╛ рд╣реИ, рдФрд░ рдпрджрд┐ рдпрд╣ рдореМрдЬреВрдж рд╣реИ, рддреЛ рдЗрди рдХреБрдВрдЬрд┐рдпреЛрдВ рдореЗрдВ рдЗрд╕рдХреА рдЕрдиреБрдХреНрд░рдо рд╕рдВрдЦреНрдпрд╛ рдХреНрдпрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд╡рд┐рджреЗрд╢реА рдХреБрдВрдЬреА рд╕рдордЧреНрд░ рд╣реЛ рд╕рдХрддреА рд╣реИред
рд╕реЛрд░реНрд╕ рдХреЛрдб рдХреЛ рдпрд╣рд╛рдВ рджреЗрдЦрд╛ рдФрд░ рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ ред
рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ, рдлрд╝рдВрдХреНрд╢рди рд╕реНрд░реЛрдд рддрд╛рд▓рд┐рдХрд╛ ( a_TableOID ) рдХрд╛ OID рдФрд░ рдЙрд╕рдореЗрдВ рд╡рд╛рдВрдЫрд┐рдд рд╡рд┐рд╢реЗрд╖рддрд╛ рдХрд╛ рд╕реАрд░рд┐рдпрд▓ рдирдВрдмрд░ ( a_AttributeNo ) рд▓реЗрддрд╛ рд╣реИ ред
рдпрд╣ рдлрд╝рдВрдХреНрд╢рди рд╕реНрд░реЛрдд рддрд╛рд▓рд┐рдХрд╛ рдХреЗ CONSTRAINT рдпреБрдХреНрдд pg_constraint рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рд╕реЗ рдЖрд╡рд╢реНрдпрдХ рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╡рд┐рджреЗрд╢реА рдкреНрд░рдореБрдЦ рдмрд╛рдзрд╛рдУрдВ рддрдХ рд╕реАрдорд┐рдд рдирд╣реАрдВ рд╣реИред рд╡рд╛рдВрдЫрд┐рдд рддрд╛рд▓рд┐рдХрд╛ рдХреЗ рдУрдЖрдИрдбреА рдХреЛ рдХреЛрд░рд┐рдбрд┐рдб рдлрд╝реАрд▓реНрдб рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдкреНрд░рд╛рдердорд┐рдХ рдХреБрдВрдЬреА рдХрд╛ рд╡рд┐рд╡рд░рдг рдПрдХ рд░рд┐рдХреЙрд░реНрдб рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рд╕рдорд░реВрдк рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдорд╛рди '' f '' рд╣реЛрддрд╛ рд╣реИред
ред
SELECT * FROM pg_constraint c WHERE c.contype='f ' AND c.conrelid=a_TableOID AND ARRAY[a_AttributeNo]<@conkey ORDER BY c.oid;
рдЗрд╕ рддрд░рд╣ рд╕реЗ рдкрд╛рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рд╢рдВрдХреБ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдПрдХ рд╡рд┐рд╢реЗрд╖рддрд╛ рд╕рдВрдЦреНрдпрд╛ рд╣реЛрддреА рд╣реИ рдЬреЛ рд╡рд┐рджреЗрд╢реА рдХреБрдВрдЬреА рдмрдирд╛рддреА рд╣реИред рдЗрд╕рд▓рд┐рдП, рд╡рд┐рджреЗрд╢реА рдХреБрдВрдЬреА рдореЗрдВ рд╕реНрд░реЛрдд рд╡рд┐рд╢реЗрд╖рддрд╛ рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдпрд╣ рддрд╛рд░реНрдХрд┐рдХ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ ARRAY [a_AttributeNo] <@ conkey рдХреА рдЧрдгрдирд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИред
рдпрджрд┐ рд╡рд┐рд╢реЗрд╖рддрд╛ рд╡рд┐рджреЗрд╢реА рдХреБрдВрдЬреА рдореЗрдВ рдореМрдЬреВрдж рд╣реИ, рддреЛ рд▓реВрдк рдореЗрдВ рдЗрд╕рдХреЗ рдЕрдиреБрдХреНрд░рдо рд╕рдВрдЦреНрдпрд╛ рдХреА рдПрдХ рд╕рд░рдгреА рдХрд╛ рдЧрдарди рд╡рд┐рджреЗрд╢реА рдХреБрдВрдЬреА рдореЗрдВ рд╣реЛрддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд, рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреЗ рдирд╛рдо рдФрд░ рдЙрдирдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рд╕реЗ рджреЛ рдФрд░ рд╕рд░рдгрд┐рдпреЛрдВ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд┐рдиреНрд╣реЗрдВ рд╕реНрд░реЛрдд рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рджреНрд╡рд╛рд░рд╛ рд╕рдВрджрд░реНрднрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рд╡рд┐рджреЗрд╢реА рдХреБрдВрдЬреА рд╣реЛрддреА рд╣реИред
рддрд╛рд▓рд┐рдХрд╛ рдирд╛рдореЛрдВ рдХреЛ рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ (OID) рджреНрд╡рд╛рд░рд╛ pg_class рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рд╕реЗ рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рд╡рд┐рджреЗрд╢реА рдХреБрдВрдЬреА рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рдХреЗ рдЧреЛрдкрдиреАрдп рдХреНрд╖реЗрддреНрд░ рд╕реЗ рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдмрд╛рд╣рд░реА рддрд╛рд▓рд┐рдХрд╛ рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛ рдХрд╛ рдирд╛рдо рдкрд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдлрд╝реАрд▓реНрдб рд╕реЗ рдХреНрд░рдо рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреА рдПрдХ рд╕рд░рдгреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ
confkey
(рдпрд╣ рдирд╛рдо рдореЗрдВ "
f " рдЕрдХреНрд╖рд░ рджреНрд╡рд╛рд░рд╛ рдЙрдкрд░реЛрдХреНрдд рд╕рд░рдгреА рд╕реЗ рднрд┐рдиреНрди рд╣реИ)ред рдмрд╛рд╣рд░реА рд╕рд╛рд░рдгреА рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛ рдХреА рдХреНрд░рдо рд╕рдВрдЦреНрдпрд╛ рдЬрд┐рд╕реЗ рдмрд╛рд╣рд░реА рд╡рд┐рд╢реЗрд╖рддрд╛ рдореЗрд▓ рдЦрд╛рддреА рд╣реИ рдЗрд╕ рд╕рд░рдгреА рд╕реЗ рдирд┐рдХрд╛рд▓рд╛ рдЬрд╛рддрд╛ рд╣реИред рдмрд╛рд╣рд░реА рддрд╛рд▓рд┐рдХрд╛ рдФрд░ рдЙрд╕рдХреЗ OID рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛ рдХреЗ рдЗрд╕ рд╕реАрд░рд┐рдпрд▓ рдирдВрдмрд░ рдХреЗ рджреНрд╡рд╛рд░рд╛, pg_attribute рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рд╕реНрдерд┐рдд рд╡рд┐рд╢реЗрд╖рддрд╛ рдХреЗ рд╡рд┐рд╡рд░рдг рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рд╣реИ рдФрд░ рдЗрд╕рдХрд╛ рдирд╛рдо рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
Admtf_Attribute_Features рдлрд╝рдВрдХреНрд╢рди - рддрд╛рд▓рд┐рдХрд╛ рд╡рд┐рд╢реЗрд╖рддрд╛ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреА рд╕реВрдЪреА
Adtf_Attribute_Features рдлрд╝рдВрдХреНрд╢рди рдирд┐рдореНрди рддрд╛рд▓рд┐рдХрд╛ рд╡рд┐рд╢реЗрд╖рддрд╛ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреА рдПрдХ рд╕реВрдЪреА рджреЗрддрд╛ рд╣реИред рд╕реЛрд░реНрд╕ рдХреЛрдб рдХреЛ рдпрд╣рд╛рдВ рджреЗрдЦрд╛ рдФрд░ рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ ред

рдЖрдХреГрддрд┐ рдореЗрдВ рддрд╛рд▓рд┐рдХрд╛ рдХрд╛ рдкрд╛рда рд╕рдВрд╕реНрдХрд░рдгрд╕рдВрдЦреНрдпрд╛ | рдирд╛рдо | рдЯрд╛рдЗрдк | рдирд┐рдпреБрдХреНрддрд┐ |
---|
1 | AttributeName | рдирд╛рдо | рд╕реНрд░реЛрдд рд╡рд┐рд╢реЗрд╖рддрд╛ рдХрд╛ рдирд╛рдоред |
2 | UserTypeName | рд╡рд░реНрдЪ (256) | рдХрд╕реНрдЯрдо рд╕реНрд░реЛрдд рд╡рд┐рд╢реЗрд╖рддрд╛ рдкреНрд░рдХрд╛рд░ |
3 | TypeName | рд╡рд░реНрдЪ (256) | рдЖрдзрд╛рд░ рдкреНрд░рдХрд╛рд░ рдХрд╛ рд╕реНрд░реЛрдд рдЧреБрдг |
4 | isNotNULL | рдмреВрд▓рд┐рдпрди | ? рдЕрд╢рдХреНрддрддрд╛ |
5 | isAttributePK | рдмреВрд▓рд┐рдпрди | ? рдкреАрдХреЗ рдореЗрдВ рднрд╛рдЧреАрджрд╛рд░реА |
6 | ColumnPKNo | SMALLINT | рдкреАрдХреЗ рдореЗрдВ рд╕реАрд░рд┐рдпрд▓ рдирдВрдмрд░ рджреЗрдВ |
7 | рд╡рд┐рд╡рд░рдг | рдкрд╛рда | рд╕реНрд░реЛрдд рд╡рд┐рд╢реЗрд╖рддрд╛ рдкрд░ рдЯрд┐рдкреНрдкрдгреА рдХрд░реЗрдВ |
8 | isAttributeFK | рдмреВрд▓рд┐рдпрди | ? рдПрдлрдХреЗ рдореЗрдВ рднрд╛рдЧреАрджрд╛рд░реА |
9 | FKeyName | рдирд╛рдо [] | рдмрд╛рдзрд╛ рддрд╛рд▓рд┐рдХрд╛ рдирд╛рдореЛрдВ рдХреА рдПрдХ рд╕рд░рдгреА рдЬрд┐рд╕рдореЗрдВ рд╡рд┐рджреЗрд╢реА рдХреБрдВрдЬреА рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ |
10 | ColumnFKNo | SMALLINT [] | рддрд╛рд▓рд┐рдХрд╛ рдХреА рд╡рд┐рджреЗрд╢реА рдХреБрдВрдЬрд┐рдпреЛрдВ рдореЗрдВ рд╡рд┐рд╢реЗрд╖рддрд╛ рдЕрдиреБрдХреНрд░рдо рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреА рд╕рд░рдгреА |
11 | FKTableName | рдирд╛рдо [] | рд╡рд┐рджреЗрд╢реА рдХреБрдВрдЬрд┐рдпреЛрдВ рджреНрд╡рд╛рд░рд╛ рд╕рдВрджрд░реНрднрд┐рдд рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреА рд╕рд░рдгреА |
12 | FKTableColumnName | рдирд╛рдо [] | рд╕реНрд░реЛрдд рд╡рд┐рд╢реЗрд╖рддрд╛ рдХреЗ рдЕрдиреБрд░реВрдк рдмрд╛рд╣рд░реА рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдореЗрдВ рд╡рд┐рд╢реЗрд╖рддрд╛ рдирд╛рдореЛрдВ рдХреА рд╕рд░рдгреА |
рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ, рдлрд╝рдВрдХреНрд╢рди рд╕реНрд░реЛрдд рддрд╛рд▓рд┐рдХрд╛ ( a_TableOID ) рдХрд╛ OID рдФрд░ рдЙрд╕рдореЗрдВ рд╡рд╛рдВрдЫрд┐рдд рд╡рд┐рд╢реЗрд╖рддрд╛ рдХрд╛ рд╕реАрд░рд┐рдпрд▓ рдирдВрдмрд░ ( a_AttributeNo ) рд▓реЗрддрд╛ рд╣реИ ред
рд╡рд┐рд╢реЗрд╖рддрд╛ рдорд╛рди рдФрд░ isNotNULL рдлрд╝реАрд▓реНрдб рдХреЗ рдорд╛рди рдЗрдирдкреБрдЯ рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рдорд╛рди рдХреЗ рдЕрдиреБрд╕рд╛рд░ pg_attribute рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рд╕реЗ рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрдд рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред
SELECT attr.attname, attr.attnotnull FROM pg_attribute attr WHERE attr.attrelid =a_TableOID AND attr.attnum=a_AttributeNo; SELECT rs_isAttributePK,rs_ColumnPKNo FROM admtf_Attribute_PKFeatures (a_TableOID,a_AttributeNo); SELECT rs_isAttributeFK,rs_FKeyName,rs_ColumnFKNo, rs_FKTableName,rs_FKTableColumnName FROM admtf_Attribute_FKFeatures (a_TableOID,a_AttributeNo);
IsAttributePK рдФрд░ ColumnPKNo рдлрд╝реАрд▓реНрдб рдХреЗ рдорд╛рдиреЛрдВ рдХреЛ adtf_Attribute_PKFeatures рдлрд╝рдВрдХреНрд╢рди рджреНрд╡рд╛рд░рд╛ рд▓реМрдЯрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
IsAttributeFK , FKeyName , ColumnFKNo , FKTableName , FKTableColumnName рдлрд╝реАрд▓реНрдб рдХреЗ рдорд╛рдиреЛрдВ рдХреЛ adtf_Attribute_FKFeatures рдлрд╝рдВрдХреНрд╢рди рджреНрд╡рд╛рд░рд╛ рд╡рд╛рдкрд╕ рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
Adtf_Attribute_Features ((SELECT FID рдлреНрд░реЙрдо pg_class WHERE relname = 'street') рдХрд╛ рдЪрдпрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдХреЙрд▓ , 2 :: SMALLINT) рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкрд░рд┐рдгрд╛рдо рджреЗрдЧрд╛ред
рддрд╛рд▓рд┐рдХрд╛ 18. рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкрд░рд┐рдгрд╛рдо adtf_Attribute_FeaturesAttributeName | UserTypeName | TypeName | isNotNULL | isAttributePK | ColumnPKNo |
---|
localityid | localityid | рдкреВрд░реНрдгрд╛рдВрдХ | рдкреВрд░реНрдгрд╛рдВрдХ | рдкреВрд░реНрдгрд╛рдВрдХ | рдкреВрд░реНрдгрд╛рдВрдХ |
рд╡рд┐рд╡рд░рдг | isAttributeFK | FKeyName | ColumnFKNo | FKTableName | FKTableColumnName |
---|
рд╕рд╛рдореБрджрд╛рдпрд┐рдХ рдЖрдИрдбреА | рдЯреА | {} Fk_street_locality | {2} | {} рдЗрд▓рд╛рдХрд╛ | {} Localityid |
рдкрд░рд┐рд╢рд┐рд╖реНрдЯ 1. рд▓рд┐рдкрд┐рдпреЛрдВ
Adtf_Sequence_Features рдлрд╝рдВрдХреНрд╢рди рдмрдирд╛рдирд╛
рдлрд╝рдВрдХреНрд╢рди рд╕реНрд░реЛрдд рдХреЛрдб рдкрд░ рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ рдпрд╣рд╛рдВ рдкрд╛рдИ рдЬрд╛ рд╕рдХрддреА рд╣реИрдВредрдлрд╝рдВрдХреНрд╢рди рдХреЛрдб BEGIN TRANSACTION; DROP FUNCTION IF EXISTS admtf_Sequence_Features (a_SchemaName NAME,a_SequenceName NAME); CREATE OR REPLACE FUNCTION admtf_Sequence_Features (a_SchemaName NAME default 'public', a_SequenceName NAME default NULL ) RETURNS TABLE (rs_SequenceName NAME,rs_SequenceDescription TEXT,rs_NumberOfAttribute INTEGER,rs_SequenceLastValue BIGINT, rs_SequenceStartValue BIGINT,rs_SequenceIncrementBy BIGINT,rs_SequenceMaxValue BIGINT) AS $BODY$ DECLARE c_SequenceKind CONSTANT CHAR:='S'; v_SequenceOID OID; v_SequenceName NAME; v_SequenceDescription TEXT; v_SequenceStartValue BIGINT; v_SequenceIncrementBy BIGINT; v_SequenceMaxValue BIGINT; v_SequenceLastValue BIGINT; v_SequenceNumberOfRowCalc INTEGER;
Adtf_Table_Sequences рдлрд╝рдВрдХреНрд╢рди рдмрдирд╛рдирд╛
рдлрд╝рдВрдХреНрд╢рди рд╕реНрд░реЛрдд рдХреЛрдб рдкрд░ рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ рдпрд╣рд╛рдВ рдкрд╛рдИ рдЬрд╛ рд╕рдХрддреА рд╣реИрдВредрдлрд╝рдВрдХреНрд╢рди рдХреЛрдб BEGIN TRANSACTION; DROP FUNCTION IF EXISTS admtf_Table_Sequences (a_SchemaName NAME, a_TableName NAME); CREATE OR REPLACE FUNCTION admtf_Table_Sequences (a_SchemaName NAME default 'public', a_TableName NAME default NULL ) RETURNS TABLE (r_SequenceNumber SMALLINT,r_SequenceName NAME, r_SequenceSchemaName NAME,r_SequenceDescription TEXT, r_SequenceStartValue BIGINT,r_SequenceIncrementBy BIGINT, r_SequenceMaxValue BIGINT,r_DependType NAME, r_RefTableName NAME,r_RefTableSchemaName NAME, r_RefAttributeName NAME) AS $BODY$ DECLARE v_TableOID INTEGER; v_Sequence RECORD; v_SequenceOID INTEGER; v_SequenceName NAME; v_SequenceSchemaName NAME; v_SequenceDescription TEXT; v_SequenceStartValue BIGINT; v_SequenceIncrementBy BIGINT; v_SequenceMaxValue BIGINT; v_DependcyType NAME; v_AttributeName NAME; v_SequenceNumber SMALLINT; c_Delimiter CONSTANT VARCHAR(2):=',';
admtf_Table_Sequences (PostgreSQL 10)
. BEGIN TRANSACTION; DROP FUNCTION IF EXISTS admtf_Table_Sequences (a_SchemaName NAME, a_TableName NAME); CREATE OR REPLACE FUNCTION admtf_Table_Sequences (a_SchemaName NAME default 'public', a_TableName NAME default NULL ) RETURNS TABLE (r_SequenceNumber SMALLINT,r_SequenceName NAME, r_SequenceSchemaName NAME,r_SequenceDescription TEXT, r_SequenceStartValue BIGINT,r_SequenceIncrementBy BIGINT, r_SequenceMaxValue BIGINT,r_DependType NAME, r_RefTableName NAME,r_RefTableSchemaName NAME, r_RefAttributeName NAME) AS $BODY$ DECLARE v_TableOID INTEGER; v_Sequence RECORD; v_SequenceOID INTEGER; v_SequenceName NAME; v_SequenceSchemaName NAME; v_SequenceDescription TEXT; v_SequenceStartValue BIGINT; v_SequenceIncrementBy BIGINT; v_SequenceMaxValue BIGINT; v_DependcyType NAME; v_AttributeName NAME; v_SequenceNumber SMALLINT; c_Delimiter CONSTANT VARCHAR(2):=',';
admfn_Table_RowCount
. BEGIN TRANSACTION; DROP FUNCTION IF EXISTS admfn_Table_RowCount (a_SchemaName NAME,a_TableName NAME); CREATE OR REPLACE FUNCTION admfn_Table_RowCount (a_SchemaName NAME default 'public', a_TableName NAME default NULL ) RETURNS BIGINT AS $BODY$ DECLARE v_TableNumberOfRowCalc BIGINT; v_Found BOOLEAN;
admtf_Table_InheritanceChildrens
. BEGIN TRANSACTION; DROP FUNCTION IF EXISTS admtf_Table_InheritanceChildrens (a_SchemaName NAME,a_TableName NAME,a_Mode VARCHAR(10)); CREATE OR REPLACE FUNCTION admtf_Table_InheritanceChildrens (a_SchemaName NAME default 'public', a_TableName NAME default NULL, a_Mode VARCHAR(10) default 'estimate' ) RETURNS TABLE (rs_TableName NAME,rs_TableDescription TEXT, rs_NumberOfAttribute INTEGER,rs_NumberOfChecks INTEGER, rs_hasPKey BOOLEAN,rs_hasIndex BOOLEAN, rs_hasSubClass BOOLEAN,rs_NumberOfRow INTEGER) AS $BODY$ DECLARE c_TableKind CONSTANT CHAR:='r'; c_ExactlyMode CONSTANT VARCHAR(10):='exactly'; c_EstimateMode CONSTANT VARCHAR(10):='estimate'; v_TableOID OID; v_SchemaName NAME; v_TableName NAME; v_TableDescription TEXT; v_TableNumberOfRowCalc INTEGER; v_InheritanceRECORD RECORD; v_InheritanceOID OID; BEGIN RETURN QUERY SELECT rtbl.relname,rdsc.description,rtbl.relnatts::INTEGER, rtbl.relchecks::INTEGER,rtbl.relhaspkey,rtbl.relhasindex, rtbl.relhassubclass, CASE WHEN a_Mode=c_ExactlyMode THEN admfn_Table_RowCount(rnspc.nspname,rtbl.relname)::INTEGER ELSE rtbl.reltuples::INTEGER END FROM pg_class tbl INNER JOIN pg_namespace nspc ON tbl.relnamespace = nspc.oid LEFT OUTER JOIN pg_Description dsc ON tbl.oid=dsc.objoid AND dsc.objsubid=0 INNER JOIN pg_depend dp ON tbl.oid=dp.refobjid INNER JOIN pg_class rtbl ON rtbl.OID=dp.objid INNER JOIN pg_namespace rnspc ON rtbl.relnamespace = rnspc.oid LEFT OUTER JOIN pg_Description rdsc ON rtbl.oid=rdsc.objoid AND rdsc.objsubid=0 WHERE nspc.nspname=LOWER(a_SchemaName) AND tbl.relkind=c_TableKind AND rtbl.relkind=c_TableKind AND tbl.relname =LOWER(a_TableName) ORDER BY rtbl.relname; END $BODY$ LANGUAGE plpgsql; COMMENT ON FUNCTION admtf_Table_InheritanceChildrens(a_SchemaName NAME,a_TableName NAME,a_Mode VARCHAR(10)) IS ' ';
admtf_Attribute_PKFeatures
. BEGIN TRANSACTION; DROP FUNCTION IF EXISTS admtf_Attribute_PKFeatures (a_TableOID OID,a_AttributeNo SMALLINT); CREATE OR REPLACE FUNCTION admtf_Attribute_PKFeatures (a_TableOID OID, a_AttributeNo SMALLINT ) RETURNS TABLE (rs_isAttributePK BOOLEAN,rs_PKeyName name,rs_ColumnPKNo SMALLINT) AS $BODY$ DECLARE C_PKAttributeList_NDims CONSTANT INTEGER:=1; v_PKAttributeList SMALLINT[]; v_PKAttributeIndx INTEGER; v_PKAttributeLBound INTEGER; v_PKAttributeUBound INTEGER;
admtf_Attribute_FKFeatures
. BEGIN TRANSACTION; DROP FUNCTION IF EXISTS admtf_Attribute_FKFeatures (a_TableOID OID,a_AttributeNo SMALLINT); CREATE OR REPLACE FUNCTION admtf_Attribute_FKFeatures (a_TableOID OID, a_AttributeNo SMALLINT ) RETURNS TABLE (rs_isAttributeFK BOOLEAN,rs_FKeyName name[],rs_ColumnFKNo SMALLINT[],rs_FKTableName name[],rs_FKTableColumnName name[]) AS $BODY$ DECLARE C_FKAttributeList_NDims CONSTANT INTEGER:=1; v_FKAttributeList SMALLINT[]; v_RefAttributeList SMALLINT[]; v_FKAttributeIndx INTEGER; v_RefAttributeListIndx INTEGER; v_FKAttributeLBound INTEGER; v_FKAttributeUBound INTEGER; v_FKConstraintIndx INTEGER; v_FKeyName name; v_FKTableName name; v_FKTableColumnName name; v_RefAttributeNo SMALLINT; v_Constraint pg_constraint%ROWTYPE;
admtf_Attribute_Features
. BEGIN TRANSACTION; DROP FUNCTION IF EXISTS admtf_Attribute_Features (a_TableOID OID,a_AttributeNo SMALLINT); CREATE OR REPLACE FUNCTION admtf_Attribute_Features (a_TableOID OID, a_AttributeNo SMALLINT ) RETURNS TABLE (rsa_AttributeName name,rsa_UserTypeName VARCHAR(256),rsa_TypeName VARCHAR(256),rsa_isNotNULL BOOLEAN,rsa_isAttributePK BOOLEAN, rsa_ColumnPKNo SMALLINT,rsa_Description Text,rsa_isAttributeFK BOOLEAN,rsa_FKeyName name[],rsa_ColumnFKNo SMALLINT[],rsa_FKTableName name[],rsa_FKTableColumnName name[]) AS $BODY$ DECLARE v_Return_Error Integer := 0;
PostgreSQL. ;PostgreSQL. .PostgreSQL. ( ) .