java关系数据库基础的,数据库表数据删除两种语法的区别是什么

java关系数据库基础的,数据库表数据删除两种语法的区别是什么,第1张

数据库删除语句的分别介绍:

Delete:用于删除表中的行(注:可以删除某一行;也可以在不删除表的情况下(即意味着表的结构、属性、索引完整)删除所有行)

语法:删除某一行:Delete

From

表名称

Where

列名称=值

删除所有行:

Delete

From

表名称

Delete

From

表名称

Drop:用于删除表(注:将表的结构、属性、索引也会被删除。)

语法:Drop

Table

表名称

Truncate:用于删除表内的数据(注:仅删除表内的数据,不删除表本身,相当于Delete语句不写Where子句一样)

语法:Truncate

Table

表名称

数据库中删除语句的相同点和不同点的比较:

相同点:

1truncate和不带where子句的delete,以及drop都能删除表内的数据

2truncate和delete只删除表数据保留表结构

不同点:

1

truncate

table

tablename

删除表内容释放表空间保留表结构(即:只删除表内的数据,不删除表本身。相当于Delete语句不写where子句一样),不使用事务处理即和事务无关

truncate

语句缺省情况下将空间释放到

minextents个

extent,

除非使用reuse

storage;truncate

会将高水线复位(回到最开始)。

2

delete

table

tablename

[where子句]

delete属于数据 *** 作语言(DML),不能自动提交事务,需commit提交

这个 *** 作会放到

rollback

segement

中,事务提交之后才生效;

如果有相应的

trigger,执行的时候将被触发。

delete

语句不影响表所占用的

extent,高水线(high

watermark)保持原位置不动

3

drop

table

tablename

drop属于数据定义语言(DDL)可以自动提交事务;

drop

语句将删除表的结构被依赖的约束(constrain)、触发器(trigger)、索引(index)删除表数据同时删除表结构;

依赖于该表的存储过程/函数将保留,但是变为

invalid

状态。

drop

语句将表所占用的空间全部释放。

删除数据的速度,一般来说:

drop>

truncate

>

delete

使用场合:

当你不再需要该表时,

drop;

当你仍要保留该表,但要删除所有记录时,

truncate;

当你要删除部分记录时(always

with

a

where

clause),

delete

注意:

对于有主外键关系的表,不能使用truncate而应该使用不带where子句的delete语句,由于truncate不记录在日志中,不能够激活触发器

1、登陆sqlserver2012,打开数据库,右击要插入数据的表。

2、右击表名mytable,在菜单中选择“编辑前200行”。

3、这时会打开mytable的编辑窗口,在这个窗口里可以编辑前200行数据。

4、按字段类型输入数据,自动生成的数据不必输入,比如addTime列是自动生成的,就不需要数据数据。

5、当输入完lisi后,按回车到下一行输入。可以看到刚才输入的那一行已经变成灰色。

6、鼠标定位到第三行的第一列继续按如上方式输入。

7、输入结束后,按回车键,如果这个时候不再插入数据,则可以点击执行按钮。

