PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

Добавяне на Postgresql към моето приложение Heroku - проблеми със синтаксиса, сриващи заявки?

User е запазена дума в postgresql и се екранира чрез ограждането й с "" Вижте https://stackoverflow.com/a/7651432 . За разлика от mysql, където екраниращите знаци са обратни тикчета.

Също така се опитвате да вмъкнете в колона с име Final_Ratio но дефинирайте колона Final_Gearing . За тестване аз също премахвам и пресъздавам таблицата при всяко изпълнение. Фиксираният код:

import psycopg2

# connect to remote Heroku Postgres DB
pgdb = psycopg2.connect(
   host='localhost',
   user='test',
   password='test',
   port='5432',
   database='test_stackoverflow'
   )

pgcursor = pgdb.cursor()

# verify I've got my credentials in correctly
def check_connection():
   pgcursor.execute("select version()")
   data = pgcursor.fetchone()
   print("Connection established to: ", data)

def create_table():
   sql = '''CREATE TABLE estimation_data 
   ("User" text PRIMARY KEY,
    Motor_kV integer,
     Batt_Volt decimal,
      Pinion integer,
       Spur integer,
        Final_Gearing decimal,
         Wheel_Rad decimal);'''
   pgcursor.execute(sql)
   pgdb.commit()

def drop_table():
   sql = "DROP TABLE IF EXISTS estimation_data;"
   pgcursor.execute(sql)
   pgdb.commit()



def pg_add_data(sql,val):
   pgcursor.executemany(sql, val)
   pgdb.commit()


check_connection()
drop_table()
create_table()

pgsql = '''INSERT INTO estimation_data 
   ("User", Motor_kV, Batt_Volt, Pinion, Spur, Final_Gearing, Wheel_Rad) 
   VALUES (%s, %s, %s, %s, %s, %s, %s);'''
pgval = [
      ('204.210.165.122', 2400, 16.8, 16, 54, 3.92, 2.5),
      ('204.210.165.123', 3500, 12.6, 16, 54, 3.92, 2.5),
      ('204.210.165.124', 4200, 8.4, 12, 54, 3.92, 2.5)]
pg_add_data(pgsql, pgval)

Въпреки че е добре да научите основите за производствен сайт, силно бих препоръчал използването на библиотека от високо ниво като SQLalchemy.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PostgreSQL проверява дали масивът съдържа елемент от левия масив

  2. Къде са регистрационните файлове на PostgreSQL в macOS?

  3. PostgreSQL конвертира името на месеца в число

  4. Как да конвертирате колона на таблица в друг тип данни

  5. Как да намерите броя на редовете за всичките си таблици в Postgres