2010-01-08 18 views
77

no estoy seguro si puedo usar en seleccionar a importar datos de otra tabla como la siguiente:SQlite: seleccionar en?

select * into 
    bookmark1 
from bookmark;  

¿Es cierto que SQlite no soporta esta sintaxis? ¿Hay otras alternativas?

Respuesta

50

puede probar esta consulta:

insert into bookmark1 select * from bookmark 
+12

Esto supone que bookmark1 ya existe, mientras que select into crea una nueva tabla. – vit

+0

@vit, sí, por supuesto. Es para el caso que queremos importar de nuevo en una tabla. –

+0

@Nick: estoy seguro de que sabes esto, solo pensé que esto debería dejarse en claro para cualquiera por qué puede tropezar con esta pregunta más adelante. :) – vit

169

que podría hacer:

create table bookmark1 as select * from bookmark; 
+0

lo siento, no puedo dar ningún punto porque soy nuevo, pero su sugerencia funciona bien. Thanks =) – Glaucon

+21

No hay problema, no estoy aquí para obtener puntos. :) – vit

+2

Respuesta perfecta y concisa y al grano. +1 y muchos elogios. – zeFree

20

Asumo que marca páginas 1 es una nueva tabla que ha creado que es igual que la mesa marcador. En ese caso, puede usar el siguiente formato.

CREATE TABLE bookmark1 AS SELECT * FROM bookmark; 

O también puede utilizar la instrucción de inserción con subconsulta. Para diferentes opciones de instrucciones de inserción, consulte: SQL As Understood By SQLite

Espero que esto ayude.

Thnks.

11
create table NewTable as 
select * from OldTable where 1 <> 1 

Esto copiará la estructura de datos para usted.

+1

Esto es bastante inteligente. – TheLegendaryCopyCoder

+0

envuelva este SQL en un try-block (o construcción equivalente) en el lenguaje de programación de su elección. – knb

Cuestiones relacionadas