Question

Désolé si cela est trop simpliste.

J'ai décidé que je veux utiliser une base de données SQLite au lieu d'une base de données MySQL. Je suis en train d'envelopper ma tête autour de la simplicité SQLite et souhaite recevoir un simple, un tutoriel de réponse sur la façon d'utiliser SQLite avec le Zend Framework, où mettre ma base de données SQLite dans ma structure de répertoire, comment créer la base de données, etc. .

Était-ce utile?

La solution

Si vous faites une connexion à une base de données non existante, une base de données est créée à la volée. (Vous pouvez désactiver cette behavour off)

Autres conseils

@tuinstoel est correct, la fixation à une base de données SQLite crée implicitement si elle n'existe pas.

SQLite prend également en charge un client de ligne de commande qui est plus ou moins comme shell de commandes de MySQL, vous permettant d'émettre des commandes ad hoc ou exécuter des scripts SQL. Consultez la documentation ici: http://www.sqlite.org/sqlite.html

Bien sûr, vous devez changer l'Zend_Db_Adapter dans votre application ZF. ZF supporte uniquement un adaptateur pour l'extension PDO SQLite. SQLite ne supporte pas les informations d'identification utilisateur / mot de passe. En outre, depuis SQLite est une base de données intégrée au lieu de client / serveur, le paramètre « hôte » n'a pas de sens.

$db = Zend_Db::factory("pdo_sqlite", array("dbname"=>"/path/to/mydatabase.db"));

Une autre mise en garde: lorsque vous obtenez des résultats de la requête en format tableau associatif, certaines versions de SQLite insistent sur l'utilisation de « nomtable.nomcolonne » les clés du tableau, tandis que d'autres marques de clés de retour de la base de données comme une simple « columnname ». Il y a un bug exceptionnel dans ZF à ce sujet, pour essayer de compenser et de faire SQLite se comporter en conformité avec les autres adaptateurs, mais le bug est sans solution.

Ceci est maintenant couvert dans le Zend Framework QuickStart tutoriel (version 1.9.5 de cette écriture). Il suffit de faire un nouveau projet (avec l'outil de ligne de commande zf. Regarder ici pour un grand tutoriel sur mise en place), ajoutez ces lignes à votre fichier config.ini et vous êtes bon pour aller:

; application/configs/application.ini
[production]
resources.db.adapter       = "PDO_SQLITE"
resources.db.params.dbname = APPLICATION_PATH "/../data/db/databaseName.db"

Maintenant, lorsque vous demandez votre carte de base de données par défaut, il utilisera celui-ci. Je recommande également télécharger le code source de didacticiel QuickStart et en utilisant le script load.sqlite.php. Vous pouvez créer un schéma et le fichier de données et charger la base de données avec ces tables / colonnes / valeurs. Il est très utile! Il suffit de consulter tutoriel. Il est tout là-dedans.


Cette réponse a été déplacé hors de question dans une réponse CW à désavouer la propriété sur le contenu .

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top