DB 提供了关连式资料库的查询语言 SQL (Structured Query Language) 是一种非常口语化 既易学又易懂的语法 此一语言几乎是每个资料库系统都必须提供的 用以表示关连式的 *** 作 包含了资料的定义(DDL)以及资料的处理(DML) SQL原来拼成SEQUEL 这语言的原型以 系统 R 的名字在 IBM 圣荷西实验室完成 经过IBM内部及其他的许多使用性及效率测试 其结果相当令人满意 并决定在系统R 的技术基础发展出来 IBM 的产品 而且美国国家标准学会(ANSI)及国际标准化组织(ISO)在 遵循一个几乎是以 IBM SQL 为基础的标准关连式资料语言定义 一 资料定义 DDL(Data Definition Language) 资料定语言是指对资料的格式和形态下定义的语言 他是每个资料库要建立时候时首先要面对的 举凡资料分哪些表格关系 表格内的有什么栏位主键 表格和表格之间互相参考的关系等等 都是在开始的时候所必须规划好的 1 建表格 CREATE TABLE table_name( column DATATYPE [NOT NULL] [NOT NULL PRIMARY KEY] column DATATYPE [NOT NULL] )说明DATATYPE 是资料的格式 详见表 NUT NULL 可不可以允许资料有空的(尚未有资料填入) PRIMARY KEY 是本表的主键 2 更改表格 ALTER TABLE table_name ADD COLUMN column_name DATATYPE 说明 增加一个栏位(没有删除某个栏位的语法 ALTER TABLE table_nameADD PRIMARY KEY (column_name)说明 更改表得的定义把某个栏位设为主键 ALTER TABLE table_nameDROP PRIMARY KEY (column_name)说明 把主键的定义删除 3 建立索引 CREATE INDEX index_name ON table_name (column_name)说明 对某个表格的栏位建立索引以增加查询时的速度 4 删除 DROP table_nameDROP index_name 二 的资料形态 DATATYPEs allint 位元的整数 interger 位元的整数 decimal(p s)p 精确值和 s 大小的十进位整数 精确值p是指全部有几个数(digits)大小值 s是指小数点后有几位数 如果没有特别指定 则系统会设为 p= ; s= float 位元的实数 double 位元的实数 char(n)n 长度的字串 n不能超过 varchar(n)长度不固定且其最大长度为 n 的字串 n不能超过 graphic(n)和 char(n) 一样 不过其单位是两个字元 double bytes n不能超过 这个形态是为了支援两个字元长度的字体 例如中文字 vargraphic(n)可变长度且其最大长度为 n 的双字元字串 n不能超过 date包含了 年份 月份 日期 time包含了 小时 分钟 秒 timestamp包含了 年 月 日 时 分 秒 千分之一秒 三 资料 *** 作 DML (Data Manipulation Language) 资料定义好之后接下来的就是资料的 *** 作 资料的 *** 作不外乎增加资料(insert) 查询资料(query) 更改资料(update) 删除资料(delete)四种模式 以下分 别介绍他们的语法 1 增加资料 INSERT INTO table_name (column column )VALUES ( value value )说明 若没有指定column 系统则会按表格内的栏位顺序填入资料 栏位的资料形态和所填入的资料必须吻合 table_name 也可以是景观 view_name INSERT INTO table_name (column column )SELECT columnx columny FROM another_table说明 也可以经过一个子查询(subquery)把别的表格的资料填入 2 查询资料 基本查询SELECT column columns FROM table_name说明 把table_name 的特定栏位资料全部列出来 SELECT FROM table_name WHERE column = xxx [AND column > yyy] [OR column <> zzz] 说明 表示全部的栏位都列出来 WHERE 之后是接条件式 把符合条件的资料列出来 SELECT column column FROM table_name ORDER BY column [DESC]说明 ORDER BY 是指定以某个栏位做排序 [DESC]是指从大到小排列 若没有指明 则是从小到大 排列组合查询 组合查询是指所查询得资料来源并不只有单一的表格 而是联合一个以上的表格才能够得到结果的 SELECT FROM table table WHERE lum =lumn 说明 查询两个表格中其中 column 值相同的资料 当然两个表格相互比较的栏位 其资料形态必须相同 一个复杂的查询其动用到的表格可能会很多个 整合性的查询 SELECT COUNT ()FROM table_nameWHERE column_name = xxx说明 查询符合条件的资料共有几笔 SELECT SUM(column )FROM table_name说明 计算出总和 所选的栏位必须是可数的数字形态 除此以外还有 AVG() 是计算平均 MAX() MIN()计算最大最小值的整合性查询 SELECT column AVG(column )FROM table_nameGROUP BY column HAVING AVG(column ) > xxx说明 GROUP BY: 以column 为一组计算 column 的平均值必须和 AVG SUM等整合性查询的关键字一起使用 HAVING : 必须和 GROUP BY 一起使用作为整合性的限制 复合性的查询SELECT FROM table_name WHERE EXISTS (SELECT FROM table_name WHERE conditions )说明 WHERE 的 conditions 可以是另外一个的 query EXISTS 在此是指存在与否 SELECT FROM table_name WHERE column IN (SELECT column FROM table_name WHERE conditions )说明 IN 后面接的是一个集合 表示column 存在集合里面 SELECT 出来的资料形态必须符合 column 其他查询SELECT FROM table_name WHERE column LIKE x% 说明 LIKE 必须和后面的 x% 相呼应表示以 x为开头的字串 SELECT FROM table_name WHERE column IN ( xxx yyy )说明 IN 后面接的是一个集合 表示column 存在集合里面 SELECT FROM table_name WHERE column BEEEN xx AND yy说明 BEEEN 表示 column 的值介于 xx 和 yy 之间 3 更改资料 UPDATE table_nameSET column = xxx WHERE conditoins说明 更改某个栏位设定其值为 xxx nditions 是所要符合的条件 若没有 WHERE 则整个 table 的那个栏位都会全部被更改 4 删除资料 DELETE FROM table_nameWHERE conditions说明 删除符合条件的资料 说明 关于WHERE条件后面如果包含有日期的比较 不同数据库有不同的表达式 具体如下 ( )如果是ACCESS数据库 则为 WHERE mydate># # ( )如果是ORACLE数据库 则为 WHERE mydate>cast( as date) 或 WHERE mydate>to_date( yyyy mm dd )在Delphi中写成 thedate= ;query SQL add( select from abc where mydate>cast( + +thedate+ + as date) );如果比较日期时间型 则为 WHERE mydatetime>to_date( : : yyyy mm dd hh :mi:ss ) lishixinzhi/Article/program/SQLServer/201311/21970

以上就是关于java关系数据库基础的,数据库表数据删除两种语法的区别是什么全部的内容,包括:java关系数据库基础的,数据库表数据删除两种语法的区别是什么、求sql数据库的各种语法、IBM DB2数据库的SQL语法参考手册等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10146322.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存