comparison base/datasets/datasets-db/datasets-db-setup.lisp @ 250:b3260d1d2419

Add onset-in-bar-relative-to-tactus. This depends on tactus-duration, which needs revisiting.
author Jamie Forth <j.forth@gold.ac.uk>
date Thu, 24 Feb 2011 11:23:18 +0000
parents
children 6a3adca16910
comparison
equal deleted inserted replaced
249:bba5e8571b92 250:b3260d1d2419
1 (cl:in-package #:amuse-database-admin)
2
3 (defun create-datasets-table (&optional (database *amuse-database*))
4 (%create-datasets-table database)
5 (%create-datasets-join-table database))
6
7 (defun drop-datasets-table (&optional (database *amuse-database*))
8 (%drop-datasets-table database)
9 (%drop-datasets-join-table database))
10
11 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
12 ;;; Helper functions
13
14 (defun %create-datasets-table (database)
15 #.(clsql:locally-enable-sql-reader-syntax)
16 (clsql:create-table "amuse_datasets"
17 '(([|dataset-id|] clsql:smallint :unsigned
18 :not-null :auto-increment :primary-key)
19 ([|description|] (clsql:varchar 255)
20 :not-null))
21 :database database
22 :transactions t)
23 #.(clsql:locally-disable-sql-reader-syntax))
24
25 (defun %create-datasets-join-table (database)
26 #.(clsql:locally-enable-sql-reader-syntax)
27 (clsql:create-table "amuse_datasets_join"
28 '(([|dataset-id|] clsql:smallint :unsigned
29 :not-null)
30 ([|implementation-id|] clsql:smallint
31 :unsigned :not-null)
32 ([|composition-id|] clsql:smallint :not-null))
33 :constraints '("KEY (dataset_id)")
34 :database database
35 :transactions t)
36 #.(clsql:locally-disable-sql-reader-syntax))
37
38 (defun %drop-datasets-table (database)
39 (clsql:drop-table "amuse_datasets"
40 :database database
41 :if-does-not-exist :ignore))
42
43 (defun %drop-datasets-join-table (database)
44 (clsql:drop-table "amuse_datasets_join"
45 :database database
46 :if-does-not-exist :ignore))