• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

Python utils.new_std_map函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Python中utils.new_std_map函数的典型用法代码示例。如果您正苦于以下问题:Python new_std_map函数的具体用法?Python new_std_map怎么用?Python new_std_map使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。



在下文中一共展示了new_std_map函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。

示例1: test_bad_table_map

 def test_bad_table_map(self):
     "Error creating a table with a bad map"
     inmap = new_std_map()
     inmap['schema public'].update({'t1': {
                 'columns': [{'c1': {'type': 'integer'}},
                             {'c2': {'type': 'text'}}]}})
     self.assertRaises(KeyError, self.db.process_map, inmap)
开发者ID:PJMODOS,项目名称:Pyrseas,代码行数:7,代码来源:test_table.py


示例2: test_create_table_with_defaults

 def test_create_table_with_defaults(self):
     "Create a table with two column DEFAULTs, one referring to a SEQUENCE"
     self.db.execute(DROP_STMT)
     self.db.execute_commit("DROP SEQUENCE IF EXISTS t1_c1_seq")
     inmap = new_std_map()
     inmap['schema public'].update({'table t1': {
                 'columns': [{'c1': {
                             'type': 'integer',
                             'not_null': True,
                             'default': "nextval('t1_c1_seq'::regclass)"}},
                             {'c2': {'type': 'text', 'not_null': True}},
                             {'c3': {
                             'type': 'date', 'not_null': True,
                             'default': "('now'::text)::date"}}]},
                                    'sequence t1_c1_seq': {
                 'cache_value': 1, 'increment_by': 1, 'max_value': None,
                 'min_value': None, 'start_value': 1}})
     dbsql = self.db.process_map(inmap)
     self.assertEqual(fix_indent(dbsql[0]),
                      "CREATE TABLE t1 (c1 integer NOT NULL, "
                      "c2 text NOT NULL, "
                      "c3 date NOT NULL DEFAULT ('now'::text)::date)")
     self.assertEqual(fix_indent(dbsql[1]),
                      "CREATE SEQUENCE t1_c1_seq START WITH 1 "
                      "INCREMENT BY 1 NO MAXVALUE NO MINVALUE CACHE 1")
     self.assertEqual(dbsql[2], "ALTER TABLE t1 ALTER COLUMN c1 "
                      "SET DEFAULT nextval('t1_c1_seq'::regclass)")
开发者ID:PJMODOS,项目名称:Pyrseas,代码行数:27,代码来源:test_table.py


示例3: test_bad_sequence_map

 def test_bad_sequence_map(self):
     "Error creating a sequence with a bad map"
     inmap = new_std_map()
     inmap['schema public'].update({'seq1': {
                 'start_value': 1, 'increment_by': 1, 'max_value': None,
                 'min_value': None, 'cache_value': 1}})
     self.assertRaises(KeyError, self.db.process_map, inmap)
开发者ID:PJMODOS,项目名称:Pyrseas,代码行数:7,代码来源:test_sequence.py


示例4: test_drop_enum

 def test_drop_enum(self):
     "Drop an existing enum"
     self.db.execute(DROP_STMT)
     self.db.execute_commit(CREATE_ENUM_STMT)
     inmap = new_std_map()
     dbsql = self.db.process_map(inmap)
     self.assertEqual(dbsql, ["DROP TYPE t1"])
开发者ID:PJMODOS,项目名称:Pyrseas,代码行数:7,代码来源:test_type.py


示例5: test_drop_table

 def test_drop_table(self):
     "Drop an existing table"
     self.db.execute(DROP_STMT)
     self.db.execute_commit(CREATE_STMT)
     inmap = new_std_map()
     dbsql = self.db.process_map(inmap)
     self.assertEqual(dbsql, ["DROP TABLE t1"])
开发者ID:PJMODOS,项目名称:Pyrseas,代码行数:7,代码来源:test_table.py


示例6: test_create_trigger

 def test_create_trigger(self):
     "Create a constraint trigger"
     inmap = new_std_map()
     inmap.update({"language plpgsql": {"trusted": True}})
     inmap["schema public"].update(
         {"function f1()": {"language": "plpgsql", "returns": "trigger", "source": FUNC_SRC}}
     )
     inmap["schema public"].update(
         {
             "table t1": {
                 "columns": [
                     {"c1": {"type": "integer"}},
                     {"c2": {"type": "text"}},
                     {"c3": {"type": "timestamp with time zone"}},
                 ],
                 "triggers": {
                     "tr1": {
                         "constraint": True,
                         "timing": "after",
                         "events": ["insert", "update"],
                         "level": "row",
                         "procedure": "f1()",
                     }
                 },
             }
         }
     )
     dbsql = self.db.process_map(inmap)
     self.assertEqual(fix_indent(dbsql[1]), CREATE_FUNC_STMT)
     self.assertEqual(fix_indent(dbsql[2]), CREATE_TABLE_STMT)
     self.assertEqual(
         fix_indent(dbsql[3]),
         "CREATE CONSTRAINT TRIGGER tr1 " "AFTER INSERT OR UPDATE ON t1 " "FOR EACH ROW EXECUTE PROCEDURE f1()",
     )
