Sybase:无法创建数据库:为什么不能?

Sybase: Can't CREATE DATABASE: Why not?

这应该很简单。

Sybase docs ("Example 1") 说您不必指定 size 参数,但即使我指定:

create database pubs5 on default = '10M'

我仍然遇到错误:

Could not execute statement.
CREATE DATABASE failed because of incorrectly specified or unavailable
space. Total number of megabytes specified and available must be at
least 6 megabytes so Model Database can be copied to the new database.
SQLCODE=1810

我尝试过不同的大小(全部超过 6MB),删除大小并尝试使用双引号、单引号和不使用引号。

为什么这么难?

谢谢。

语法正确,但 space 在您的 Sybase 数据库设备上标记为默认值的数量不足。

最简单的解决方法如下:

disk resize name='master', size='20m'

create database pubs5 on master = '10M'

这会将主设备扩展 20MB,让您 space 可以在其上创建数据库。根据您的设置,您的原始命令也可能在 'disk resize' 命令后成功。

由于主设备的大小,您收到的错误已经包含系统数据库,如模型、sybsystemprocs、sybsystemdb、tempdb。

当你 运行

默认创建数据库 pubs5 = '10M'

它使用了默认设备(master)

所以最好使用 disk init 命令为 user/optional 数据库创建单独的设备。