示例#1
0
 def test_order_by_cols(self):
     """This currently prepends the ORDER BY columns."""
     self.assertEqual(
         sql_builder.colstr(select_columns=['col_a', 'col_b', 'col_c'],
                            order_by=['col_b', 'col_c']),
         'col_b, col_c, col_a, col_b, col_c')
     self.assertEqual(
         sql_builder.colstr(select_columns=['col_a', 'col_b', 'col_c'],
                            order_by=['col_b ASC', ('col_c', 'ASC')]),
         'col_b, col_c, col_a, col_b, col_c')
示例#2
0
 def test_order_by_cols(self):
     """This currently prepends the ORDER BY columns."""
     self.assertEqual(
         sql_builder.colstr(select_columns=["col_a", "col_b", "col_c"], order_by=["col_b", "col_c"]),
         "col_b, col_c, col_a, col_b, col_c",
     )
     self.assertEqual(
         sql_builder.colstr(select_columns=["col_a", "col_b", "col_c"], order_by=["col_b ASC", ("col_c", "ASC")]),
         "col_b, col_c, col_a, col_b, col_c",
     )
示例#3
0
 def test_order_by_cols(self):
   """This currently prepends the ORDER BY columns."""
   self.assertEqual(
       sql_builder.colstr(
           select_columns=['col_a', 'col_b', 'col_c'],
           order_by=['col_b', 'col_c']),
       'col_b, col_c, col_a, col_b, col_c')
   self.assertEqual(
       sql_builder.colstr(
           select_columns=['col_a', 'col_b', 'col_c'],
           order_by=['col_b ASC', ('col_c', 'ASC')]),
       'col_b, col_c, col_a, col_b, col_c')
示例#4
0
  def insert(class_, cursor, **bind_variables):
    values_clause, bind_list = sql_builder.build_values_clause(
        class_.columns_list,
        bind_variables)

    if class_.columns_list is None:
      raise dbexceptions.ProgrammingError("DB class should define columns_list")

    query = 'INSERT INTO %s (%s) VALUES (%s)' % (class_.table_name,
                                                 sql_builder.colstr(
                                                     class_.columns_list,
                                                     bind=bind_list),
                                                 values_clause)
    cursor.execute(query, bind_variables)
    return cursor.lastrowid
示例#5
0
 def test_bind(self):
     self.assertEqual(
         sql_builder.colstr(select_columns=['col_a', 'col_b', 'col_c'],
                            bind=['col_c', 'col_a']), 'col_a, col_c')
示例#6
0
 def test_two_exprs(self):
     self.assertEqual(
         sql_builder.colstr(
             select_columns=[sql_builder.Count(),
                             sql_builder.Min('col_a')]),
         'COUNT(1), MIN(col_a)')
示例#7
0
 def test_two_columns(self):
     self.assertEqual(sql_builder.colstr(select_columns=['col_a', 'col_b']),
                      'col_a, col_b')
示例#8
0
 def test_bind(self):
   self.assertEqual(
       sql_builder.colstr(
           select_columns=['col_a', 'col_b', 'col_c'],
           bind=['col_c', 'col_a']),
       'col_a, col_c')
示例#9
0
 def test_two_exprs(self):
   self.assertEqual(
       sql_builder.colstr(
           select_columns=[sql_builder.Count(), sql_builder.Min('col_a')]),
       'COUNT(1), MIN(col_a)')
示例#10
0
 def test_two_columns(self):
   self.assertEqual(
       sql_builder.colstr(select_columns=['col_a', 'col_b']),
       'col_a, col_b')
示例#11
0
 def test_bind(self):
     self.assertEqual(
         sql_builder.colstr(select_columns=["col_a", "col_b", "col_c"], bind=["col_c", "col_a"]), "col_a, col_c"
     )
示例#12
0
 def test_two_columns(self):
     self.assertEqual(sql_builder.colstr(select_columns=["col_a", "col_b"]), "col_a, col_b")