Si alguno de sus campos requiere una fecha u hora, también querrá importar el módulo de fecha y hora, que viene estándar con Python.
Para abrir una conexión a una base de datos, psycopg necesita dos argumentos: el nombre de la base de datos ('dbname') y el nombre del usuario ('user'). La sintaxis para abrir una conexión sigue este formato:
Para nuestra base de datos, usaremos el nombre de la base de datos 'Birds' y el nombre de usuario 'robert'. Para el objeto de conexión dentro del programa, usemos la variable 'conexión'. Entonces, nuestro comando de conexión se leerá de la siguiente manera:
Naturalmente, este comando solo funcionará si ambas variables son precisas: debe haber una base de datos real llamada 'Birds' a la que tenga acceso un usuario llamado 'robert'. Si alguna de estas condiciones no se cumple, Python arrojará un error.
A continuación, a Python le gusta poder realizar un seguimiento de dónde se quedó por última vez al leer y escribir en la base de datos. En psycopg, esto se llama cursor, pero usaremos la variable 'mark' para nuestro programa. Entonces, podemos construir la siguiente asignación:
Si bien algunos formatos de inserción de SQL permiten una estructura de columna comprendida o no establecida, utilizaremos la siguiente plantilla para nuestras declaraciones de inserción:
Si bien podríamos pasar una declaración en este formato al método psycopg 'ejecutar' e insertar datos en la base de datos, esto rápidamente se vuelve complicado y confuso. Una mejor manera es compartimentar la declaración por separado del comando 'ejecutar' de la siguiente manera:
Finalmente, después de pasar los datos a PostgreSQL, debemos confirmar los datos en la base de datos:
Ahora hemos construido las partes básicas de nuestra función 'insertar'. En conjunto, las partes se ven así:
Notará que tenemos tres variables en nuestra declaración: tabla, columnas y valores. Estos se convierten así en los parámetros con los que se llama a la función:
Deberíamos, por supuesto, seguir eso con una cadena de documentación:
Finalmente, tenemos una función para insertar datos en una tabla de nuestra elección, usando columnas y valores definidos según sea necesario.
Para llamar a esta función, simplemente necesitamos definir la tabla, las columnas y los valores y pasarlos de la siguiente manera: