1、Truncate删除表中所有数据
truncate table USER immediate;
说明:Truncate是一个能够快速清空资料表内所有资料的SQL语法。并且能针对具有自动递增值的字段,做计数重置归零重新计算的作用;
TRUNCATE TABLE 比 DELETE 速度快,且使用的系统和事务日志资源少;
DELETE 语句每次删除一行,并在事务日志中为所删除的每行记录一项。TRUNCATE TABLE 通过释放存储表数据所用的数据页来删除数据,并且只在事务日志中记录页的释放。
2、Truncate删除表中所有数据
truncate table ofuser where USERNAME <> 'admin';
说明:"<>"符号是不等于的意思,即"!="
3、DB2下显示数据库中所有表
SELECT * from syscat.tables where tabschema = 'Star';
4、Mysql下显示数据库中所有表
show tables;
5、db2自动增长列
generated by default as identity
generated always as identity
区别是:
第一种方式在插入数据时允许手工指定自增字段的值,只要不重复即可,并且数据库会自动设置下一个值;
第二种方式则不允许指定,只能由数据库自动分配并插入。
举例子:
id INTEGER NOT NULL generated by default as identity (START WITH 1, INCREMENT BY 1)
定义id为int类型主键,并且不为空,自增长(从1开始,每次递增1)
6、DB2 单引号(')转义
比如:未转义之前,看下面的sql几个value?3.5个?
INSERT INTO snvcard VALUES('','male','Let's Go!');
转义后:单引号转义符为单引号(')
INSERT INTO snvcard VALUES('','male','Let''s Go!');