diff options
Diffstat (limited to 'lisp/sqlite-mode.el')
-rw-r--r-- | lisp/sqlite-mode.el | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/lisp/sqlite-mode.el b/lisp/sqlite-mode.el index 9306bd85dcd..082eb8276e8 100644 --- a/lisp/sqlite-mode.el +++ b/lisp/sqlite-mode.el @@ -25,6 +25,14 @@ (require 'cl-lib) +(declare-function sqlite-execute "sqlite.c") +(declare-function sqlite-more-p "sqlite.c") +(declare-function sqlite-next "sqlite.c") +(declare-function sqlite-columns "sqlite.c") +(declare-function sqlite-finalize "sqlite.c") +(declare-function sqlite-select "sqlite.c") +(declare-function sqlite-open "sqlite.c") + (defvar-keymap sqlite-mode-map "g" #'sqlite-mode-list-tables "c" #'sqlite-mode-list-columns @@ -44,6 +52,8 @@ (defun sqlite-mode-open-file (file) "Browse the contents of an sqlite file." (interactive "fSQLite file name: ") + (unless (sqlite-available-p) + (error "This Emacs doesn't have SQLite support, so it can't view SQLite files")) (pop-to-buffer (get-buffer-create (format "*SQLite %s*" (file-name-nondirectory file)))) (sqlite-mode) @@ -57,7 +67,7 @@ (db sqlite--db) (entries nil)) (erase-buffer) - (dolist (table (sqlite-select db "select name from sqlite_schema where type = 'table' and name not like 'sqlite_%' order by name")) + (dolist (table (sqlite-select db "select name from sqlite_master where type = 'table' and name not like 'sqlite_%' order by name")) (push (list (car table) (caar (sqlite-select db (format "select count(*) from %s" (car table))))) @@ -188,7 +198,7 @@ (not (eq (car table) 'row))) (user-error "No row under point")) (unless (yes-or-no-p "Really delete the row under point? ") - (error "Not deleting")) + (user-error "Not deleting")) (sqlite-execute sqlite--db (format "delete from %s where %s" |