Ayuda SQL Api-Rest Flask
Publicado por Jonathan (1 intervención) el 28/06/2019 18:18:12
Album(album_id,album_nombre,album_artistaid)
ER
Artista(artista_id,artista_nombre)
Cancion(cancion_id,cancion_nombre,cancion_genero,cancion_albumid)
Playlist(Playlist_idp,playlist_nombre,playlist_descripcion,playlist_id) *** Playlist_id = Id usuario
Playlist_cancion(playlist_cancion_id,cancion_id,playlist_id) *** playlist_id id Playlist
Usuarios(id,username,password,email)
Tengo una función addsong que se supone que primero debería imprimir todas las canciones que no estén en la playlist que se desea modificar su contenido. El problema viene cuando se recibe los datos de la consulta , ya que me imprime las canciones que no están en NINGUNA playlist
Me explico:
Playlist n°1 = One de Metallica
Playlist n°2 = Bye Bye Baby Madonna y The Day That Never Metallica
Si quiero agregar canciones a la playlist 1 , deberia mostrarme todas las canciones excepto ONE de Metallica pero tampoco aparecen las canciones de la playlist N°2 ( Bye Bye Baby Madonna y The Day That Never Metallica )
y así tambien ocurre al querrer modificar la playlist 2 , deberia aparecer ONE de metallica pero no aparece.
Primera api rest que realizo en mi vida ...
funcion del main.py:
@app.route('/addsong/<id>')
def obtenercancion(id):
cur = mysql.connection.cursor()
cur.execute("Select distinct cancion.cancion_nombre from playlist, cancion, usuarios, playlist_cancion where cancion.cancion_id NOT IN (Select playlist_cancion.cancion_id from playlist, playlist_cancion where playlist.playlist_idp = playlist_cancion.playlist_id) AND playlist.playlist_id = usuarios.id AND playlist.playlist_idp = %s",(id))
mysql.connection.commit()
listaid = cur.fetchall()
print(listaid)
return render_template('agregarsong.html',canciones=listaid)



Me han dicho que es error de la consulta SQL pero no sé en qué puede estar fallando
AYUDA PORFAVOOOOR !!
**** Los datos que se saben es la ID del Usuario y el que se "ingresa" es la ID del playlist A EDITAR
ER
Artista(artista_id,artista_nombre)
Cancion(cancion_id,cancion_nombre,cancion_genero,cancion_albumid)
Playlist(Playlist_idp,playlist_nombre,playlist_descripcion,playlist_id) *** Playlist_id = Id usuario
Playlist_cancion(playlist_cancion_id,cancion_id,playlist_id) *** playlist_id id Playlist
Usuarios(id,username,password,email)
Tengo una función addsong que se supone que primero debería imprimir todas las canciones que no estén en la playlist que se desea modificar su contenido. El problema viene cuando se recibe los datos de la consulta , ya que me imprime las canciones que no están en NINGUNA playlist
Me explico:
Playlist n°1 = One de Metallica
Playlist n°2 = Bye Bye Baby Madonna y The Day That Never Metallica
Si quiero agregar canciones a la playlist 1 , deberia mostrarme todas las canciones excepto ONE de Metallica pero tampoco aparecen las canciones de la playlist N°2 ( Bye Bye Baby Madonna y The Day That Never Metallica )
y así tambien ocurre al querrer modificar la playlist 2 , deberia aparecer ONE de metallica pero no aparece.
Primera api rest que realizo en mi vida ...
funcion del main.py:
@app.route('/addsong/<id>')
def obtenercancion(id):
cur = mysql.connection.cursor()
cur.execute("Select distinct cancion.cancion_nombre from playlist, cancion, usuarios, playlist_cancion where cancion.cancion_id NOT IN (Select playlist_cancion.cancion_id from playlist, playlist_cancion where playlist.playlist_idp = playlist_cancion.playlist_id) AND playlist.playlist_id = usuarios.id AND playlist.playlist_idp = %s",(id))
mysql.connection.commit()
listaid = cur.fetchall()
print(listaid)
return render_template('agregarsong.html',canciones=listaid)



Me han dicho que es error de la consulta SQL pero no sé en qué puede estar fallando
AYUDA PORFAVOOOOR !!
**** Los datos que se saben es la ID del Usuario y el que se "ingresa" es la ID del playlist A EDITAR
Valora esta pregunta


0