VBSQLITEMANAGER - GESTIONNAIRE DE BASE DE DONNÉES SQLITE (VB6)
cs_frop01
Messages postés1352Date d'inscriptionlundi 27 octobre 2003StatutMembreDernière intervention19 novembre 2008
-
26 oct. 2004 à 15:07
ghuysmans99
Messages postés2496Date d'inscriptionjeudi 14 juillet 2005StatutContributeurDernière intervention 5 juin 2016
-
23 juin 2008 à 13:42
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
cs_frop01
Messages postés1352Date d'inscriptionlundi 27 octobre 2003StatutMembreDernière intervention19 novembre 20082 2 juil. 2005 à 16:28
La version 3 de SQLITE supporte désormais le ALTER TABLE
ptitkaneda
Messages postés14Date d'inscriptionmercredi 7 juillet 2004StatutMembreDernière intervention 3 décembre 2004 15 déc. 2004 à 14:23
J'ai pas test ta source, je suis juste venu jeter un coup d'oeil, et je trouve quand meme que le fait que la commande alter table ne soit pas implementer est un handicape assez lourd .... enfin bon comme tu dis on peu faire autrement mais bon SQLite part avec un handicape.
cs_frop01
Messages postés1352Date d'inscriptionlundi 27 octobre 2003StatutMembreDernière intervention19 novembre 20082 26 oct. 2004 à 15:22
Question : Comment ajouter ou supprimer des champs d'une table existante ?
Réponse : SQLite ne supporte pas la commande SQL "ALTER TABLE". Si Vous voulez changer la structure de la table :
Vous devez recréer la table. Vous pouvez sauvegarder la table dans une table temporaire, supprimer l'ancienne table, créer la nouvelle table avec les modifications à apporter et enfin copier les données de la table temporaire vers la nouvelle table.
Exemple, supposons que vous avez une table nommé "t1" avec comme champs "a", "b", et "c" et vous voulez supprimer le champ "c" de la table. Les étapes suivantes vous montre comment procéder :
BEGIN TRANSACTION;
CREATE TEMPORARY TABLE t1_backup(a,b);
INSERT INTO t1_backup SELECT a,b FROM t1;
DROP TABLE t1;
CREATE TABLE t1(a,b);
INSERT INTO t1 SELECT a,b FROM t1_backup;
DROP TABLE t1_backup;
COMMIT;
cs_frop01
Messages postés1352Date d'inscriptionlundi 27 octobre 2003StatutMembreDernière intervention19 novembre 20082 26 oct. 2004 à 15:07
Question : Comment créer un champ Auto-Incrément ?
Réponse : Un champ déclarer INTEGER PRIMARY KEY est automatiquement autoincrement :
Exemple :
Supposons que vous avez une table comme :
CREATE TABLE t1(
a INTEGER PRIMARY KEY,
b INTEGER
);
On peut insérer une ligne avec comme valeur pour le champ autoincrément NULL :
INSERT INTO t1 VALUES(NULL,123);
Comme si on a fait :
INSERT INTO t1 VALUES((SELECT max(a) FROM t1)+1,123);
23 juin 2008 à 13:42
CREATE TABLE tatable
(TIdx INTEGER PRIMARY KEY AUTOINCREMENT,
chtinombre INTEGER NOT NULL);
2 juil. 2005 à 16:28
15 déc. 2004 à 14:23
26 oct. 2004 à 15:22
Réponse : SQLite ne supporte pas la commande SQL "ALTER TABLE". Si Vous voulez changer la structure de la table :
Vous devez recréer la table. Vous pouvez sauvegarder la table dans une table temporaire, supprimer l'ancienne table, créer la nouvelle table avec les modifications à apporter et enfin copier les données de la table temporaire vers la nouvelle table.
Exemple, supposons que vous avez une table nommé "t1" avec comme champs "a", "b", et "c" et vous voulez supprimer le champ "c" de la table. Les étapes suivantes vous montre comment procéder :
BEGIN TRANSACTION;
CREATE TEMPORARY TABLE t1_backup(a,b);
INSERT INTO t1_backup SELECT a,b FROM t1;
DROP TABLE t1;
CREATE TABLE t1(a,b);
INSERT INTO t1 SELECT a,b FROM t1_backup;
DROP TABLE t1_backup;
COMMIT;
26 oct. 2004 à 15:07
Réponse : Un champ déclarer INTEGER PRIMARY KEY est automatiquement autoincrement :
Exemple :
Supposons que vous avez une table comme :
CREATE TABLE t1(
a INTEGER PRIMARY KEY,
b INTEGER
);
On peut insérer une ligne avec comme valeur pour le champ autoincrément NULL :
INSERT INTO t1 VALUES(NULL,123);
Comme si on a fait :
INSERT INTO t1 VALUES((SELECT max(a) FROM t1)+1,123);