开发者ID:PJMODOS,项目名称:Pyrseas,代码行数:34,代码来源:test_trigger.py


示例7: test_bad_conversion_map

 def test_bad_conversion_map(self):
     "Error creating a conversion with a bad map"
     inmap = new_std_map()
     inmap["schema public"].update(
         {"c1": {"source_encoding": "LATIN1", "dest_encoding": "UTF8", "function": "iso8859_1_to_utf8"}}
     )
     self.assertRaises(KeyError, self.db.process_map, inmap)
开发者ID:PJMODOS,项目名称:Pyrseas,代码行数:7,代码来源:test_conversion.py


示例8: test_drop_cast

 def test_drop_cast(self):
     "Drop an existing cast"
     self.db.execute(DROP_STMT)
     self.db.execute(CREATE_FUNC)
     self.db.execute_commit(CREATE_STMT1)
     dbsql = self.db.process_map(new_std_map())
     self.assertEqual(dbsql[0], "DROP CAST (smallint AS boolean)")
开发者ID:PJMODOS,项目名称:Pyrseas,代码行数:7,代码来源:test_cast.py


示例9: test_bad_function_map

 def test_bad_function_map(self):
     "Error creating a function with a bad map"
     inmap = new_std_map()
     inmap['schema public'].update({'f1()': {
                 'language': 'sql', 'returns': 'text',
                 'source': SOURCE1}})
     self.assertRaises(KeyError, self.db.process_map, inmap)
开发者ID:PJMODOS,项目名称:Pyrseas,代码行数:7,代码来源:test_function.py


示例10: test_drop_composite

 def test_drop_composite(self):
     "Drop an existing composite"
     self.db.execute(DROP_STMT)
     self.db.execute_commit(CREATE_COMPOSITE_STMT)
     inmap = new_std_map()
     dbsql = self.db.process_map(inmap)
     self.assertEqual(dbsql, ["DROP TYPE t1"])
开发者ID:PJMODOS,项目名称:Pyrseas,代码行数:7,代码来源:test_type.py


示例11: test_drop_rule_table

 def test_drop_rule_table(self):
     "Drop an existing rule and the related table"
     self.db.execute(CREATE_TABLE_STMT)
     self.db.execute_commit(CREATE_STMT % ("INSERT", "NOTHING"))
     dbsql = self.db.process_map(new_std_map())
     self.assertEqual(dbsql[0], "DROP RULE r1 ON t1")
     self.assertEqual(dbsql[1], "DROP TABLE t1")
开发者ID:PJMODOS,项目名称:Pyrseas,代码行数:7,代码来源:test_rule.py


示例12: test_create_domain

 def test_create_domain(self):
     "Create a simple domain"
     self.db.execute_commit(DROP_STMT)
     inmap = new_std_map()
     inmap['schema public'].update({'domain d1': {'type': 'integer'}})
     dbsql = self.db.process_map(inmap)
     self.assertEqual(dbsql, [CREATE_STMT])
开发者ID:PJMODOS,项目名称:Pyrseas,代码行数:7,代码来源:test_domain.py


示例13: test_create_rule_conditional

 def test_create_rule_conditional(self):
     "Create a rule with qualification"
     inmap = new_std_map()
     inmap["schema public"].update(
         {
             "table t1": {
                 "columns": [{"c1": {"type": "integer"}}, {"c2": {"type": "text"}}],
                 "rules": {
                     "r1": {
                         "event": "delete",
                         "condition": "old.c1 < 1000",
                         "actions": "INSERT INTO t1 VALUES (" "old.c1 + 1000, old.c2)",
                     }
                 },
             }
         }
     )
     dbsql = self.db.process_map(inmap)
     self.assertEqual(fix_indent(dbsql[0]), CREATE_TABLE_STMT)
     self.assertEqual(
         fix_indent(dbsql[1]),
         "CREATE RULE r1 AS ON DELETE "
         "TO t1 WHERE old.c1 < 1000 "
         "DO INSERT INTO t1 VALUES (old.c1 + 1000, old.c2)",
     )
开发者ID:PJMODOS,项目名称:Pyrseas,代码行数:25,代码来源:test_rule.py


