logo资料库

金仓SQL语法详解.doc

第1页 / 共98页
第2页 / 共98页
第3页 / 共98页
第4页 / 共98页
第5页 / 共98页
第6页 / 共98页
第7页 / 共98页
第8页 / 共98页
资料共98页,剩余部分请下载后查看
第一章kingbase 语法
第一节词语的含义
第二节全局约束(说明)
一、伪列
二、运行kingbase的必备条件
第三节SQL语法
一、转义
(一)指定转义字符
二、表
(一)查看表
1.查看指定模式的表
2.查看表的详细信息
1)\d
2)查看表的存储类型
(二)创建表
1.创建简单表
2.创建复杂表
1)建表时不为约束命名
2)建表时手动为约束命名
3)建表时手动添加唯一性约束
4)建表时表加密和COMMENT
5)自增列
3.创建列存储表
1)查看表的存储类型
(三)查询表
(四)删除表
1.CASCADE
2.RESTRICT
(五)插入数据
(六)修改表
1.重命名
2.添加列
3.删除列
4.修改列
1)修改列的数据类型
2)修改列的名称
3)修改列的默认值(设置默认值)
4)修改列的是否为空
5)修改列是否为主键
①删掉主键
②增加主键
6)修改列是否唯一
5.添加默认值
6.添加外键约束
7.添加主键约束
8.添加CHECK约束
9.增加唯一约束
1)删除唯一约束
10.删除约束
11.清理表
12.重建索引(INDEX)
13.增加分区
1)增加列表分区
2)增加垂直分区
3)增加范围分区
(七)加密
1.表加密
2.列加密
(八)cast
三、列存储表
(一)创建列存储表
(二)查看表的存储类型
四、表空间
(一)创建表空间
(二)查看表空间的详细信息
(三)删除表空间
1.删除数据文件
(四)修改表空间
五、视图
(一)查看视图的结构和定义
(二)创建视图
1.创建可更新视图
2.WITH [ CASCADED/LOCAL ] CHECK OPTION
1)kingbase
2)ORACLE
3)mysql
(三)修改视图
(四)删除视图
六、INDEX
(一)创建索引
(二)查看索引
(三)删除索引
七、用户
(一)查看有哪些用户
(二)查看用户详细信息
1.用户是什么类型
(三)用户名的合法性判断
(四)创建用户
(五)删除用户
(六)修改用户
1.修改密码
2.设置允许登录时间
3.用户连接时间限制
4.用户闲置时间
5.设置用户有效期
6.查看用户有效期
7.最大连接数限制
8.设置密码过期时间
9.查看密码过期时间
10.设置允许登录ip
(七)切换用户
八、系统用户
(一)系统管理员
(二)审计员
(三)安全员
九、模式
(一)isql中设置默认模式
(二)获得所有模式
(三)创建模式
(四)删除模式
十、同义词
(一)创建同义词
(二)删除同义词
(三)查看同义词
十一、存储过程
(一)创建存储过程
1.定义变量
2.关系表达式
3.赋值语句
4.存储过程中输出
5.范例
6.范例
(二)查看存储过程
(三)删除存储过程
(四)运行存储过程
(五)在匿名块中调用
十二、函数
(一)创建函数
(二)查看函数
(三)调用函数
十三、策略
(一)创建策略
(二)查看所有策略
(三)删除策略
(四)修改策略
1.禁用策略
2.启用策略
十四、等级
(一)创建等级
(二)查看所有等级
十五、范围
十六、数据库
(一)查看有哪些数据库
(二)切换数据库
(三)创建数据库
(四)删除数据库
(五)修改数据库的所有者
十七、序列
(一)创建序列
(二)删除序列
十八、程序包
(一)创建包
(二)运行包
(三)删除包
十九、游标
(一)创建游标
二十、分区
(一)范围分区
1.创建范围分区
2.删除范围分区
(二)列表分区
1.创建列表分区
2.查看列表分区
3.查看指定表的分区
4.查看指定模式的分区
5.截断列表分区
6.删除列表分区
(三)垂直分区
二十一、数据文件
二十二、约束
(一)CHECK约束
(二)外键约束
(三)唯一约束
(四)主键约束
1.增加主键约束
2.删除主键约束
(五)自增列
二十三、数据库连接
(一)连接数据库
1.\c
2.jdbc
二十四、执行脚本
二十五、审计设置(audit)
(一)打开审计设置开关
(二)添加审计设置
1.存储过程
2.函数
3.序列
4.包
(三)移除审计设置
(四)查看审计的对象
二十六、数据库服务器
(一)查看服务器支持那些功能
1.是否支持列存储
(二)实例化数据库
(三)查看数据库版本
(四)安装数据库
1.命令行安装
1)windows
2)linux
2.图形界面安装
1)windows
2)linux
(五)启动数据库
1.启动参数
1)log_statement
2.多个参数
1)lc_messages
2)lc_time
3)启动时指定端口号
4)启动时指定监听ip
5)启动时指定时区:
6)启动时指定编码
3.启动方式有三种
(六)查看所有数据库
(七)获得数据库的oid
(八)配置
1.设置compatible_level
2.设置AUTOCOMMIT
二十七、事务
(一)查询当前事务隔离级别
第一节数据类型
二十八、timestamp
(一)设置时区:
1.启动数据库时设置时区
(二)查看时区
(三)mysql数据库timestamp类型
第四节jdbc
一、kingbase
二、oracle
三、mysql
第五节数据库标识符
一、数据库名称
二、用户名称
三、表名称
四、列名称
第二章SQL命令
第六节系统函数
第七节设置数据页面大小
第八节数据库编码
一、服务器编码
(一)查询编码
(二)设置编码
二、客户端编码
(一)查询编码
(二)设置编码
第九节数据库版本
一、服务器版本
二、客户端版本(isql)
第十节\d
第一节COMMENT
一、给表增加描述
二、给列增加描述
第二节显示相关性
第三节copy from/to
一、文件格式
二、copy ... from
三、copy ... to
四、EXPLAIN
第四节数据类型
三、标识符
第十一节函数
一、加密
(一)mysql加密
(二)kingbase加密
(三)解密
二、强制转型
三、常用函数
(一)to_char
(二)date_trunc
(三)encrypt
(四)decrypt_to_text
第五节工具
四、各工具名称
一、isql
(一)登录isql
第三章FAQ
第一节数据库
一、表空间(tablespace)与模式有什么区别和联系?
五、外键
(一)外键能否参考unique的列(此列不是主键)?外键只能参考主键吗?
(二)外键可以参考多个列吗?
二、能否同时更改表中列的名称和其数据类型?
六、对象
三、分区
1.一个表上是不是只能只有一个分区?
2.一个表上是不是只能有一种分区?
七、初始化
第四章数据库元数据(MATEDATA)
第一节数据库
第二节模式
第三节对象
一、表
第四节列
第五节KingbaseTable—>WebTable
一、KingbaseTable-->WebTable
(一)代码位置
(二)关键代码
(三)学习借鉴
(四)注意之处
(五)不明之处
二、KingbaseColumn—>WebColumn
(一)代码位置
(二)关键代码
(三)学习借鉴
(四)注意之处
(五)不明之处
三、KingbaseDataType—>WebDataType
(一)代码位置
(二)关键代码
(三)学习借鉴
(四)注意之处
(五)不明之处
第二章mysql
第三章bug
标签:2012020713213 第一章 kingbase 语法 第一节 词语的含义 英文 truncate vacuum rename analyse Range RangePartition sequence Vertical VerticalPartition tablespace encrypted SysFunc defaultIsSysFunction pk fk pkSchema PARTITION_RANGE PARTITION_LIST PARTITION_VERTICAL CONSTRAINT_CHECK CONSTRAINT_FORIGN CONSTRAINT_UNIQUE ARCHIVE_FILE LOGFILE DATAFILE partitionKey(s) Data warehouse highValues 中文 把…截短,截断(针对分区) 清理 重命名 分析 范围 范围分区 序列,表示第几个 垂直的 垂直分区 表空间 加密的 系统函数 默认值为系统函数 主键 外键 主键的模式 范围分区 列表分区 垂直分区 CHECK 约束 外键约束 唯一性约束 归档文件 日志文件 数据文件 分区参考的列 数据仓库 分区的上限值
第二节 全局约束(说明) 1 管理工具适配列存储和 OLAP 管理接口是一个事儿。 2 许可证就是 license。 3 OLAP 就是列存储。 一、 伪列 declare JDBC_CURS_152 cursor with hold for SELECT *, xmin, ctid FROM "PUBLIC"."A" 伪列有 xmin,ctid,rownum; 执行“打开表”操作的时候,要查询 xmin,ctid 两个伪列。 二、 运行 kingbase 的必备条件 第三节 SQL 语法 一、 转义 (一)指定转义字符 用法: ESCAPE '\'
ESCAPE 指定转义字符,转义字符不一定必须是“\” select * from student where name like 'h\_w' ESCAPE '\' ; select * from student where name like 'hc_w' ESCAPE 'c' ; 二、 表 (一)查看表 SELECT TABLENAME FROM SYS_TABLES where SCHEMANAME='PUBLIC'; SELECT * FROM SYS_TABLES; SELECT TABLENAME FROM SYS_TABLES;
包括系统表。 1.查看指定模式的表 SELECT TABLENAME FROM SYS_TABLES where SCHEMANAME='PUBLIC'; TABLEOWNER:表的属主名: SELECT SCHEMANAME='PUBLIC'; TABLENAME,TABLEOWNER FROM SYS_TABLES where SYS_TABLES 视图定义
获得表的 oid select oid from sys_class where relname='AAA'; 2.查看表的详细信息 1)\d 功能:查看当前数据库下的用户表 使用命令\d \d student; 注意:查看视图的详细信息也是用此命令 2)查看表的存储类型 关键字 列存储 DSM select relkind from sys_class where relname='STUDENT';(查看名称为 STUDENT 的存储类型,r 表示行 存储表;R 表示列存储表。) select relname from sys_class where relkind='r' or relkind='R';(查找所有模式的行存储表和列存储表)
select sys_namespace.oid , relname ,relkind from sys_class,sys_namespace where or relkind='R') and RELNAMESPACE=sys_namespace.oid and sys_namespace.nspname='PUBLIC' ;(查找 PUBLIC 模式下的所有表) ( relkind='r' (二)创建表 1.创建简单表 正确: CREATE TABLE "PUBLIC"."a%c" ( a DECIMAL (4,2) DEFAULT 2.555 NULL ) TABLESPACE "SYSTEM"; 错误: CREATE TABLE "PUBLIC".a%c ( a DECIMAL (4,2) DEFAULT 2.555 NULL ) TABLESPACE "SYSTEM"; 2.创建复杂表 int char,sid int table ,courseName create course(cid REFERENCES student(id)); create table course(cid int ,courseName char,sid int constraint conabc REFERENCES student(id));
1)建表时不为约束命名 create table course(cid int ,courseName char,sid int REFERENCES student(id)); 2)建表时手动为约束命名 create table course(cid int ,courseName char,sid int constraint conabc REFERENCES student(id)); 3)建表时手动添加唯一性约束 king10=# create table student (id int unique ,name char(10)); NOTICE: CREATE TABLE / UNIQUE 将建立隐式索引"STUDENT_ID_KEY"在表"STUDENT" 上 CREATE TABLE 4)建表时表加密和 COMMENT CREATE TABLE "PUBLIC".sd ( a NUMERIC (11,1) NOT NULL, PRIMARY KEY (a) USING INDEX TABLESPACE "SYSTEM" ) TABLESPACE "SYSTEM" ENCRYPTED; COMMENT ON COLUMN "PUBLIC".sd.a IS 'efds'; COMMENT ON TABLE "PUBLIC".sd IS 'fsdfs';
5)自增列 create table person(id int auto_increment primary key ,name varchar(20),sex bit); mysql 数 据库 kingbase mysql 要求自增列必须是主键或满足唯一性;kingbase 没有这个要求。 错误 create table person(id int identity(2,3) primary key ,name varchar(20),sex bit); 正确 正确 create table person(id int auto_increment ,name varchar(20),sex bit); create table person(id int auto_increment unique,name varchar(20),sex bit); create table person(id int auto_increment primary key ,name varchar(20),sex bit); CREATE TABLE "PUBLIC".course ( id INTEGER IDENTITY (2,3), name char(20) ) TABLESPACE "SYSTEM"; 注:2 是种子,3 是步长。 CREATE TABLE "PUBLIC".course ( id INTEGER IDENTITY (2,3),name char(20) ); 3.创建列存储表 关键字 列存储 列存储表 column DSM
分享到:
收藏