显然,我试图删除数据库并再次创建它,但它无法正常工作。
它为我提供了错误:
的MySQL> source /Users/divinedavis/downloads/tract_schema.sql;
ERROR 1010(HY000):丢弃数据库时出错(无法rmdir './ tract',错误号码 )
ERROR 1010(HY000):无法创建数据库'TRACT';数据库退出
数据库已更改
DROP DATABASE IF EXISTS TRACT;
CREATE DATABASE TRACT;
USE TRACT;
# # is used for comment in MySQL
#DROP TABLE employee;
CREATE TABLE CUSTOMER (
cust_num integer(10),
cf_name varchar(15),
cm_init varchar (2),
cl_name varchar(15),
c_address varchar (40),
c_uname varchar(15),
primary key (cust_num, cf_name, cl_name)
);
CREATE TABLE INVOICE (
inum integer(10) not null,
i_date date default null,
custf_name varchar(15),
cl_name varchar (15) default null,
tech_uname varchar(15) default null,
lp_num varchar(6) default null,
primary key (inum)
);
#DROP TABLE department; #CASCADE CONSTRAINTS;
CREATE TABLE PAYMENT (
p_type varchar(25) not null,
i_num integer(10),
amount decimal(5,2),
foreign key (i_num) references invoice(inum)
);
#ALTER TABLE employee ADD(
#foreign key (dno) references department(dnumber)
#);
#DROP TABLE dept_locations; #CASCADE CONSTRAINTS;
#DROP TABLE project; #CASCADE CONSTRAINTS;
CREATE TABLE VEHICLE (
model varchar(25) not null,
lp_num varchar (6) not null,
vin varchar(17),
v_year integer(4) not null,
v_trim varchar(10) not null,
tire_size varchar(6),
make varchar(15),
mileage integer(8) not null,
color varchar(20),
cust_name varchar(30),
primary key (lp_num, vin)
);
#DROP TABLE works_on; #CASCADE CONSTRAINTS;
CREATE TABLE TECHNICIAN (
wage decimal(3, 2),
s_name varchar (23),
s_num integer,
city varchar(20),
state varchar (20),
zip integer,
reviews varchar(400),
ratings integer (5),
tf_name varchar(10),
tm_init varchar(2),
tl_name integer (4),
t_uname varchar(15),
t_ssn integer(9),
primary key (t_uname)
);
#DROP TABLE dependent; #CASCADE CONSTRAINTS;
CREATE TABLE CREDENTIALS (
email char(9),
username varchar(15),
user_password char,
ssn integer(9),
primary key (username)
);
CREATE TABLE RT_CALENDAR (
time_of_operation integer(9),
date_of_repair date
);
CREATE TABLE WORKS_ON (
cost decimal(3,2),
hours integer(15),
lp_num char,
t_ssn date
);
答案 0 :(得分:2)
答案 1 :(得分:2)
看起来你可能丢失了一些文件,这可以解释为什么mysql说db存在,但由于找不到文件错误你无法删除它。
系统数据库中有数据库对象的条目,如果某些文件消失(被删除或其他什么),如果发生这种情况,你不能只是DROP [数据库]。
检查here是否有答案。
答案 2 :(得分:1)
首先使用命令
查找DB目录mysql -e "select @@datadir"
它将返回您的数据库目录,例如
+-----------------------+
| @@datadir |
+-----------------------+
| /usr/local/var/mysql/ |
+-----------------------+
转到该目录并使用命令
删除数据库rm -rf DB_name
您也可以使用命令
来root用户sudo rm -rf DB_name
答案 3 :(得分:0)
由于某种原因,无法删除数据库文件夹。可能存在一些与数据库无关的文件。
要手动删除数据库,请转至/ usr / local / mysql / data /并从那里删除/ tract文件夹。