示例14: test_create_rule_multi_actions

 def test_create_rule_multi_actions(self):
     "Create a rule with multiple actions"
     inmap = new_std_map()
     inmap["schema public"].update(
         {
             "table t1": {
                 "columns": [{"c1": {"type": "integer"}}, {"c2": {"type": "text"}}],
                 "rules": {
                     "r1": {
                         "event": "update",
                         "actions": "(INSERT INTO t1 VALUES (old.c1 + 100); "
                         "INSERT INTO t1 VALUES (old.c1 + 200));)",
                     }
                 },
             }
         }
     )
     dbsql = self.db.process_map(inmap)
     self.assertEqual(fix_indent(dbsql[0]), CREATE_TABLE_STMT)
     self.assertEqual(
         fix_indent(dbsql[1]),
         "CREATE RULE r1 AS ON UPDATE "
         "TO t1 DO (INSERT INTO t1 VALUES (old.c1 + 100); "
         "INSERT INTO t1 VALUES (old.c1 + 200));)",
     )
开发者ID:PJMODOS,项目名称:Pyrseas,代码行数:25,代码来源:test_rule.py


示例15: test_create_aggregate_init_final

 def test_create_aggregate_init_final(self):
     "Create an aggregate with an INITCOND and a FINALFUNC"
     self.db.execute("DROP AGGREGATE IF EXISTS a1(integer)")
     self.db.execute_commit("DROP FUNCTION IF EXISTS f2(integer)")
     self.db.execute_commit(DROP_STMT2)
     inmap = new_std_map()
     inmap['schema public'].update({'function f1(integer, integer)': {
                 'language': 'sql', 'returns': 'integer',
                 'source': SOURCE2,
                 'volatility': 'immutable'}})
     inmap['schema public'].update({'function f2(integer)': {
                 'language': 'sql', 'returns': 'double precision',
                 'source': "SELECT $1::float",
                 'volatility': 'immutable'}})
     inmap['schema public'].update({'aggregate a1(integer)': {
                 'sfunc': 'f1', 'stype': 'integer', 'initcond': '-1',
                 'finalfunc': 'f2(integer)'}})
     dbsql = self.db.process_map(inmap)
     self.assertEqual(fix_indent(dbsql[1]), CREATE_STMT2)
     self.assertEqual(fix_indent(dbsql[2]),
                      "CREATE FUNCTION f2(integer) "
                      "RETURNS double precision LANGUAGE sql IMMUTABLE "
                      "AS $_$SELECT $1::float$_$")
     self.assertEqual(fix_indent(dbsql[3]),
                      "CREATE AGGREGATE a1(integer) "
                      "(SFUNC = f1, STYPE = integer, FINALFUNC = f2, "
                      "INITCOND = '-1')")
开发者ID:PJMODOS,项目名称:Pyrseas,代码行数:27,代码来源:test_function.py


示例16: test_create_trigger2

 def test_create_trigger2(self):
     "Create another simple trigger with"
     inmap = new_std_map()
     inmap.update({"language plpgsql": {"trusted": True}})
     inmap["schema public"].update(
         {"function f1()": {"language": "plpgsql", "returns": "trigger", "source": FUNC_SRC}}
     )
     inmap["schema public"].update(
         {
             "table t1": {
                 "columns": [
                     {"c1": {"type": "integer"}},
                     {"c2": {"type": "text"}},
                     {"c3": {"type": "timestamp with time zone"}},
                 ],
                 "triggers": {"tr1": {"timing": "after", "events": ["delete", "truncate"], "procedure": "f1()"}},
             }
         }
     )
     dbsql = self.db.process_map(inmap)
     self.assertEqual(fix_indent(dbsql[1]), CREATE_FUNC_STMT)
     self.assertEqual(fix_indent(dbsql[2]), CREATE_TABLE_STMT)
     self.assertEqual(
         fix_indent(dbsql[3]),
         "CREATE TRIGGER tr1 AFTER DELETE OR TRUNCATE ON t1 " "FOR EACH STATEMENT EXECUTE PROCEDURE f1()",
     )
开发者ID:PJMODOS,项目名称:Pyrseas,代码行数:26,代码来源:test_trigger.py


