【数据库知识】
主键、唯一键包含索引
主键包含唯一键、索引、非空
唯一键包含索引,可空或非空
数据库需要与执行服务的在同个目录下
唯一键
create table app.tyu
(
primarykey int primary key,
com_no int not null unique,
name varchar(32) default 'jack'
)
自动加值
GENERATED ALWAYS AS IDENTITY
create table svse
(
uid int generated by default as identity,
Uname varchar(5) ,
Upass varchar(10),
constraint P_KEY_1 primary key (uid)
)
查询所有索引
select * from sys.sysconglomerates, sys.SYSCONSTRAINTS where sys.SYSCONGLOMERATES.TABLEID = sys.SYSCONGLOMERATES.TABLEID
创建索引
create index 索引名 on 表名(字段1, 字段2)
删除索引
drop index 索引名
在创建整数时,若要控制整数的位数,可使用decimal来表示 如int(2)可表示为decimal(2,0) 一般情况下 可以选用smallint、int、bigint
添加内建用户名和密码(Apache Derby的默认数据库用户名和密码均为APP)
//首先指定为内建用户名和密码
call syscs_util.syscs_set_database_property('derby.authentication.provider','builtin');
call syscs_util.syscs_set_database_property('derby.connection.requireAuthentication','true');
//这里创建一个用户名为jack 密码为123456的访问用户(对应到数据库)
call syscs_util.syscs_set_database_property('derby.user.jack','123456');
//设置全局访问用户为jack
call syscs_util.syscs_set_database_property('derby.database.fullAccessUsers','jack');
//全局默认连接方式为未连接
call syscs_util.syscs_set_database_property('derby.database.defaultConnectionMode',noAccess');
在ij下执行以上语句,执行完毕后,重新使用ij登录时,就需要输入用户名和密码了(切记Derby的数据库服务器需要重启)
查看当前连接
show connections;
查看系统时间
values current_timestamp; e.g:2012-07-27 15:59:36.281
建立网络数据库连接
C:\Program Files\Sun\JavaDB\bin>networkservercontrol.bat start
修改网络数据库连接的端口
C:\Program Files\Sun\JavaDB\bin>networkservercontrol.bat start -p 3607
修改网络数据库连接的IP与端口
C:\Program Files\Sun\JavaDB\bin>networkservercontrol.bat start -h 127.0.0.1 -p 3607
客户端连接服务端的数据库
connect 'jdbc:derby://127.0.0.1:3607/testDB;create=true;user=jack;password=123456';
1,建立数据库连接 名称为testdb (名称不能为user)
connect 'jdbc:derby:testdb;create=true'; //若无该数据库则创建
connect 'jdbc:derby:myderby'; //若无该数据库不创建
Connection refused: connect。 说明连接数据库失败 可能是连接的URL输入有误或无法访问
2,创建表 名称为usertable 包含id(int)与name(varchar)两个字段
create table usertable(id int primary key, name varchar(20));
3,对该表插入数据
insert into usertable values(1, 'jack');
4,查询该表的数据
select * from usertable;
5,删除该表的数据
delete from usertable where id=1;
6,修改该表的数据
update usertable set name='lucy' where id=1;
7,分页查询表数据
select * from (select row_number() over() as rownum, usertable.* from usertable) as tmp where rownum>=2 and rownum<=5; //查询第2-第5条记录的所有字段的值
select * from (select row_number() over() as rownum, usertable.name from usertable) as tmp where rownum>=2 and rownum<=5; //查询第2-第5条记录的name字段的值
8,查看该表的索引
show indexes from usertable;
9,添加表字段属性
alter table usertable add age int not null default 0; //添加字段age 该字段属性为int型 非空 默认为0 age前可加或不加column
10,修改表字段属性
alter table usertable alter name set data type varchar(60); //修改字段name的字符长度为60
alter table usertable alter name not null; //修改字段name为非空 (前提是该表的name字段值不能为空)
alter table usertable alter name default '0'; //修改字段name的默认值
ALTER TABLE CITIES ADD CONSTRAINT COUNTRY_FK Foreign Key (COUNTRY) REFERENCES COUNTRIES (COUNTRY);
11,删除表字段属性
alter table usertable drop age; //删除age表字段 age前可加或不加column
12,删除该表
drop table usertable;
13,查看所有表
show tables;
14,查询数据去重
select distinct name from usertable;
15,数据降序排列
select * from usertable order by id desc;
16,重命名表名
rename table usertable to usertb;
17,查看表结构
describe usertable;
18,断开数据库连接
disconnect;
19,退出ij
exit;
其他:
SHOW SCHEMAS; -- 列出当前数据库中的所有模式
SHOW CONNECTIONS; -- 列出所有连接
ELAPSEDTIME [ ON | OFF ]; -- 为 ij 设置耗用时间模式
run 'C:\test\testdb.sql'; 通过run命令来执行sql文件
【Derby的聚合函数】
AVG、COUNT、MAX、MIN、SUM
【Derby的数学函数】
ABS、MOD、SQRT
【Derby的日期和时间函数】
...
【Derby的字符串函数】
...
详情参考http://www.ibm.com/developerworks/cn/opensource/os-ad-trifecta6/index.html
【Derby的数据类型】
BIGINT 返回给定字符串或数字的 64-bit 整数常量。
CHAR 返回给定值的固定长度的字符表示,最大长度为 254 个字节,该给定值必须是内置的 Apache Derby 类型之一。
DATE 返回输入值的日期表示。
DOUBLE 返回输入数字或字符串的双精度浮点表示。
INTEGER 返回给定字符串、日期、时间或数字的整数常量。
SMALLINT 返回给定字符串或数字的小整数常量。
TIME 返回输入值的时间表示。
TIMESTAMP 返回输入值的时间戳表示。
VARCHAR 返回给定日期、时间、时间戳或字符串值的长度可变的字符表示,最大长度为 32,672 个字节。
分享到:
相关推荐
Derby数据库Eclipse插件是开发人员在Eclipse集成开发环境中使用Apache Derby数据库时的一种便捷工具。Apache Derby,也称为JavaDB,是一个开源的关系型数据库管理系统,完全用Java编写,支持ACID事务、SQL标准以及多...
Derby数据库是一款轻量级的关系型数据库管理系统,它属于Apache软件基金会,被广泛应用于嵌入式系统和小型项目。在某些情况下,用户可能需要将Derby数据库的数据转换为SQL格式,或者是迁移到如DB2这样的其他数据库...
Derby数据库,全称为Apache Derby,是Java平台上的一款开源、免费的关系型数据库管理系统,由IBM贡献给Apache软件基金会。作为一款轻量级数据库,Derby以其小巧、高效、易用的特点,深受开发者喜爱,尤其适合于小型...
sqLeonardo是Derby数据库的图形用户界面(GUI)工具,它允许用户通过一个直观的界面来执行SQL查询、浏览数据、管理表和索引、创建和修改数据库结构等。这个工具特别适合那些习惯于使用可视化界面而非命令行操作的...
Derby数据库支持标准的SQL语法,包括SQL:2003和部分SQL:2008特性。它还提供了ACID(原子性、一致性、隔离性和持久性)事务特性,确保了数据的一致性和可靠性。同时,Derby具备行级锁定,以减少锁定带来的性能影响。 ...
Derby Plugin和Derby UI Plugin是专门为Eclipse集成开发环境设计的两个插件,它们极大地扩展了Eclipse在处理Apache Derby数据库方面的功能。Apache Derby是一款轻量级的关系型数据库管理系统,由Java编写,完全符合...
"db-derby-10.11"指的是Derby数据库的一个特定版本,即10.11.1.1。这个版本可能包含了若干重要的改进、修复和新特性。在Java开发环境中,使用这样的版本号可以帮助开发者精确地追踪和管理他们所依赖的库。 在提供的...
Derby UI for Eclipse是一款专为Eclipse集成开发环境设计的插件,旨在提供对Apache Derby数据库的用户界面支持。这款插件使得Eclipse用户能够更方便地管理和操作Derby数据库,提升开发效率和数据库管理体验。 ...
标题"derby辅助工具SQuirreL SQL Client的使用"指出我们要探讨的主题是关于Apache Derby数据库管理和SQuirreL SQL Client的使用。Apache Derby是一款开源的关系型数据库管理系统,常被嵌入到Java应用程序中。而...
Apache Derby 10.8版本的手册集提供了丰富的文档资源,涵盖了从Derby的入门、参考、开发者指南、工具和实用程序、性能调优、服务器和管理等多方面的知识,旨在帮助用户和开发人员更好地理解和使用Derby数据库。...
1. Java基础:该项目基于Java的基础语法,包括类、对象、封装、继承和多态等面向对象特性。理解这些概念是构建任何Java应用的基础。在学生管理系统中,每个学生可以被看作一个对象,具有姓名、学号、成绩等属性,...
Apache Derby 基于 JDBC API,并且完全实现了 SQL 标准,使得开发者可以使用熟悉的 SQL 语法来操作数据库。它的核心设计理念是轻量级和嵌入式,这意味着 Derby 可以直接打包在应用程序的 JAR 文件中,无需独立服务器...
不过,由于Derby数据库的具体表结构并不清晰,这需要对Derby的SQL语法有一定了解,并且找到确切需要清理的表。 2. **自定义实现清理表**: 可以参考`glassfish\lib\install\databases`目录下的SQL脚本来创建自己的...
Derby数据库具有良好的移植性,能够在各种平台上使用,并且因为其轻量级的特性,经常被集成在各种Java应用程序中。 根据提供的文件内容,这份手册主要介绍了Apache Derby数据库操作中使用到的工具(Tools)和实用...
Java 编写的数据库 Derby,全称为 Apache Derby,是一款开源、免费的关系型数据库管理系统,由IBM贡献给Apache软件基金会并作为顶级项目进行维护。Derby基于Java语言开发,因此具有跨平台性,可以在任何支持Java的...
紧接着是文档的目的,明确地指出了这份手册是作为Derby SQL语法的官方说明,旨在使用户能够独立地操作Derby数据库,不需要向他人寻求帮助。 **受众**: 文档会定义它的目标受众,比如是面向数据库管理员、开发人员...
它支持多种数据库系统,包括但不限于MySQL、Oracle、PostgreSQL、SQL Server以及我们这里特别提到的Derby数据库。DbVisualizer以其用户友好的界面和丰富的功能集而受到广泛赞誉,是数据库管理员和开发者的得力助手。...
1. Getting Started with Derby for 10.7版本:这个指南旨在帮助新用户快速了解如何安装、配置并运行Apache Derby数据库。它通常会包含基础的数据库操作示例,例如如何创建数据库、表,以及执行简单的查询和更新操作...