Mercurial > hg > amuse
view base/database/datasets-setup.lisp @ 295:ced696bd9871
add database-admin function to create composition identifiers from file
Ignore-this: ff758dc4be1061baebae471feee53f00
darcs-hash:20090820181949-16a00-389500f68b818adca481631fc7ae26be59a8ad4a.gz
author | j.forth <j.forth@gold.ac.uk> |
---|---|
date | Thu, 20 Aug 2009 19:19:49 +0100 |
parents | 00d35eb70ef9 |
children |
line wrap: on
line source
(cl:in-package #:amuse-database-admin) (defun create-datasets-table (&optional (database *amuse-database*)) (%create-datasets-table database) (%create-datasets-join-table database)) (defun drop-datasets-table (&optional (database *amuse-database*)) (%drop-datasets-table database) (%drop-datasets-join-table database)) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;; Helper functions (defun %create-datasets-table (database) #.(clsql:locally-enable-sql-reader-syntax) (clsql:create-table "amuse_datasets" '(([|dataset-id|] clsql:smallint :unsigned :not-null :auto-increment :primary-key) ([|description|] (clsql:varchar 255) :not-null)) :database database :transactions t) #.(clsql:locally-disable-sql-reader-syntax)) (defun %create-datasets-join-table (database) #.(clsql:locally-enable-sql-reader-syntax) (clsql:create-table "amuse_datasets_join" '(([|dataset-id|] clsql:smallint :unsigned :not-null) ([|implementation-id|] clsql:smallint :unsigned :not-null) ([|composition-id|] clsql:smallint :not-null)) :constraints '("KEY (dataset_id)") :database database :transactions t) #.(clsql:locally-disable-sql-reader-syntax)) (defun %drop-datasets-table (database) (clsql:drop-table "amuse_datasets" :database database :if-does-not-exist :ignore)) (defun %drop-datasets-join-table (database) (clsql:drop-table "amuse_datasets_join" :database database :if-does-not-exist :ignore))