示例17: test_add_foreign_key

 def test_add_foreign_key(self):
     "Add a two-column foreign key to an existing table"
     self.db.execute(DROP_STMT + ", t2")
     self.db.execute("CREATE TABLE t1 (c11 INTEGER NOT NULL, "
                     "c12 INTEGER NOT NULL, c13 TEXT, "
                     "PRIMARY KEY (c11, c12))")
     self.db.execute_commit("CREATE TABLE t2 (c21 INTEGER NOT NULL, "
                            "c22 TEXT, c23 INTEGER, c24 INTEGER, "
                            "PRIMARY KEY (c21))")
     inmap = new_std_map()
     inmap['schema public'].update({
             'table t1': {'columns': [
                     {'c11': {'type': 'integer', 'not_null': True}},
                     {'c12': {'type': 'integer', 'not_null': True}},
                     {'c13': {'type': 'text'}}],
                          'primary_key': {'t1_pkey': {
                         'columns': ['c11', 'c12'],
                         'access_method': 'btree'}}},
             'table t2': {'columns': [
                     {'c21': {'type': 'integer', 'not_null': True}},
                     {'c22': {'type': 'text'}},
                     {'c23': {'type': 'integer'}},
                     {'c24': {'type': 'integer'}}],
                          'primary_key': {'t2_pkey': {
                         'columns': ['c21'],
                         'access_method': 'btree'}},
                          'foreign_keys': {'t2_c23_fkey': {
                         'columns': ['c23', 'c24'],
                         'references': {'columns': ['c11', 'c12'],
                                        'table': 't1'}}}}})
     dbsql = self.db.process_map(inmap)
     self.assertEqual(fix_indent(dbsql[0]),
                      "ALTER TABLE t2 ADD CONSTRAINT t2_c23_fkey "
                      "FOREIGN KEY (c23, c24) REFERENCES t1 (c11, c12)")
开发者ID:PJMODOS,项目名称:Pyrseas,代码行数:34,代码来源:test_constraint.py


示例18: test_bad_cast_map

 def test_bad_cast_map(self):
     "Error creating a cast with a bad map"
     inmap = new_std_map()
     inmap.update({'(smallint AS boolean)': {
                 'function': 'int2_bool(smallint)', 'context': 'explicit',
                 'method': 'function'}})
     self.assertRaises(KeyError, self.db.process_map, inmap)
开发者ID:PJMODOS,项目名称:Pyrseas,代码行数:7,代码来源:test_cast.py


示例19: test_change_trigger_comment

 def test_change_trigger_comment(self):
     "Change existing comment on a trigger"
     self.db.execute(CREATE_TABLE_STMT)
     self.db.execute(CREATE_FUNC_STMT)
     self.db.execute(CREATE_STMT)
     self.db.execute_commit(COMMENT_STMT)
     inmap = new_std_map()
     inmap.update({"language plpgsql": {"trusted": True}})
     inmap["schema public"].update(
         {"function f1()": {"language": "plpgsql", "returns": "trigger", "source": FUNC_SRC}}
     )
     inmap["schema public"].update(
         {
             "table t1": {
                 "columns": [
                     {"c1": {"type": "integer"}},
                     {"c2": {"type": "text"}},
                     {"c3": {"type": "timestamp with time zone"}},
                 ],
                 "triggers": {
                     "tr1": {
                         "description": "Changed trigger tr1",
                         "timing": "before",
                         "events": ["insert", "update"],
                         "level": "row",
                         "procedure": "f1()",
                     }
                 },
             }
         }
     )
     dbsql = self.db.process_map(inmap)
     self.assertEqual(dbsql, ["COMMENT ON TRIGGER tr1 ON t1 IS 'Changed trigger tr1'"])
开发者ID:PJMODOS,项目名称:Pyrseas,代码行数:33,代码来源:test_trigger.py


示例20: test_create_with_foreign_key

 def test_create_with_foreign_key(self):
     "Create a table with a foreign key constraint"
     self.db.execute_commit(DROP_STMT + ", t2")
     inmap = new_std_map()
     inmap['schema public'].update({'table t1': {
                 'columns': [{'c11': {'type': 'integer'}},
                             {'c12': {'type': 'text'}}]},
                                'table t2': {
                 'columns': [{'c21': {'type': 'integer'}},
                             {'c22': {'type': 'text'}},
                             {'c23': {'type': 'integer'}}],
                 'foreign_keys': {'t2_c23_fkey': {
                         'columns': ['c23'],
                         'references': {'columns': ['c11'],
                                        'table': 't1'}}}}})
     dbsql = self.db.process_map(inmap)
     # can't control which table will be created first
     crt1 = 0
     crt2 = 1
     if 't1' in dbsql[1]:
         crt1 = 1
         crt2 = 0
     self.assertEqual(fix_indent(dbsql[crt1]),
                          "CREATE TABLE t1 (c11 integer, c12 text)")
     self.assertEqual(fix_indent(dbsql[crt2]),
                      "CREATE TABLE t2 (c21 integer, c22 text, "
                      "c23 integer)")
     self.assertEqual(fix_indent(dbsql[2]),
                      "ALTER TABLE t2 ADD CONSTRAINT t2_c23_fkey "
                      "FOREIGN KEY (c23) REFERENCES t1 (c11)")
开发者ID:PJMODOS,项目名称:Pyrseas,代码行数:30,代码来源:test_constraint.py



注:本文中的utils.new_std_map函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Python utils.node函数代码示例发布时间:2022-05-26
下一篇:
Python utils.mysql_query函数代码示例发布时间:2022-05-26
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap