Coverage report: /development/source/library/org/datagraph/spocq-shard/src/odbc/sql/sql-truncate-exp.lisp
| Kind | Covered | All | % |
| expression | 13 | 27 | 48.1 |
| branch | 0 | 2 | 0.0 |
Key
Not instrumented
Conditionalized out
Executed
Not executed
Both branches taken
One branch taken
Neither branch taken
2
;;; http://osdir.com/ml/lisp.clsql.general/2008-09/msg00003.html
4
;;; (load "patches/sql-truncate-exp.lisp")
5
(in-package :clsql-sys)
7
(eval-when (:compile-toplevel :load-toplevel :execute)
8
(export '(sql-truncate truncate-table)
10
(import '(sql-truncate truncate-table)
12
(export '(sql-truncate truncate-table)
15
(defclass sql-truncate-exp (sql-ident)
16
((name :initarg :name)))
18
(defmethod make-load-form ((sql sql-truncate-exp) &optional environment)
19
(declare (ignore environment))
20
(with-slots (name) sql
21
`(make-instance 'sql-truncate-exp :name ,name)))
23
(defmethod output-sql ((expr sql-truncate-exp) database)
24
(declare (ignore database))
25
(with-slots (name) expr
26
(format *sql-stream* "TRUNCATE \"~a\"" name)))
29
(defsql sql-truncate (:symbol "truncate") (&rest rest)
30
(if (= (length rest) 1)
31
(make-instance 'sql-truncate-exp
33
(error 'sql-user-error "TRBUNCATE must have one argument")))
37
(defun truncate-table (name &key (database *default-database*))
38
(let ((stmt (make-instance 'sql-truncate-exp :name name)))
39
(execute-command stmt :database database)))