DB2创建表字段长度过大时错误

1错误

DB2 SQL Error: SQLCODE=-286, SQLSTATE=42727, SQLERRMC=8192; DRIVER=4.19.49

2错误原因

我是创建表的时候出错的,原因就是:创建的表某个字段长度太长,比如说 有好几个字段 varchar(2000) 等。导致表空间不够用

因为表空间的 pagesize 是创建数据库的时候创建的,不能修改,也就应该这个导致我表空间不够用(表空间页数多也没用,我试过了)。

3解决

重新创建数据库,删除数据不懂可以看我的这篇文章《drop database xx 傻逼玩意》

创建数据库,格式语句如下:

java 复制代码
CREATE DATABASE exampIe AUTOMATIC STORAGE YES // 自动存储 
ON 'D:\' DBPATH ON'D:' // 指定数据库控制文件的存储路径 
ALIAS example // 数据库别名 
USING CODESET UTF-8 TERRITORY CN // 指定编码集,和地区
COLLATE USING SYSTEM // 指定数据库处理字符串的排序顺序单位为字节 
WITH'样本数据库' // 注释
PAGESIZE 4096 // 默认表空间的大小,

我选了一下命令执行

sql 复制代码
create database dbname automatic storage yes  using codeset UTF-8 territory CN pagesize 8192; 

如果你需要的表空间还是很大,可以 16384

sql 复制代码
create database dbname automatic storage yes  using codeset UTF-8 territory CN pagesize 16384;

* 创建数据库之后的一些操作,提供参考(相关)

1) 创建用户(windows下)

powershell 复制代码
net user [用户名] [密码] /add

将用户添加到管理员组

powershell 复制代码
net localgroup administrators [用户名] /add

设置权限

链接数据库

powershell 复制代码
connect to dbname

配置SCHEMA权限

powershell 复制代码
GRANT DBADM ON DATABASE to user [用户名]  // 给 用户创建SCHEMA的权限

创建SCHEMA

powershell 复制代码
create schema [schema名称]//  创建 schema

给用户设置一些权限

powershell 复制代码
GRANT BINDADD  ON DATABASE TO [用户名]
GRANT CONNECT  ON DATABASE TO [用户名]
GRANT CREATETAB  ON DATABASE TO [用户名]
GRANT LOAD  ON DATABASE TO [用户名]
相关推荐
MonkeyKing_sunyuhua35 分钟前
ubuntu22.04 docker-compose安装postgresql数据库
数据库·docker·postgresql
天郁青35 分钟前
数据库交互的本地项目:后台管理系统
数据库·交互
马剑威(威哥爱编程)41 分钟前
MongoDB面试专题33道解析
数据库·mongodb·面试
小光学长1 小时前
基于vue框架的的流浪宠物救助系统25128(程序+源码+数据库+调试部署+开发环境)系统界面在最后面。
数据库·vue.js·宠物
零炻大礼包2 小时前
【SQL server】数据库远程连接配置
数据库
zmgst2 小时前
canal1.1.7使用canal-adapter进行mysql同步数据
java·数据库·mysql
随心............2 小时前
python操作MySQL以及SQL综合案例
数据库·mysql
€☞扫地僧☜€2 小时前
docker 拉取MySQL8.0镜像以及安装
运维·数据库·docker·容器
CopyDragon2 小时前
设置域名跨越访问
数据库·sqlite
xjjeffery2 小时前
MySQL 基础
数据库·mysql