我正在使用以下代码在oracle中创建一个表空间:
Create BIGFILE tablespace SPC_X
Datafile 'SPC_X.dbf'
size 200M
AUTOEXTEND ON NEXT 50M
ONLINE;
到目前为止,我已经创建了几个表空间,没有任何问题。今天我创建了5个表空间(500 M)并将它们全部丢弃。现在我在执行代码之后面临这个错误,如上所述:
SQL-Error: ORA-19502: write error on file " SPC_X.dbf", block number 11136 (block size=8192)
ORA-27072: File I/O error
Additional information: 4
Additional information: 11136
Additional information: 708608
19502. 00000 - "write error on file \"%s\", blockno %s (blocksize=%s)"
*Cause: write error on output file
*Action: check the file
以下信息可能会有所帮助:
有人可以帮我解决这个问题吗?谢谢:))
-
update1:可能是我用掉放旧表格的drop语句不完整吗?
DROP TABLESPACE SPC_A
INCLUDING CONTENTS
CASCADE CONSTRAINTS;
-
update2:我尝试过这段代码但没有成功:
ALTER DATABASE DATAFILE 'SPC_A' OFFLINE DROP;
此代码无法解决,因为表空间已被删除
ALTER TABLESPACE example DROP DATAFILE 'SPC_A';
答案 0 :(得分:1)
通常使用
删除表空间drop tablespace x including contents and datafiles;
这可以防止需要使用OS命令从文件系统中删除数据文件,并且比使用OS命令删除不需要的文件更加安全,因为手动,输入错误比修复更容易。
在您的情况下,首先清理操作系统中的文件。我假设你得到的错误是当你尝试使用相同的数据文件[s]重新创建表空间时。