¿Existe un SQLite equivalente a DESCRIBE de MySQL ?

Estoy empezando a aprender SQLite . Sería bueno poder ver los detalles de una tabla, como DESCRIBE [table] de MySQL DESCRIBE [table] . PRAGMA table_info [table] no es lo suficientemente bueno, ya que solo tiene información básica (por ejemplo, no muestra si una columna es un campo de algún tipo o no). ¿Tiene SQLite una manera de hacer esto?

La utilidad de línea de comandos SQLite tiene un comando .schema TABLENAME que muestra las instrucciones de creación.

 PRAGMA table_info([tablename]); 

¿Estás buscando el SQL usado para generar una tabla? Para eso, puede consultar la tabla sqlite_master :

 sqlite> CREATE TABLE foo (bar INT, quux TEXT); sqlite> SELECT * FROM sqlite_master; table|foo|foo|2|CREATE TABLE foo (bar INT, quux TEXT) sqlite> SELECT sql FROM sqlite_master WHERE name = 'foo'; CREATE TABLE foo (bar INT, quux TEXT) 

Para ver todas las tablas:

 .tables 

Para ver una tabla en particular:

 .schema [tablename] 

Para evitar que las personas sean engañadas por algunos de los comentarios a las otras respuestas:

  1. Si .schema o query from sqlite_master no da ningún resultado, indica un nombre de tablename inexistente, por ejemplo, esto también puede ser causado por a ; punto y coma al final para .schema , .tables , … O simplemente porque la tabla realmente no existe. Ese .schema simplemente no funciona es muy poco probable y luego se debe presentar un informe de error en el proyecto sqlite.

… .schema solo puede usarse desde una línea de comando; los comandos anteriores> se pueden ejecutar como una consulta a través de una biblioteca (Python, C #, etc.). – Mark Rushakoff Jul 25 ’10 a las 21:09

  1. ‘solo se puede usar desde una línea de comando’ puede engañar a las personas. Casi cualquier lenguaje de progtwigción (¿cualquiera?) Puede llamar a otros progtwigs / comandos. Por lo tanto, el comentario citado es desafortunado ya que es más probable que sea necesario llamar a otro progtwig, en este caso sqlite , que el lenguaje proporciona un wrapper / library para cada progtwig (que no solo es propenso a estar incompleto por la naturaleza de las masas de progtwigs por ahí, pero también actúa en contra de actuar como single-source principle , complicando el maintenance , fomentando el caos de datos en el mundo).

(Poner como respuesta, ya que no hay permiso para comentar aún).