美文网首页java学习
NO.40 数据库原理和SQL(DDL、DML)

NO.40 数据库原理和SQL(DDL、DML)

作者: smallnumber | 来源:发表于2017-08-10 22:43 被阅读0次

保存数据的方式,经历了手工管理、文件管理等阶段,直至数据库管理阶段。

数据库(Database,简称DB)是按照数据结构来组织、存储和管理数据的仓库。

数据库管理系统(Database Management System,简称DBMS):管理数据库的软件。

主流数据库产品:

Oracle(Oracle)

DB2(IBM)

SQL Server(MS)

MySQL(Oracle)


SQL语句不区分大小写

SELECT SYSDATE FROM dual 获取当前系统时间

SQL语句分为:

DDL、DML、TCL、DQL、DCL

DDL:数据定义语言

DDL用于维护数据库对象使用

数据库对象:表,视图,索引,序列。

1)创建表

CREATE TABLE employee_xxx(

id NUMBER(4),

name VARCHAR2(20),

gender CHAR(1),

birth DATE,

salary NUMBER(6,2),

job VARCHAR2(30),

deptno NUMBER(2)

)

2)查看表结构

DESC employee_xxx

在数据库中,所有字段的默认值都是NULL,可以通过DEFAULT关键字指定一个默认值。

对于字符串而言,数据库中字面量是使用单引号括起来的,这一点需要与java区分记忆。并且,虽然SQL语句本身不区分大小写,但是字符串的值是区分大小写的。

CREATE TABLE employee(

id NUMBER(4),

name VARCHAR2(20),

gender CHAR(1) DEFAULT 'M',

birth DATE,

salary NUMBER(6,2) DEFAULT 3000,

job VARCHAR2(30),

deptno NUMBER(2)

)

DESC employee

NOT NULL约束:当一个字段被NOT NULL修饰后,该字段不允许为空。

CREATE TABLE employee(

id NUMBER(4),

name VARCHAR2(20) NOT NULL,

gender CHAR(1) DEFAULT 'M',

birth DATE,

salary NUMBER(6,2) DEFAULT 3000,

job VARCHAR2(30),

deptno NUMBER(2)

)

DESC employee

3)删除表:

DROP TABLE employee_xxx

4)修改表名:

RENAME old_name TO new_name

如:

RENAME employee TO myemp

5)修改表结构:

添加新的字段

ALTER TABLE myemp ADD (hiredate DATE)

DESC myemp

删除现有字段

ALTER TABLE myemp DROP(hiredate)

修改现有字段

可以修改字段的类型,长度,默认值,非空约束但是应当在表中没有数据的时候进行,否则尽量

不要修改类型,长度尽量只增不减。否则可能会修改失败。

将JOB字段的长度变为40:

ALTER TABLE myemp MODIFY(job VARCHAR2(40))

另外,TRUNCATE可以删除表数据,保留表结构。


DML语句:数据操作语言

DML是用来增,删,改表中数据。DML是伴随事务(TCL)控制的。

1)INSERT语句

INSERT语句用于向表中插入新数据

INSERT INTO myemp (id,name,job,deptno) VALUES (1,'jack','CLERK',10)

SELECT * FROM myemp

不指定字段则是全列插入,给定的值的类型与顺序要与表中字段一致。

INSERT INTO myemp VALUES (2,'rose','F',SYSDATE,5000,'CLERK',10)

插入日期类型数据时,可以使用数据库内置函数:

TO_DATE(char1,char2)

char1:一个具体日期的字符串

char2:指定的日期格式

INSERT INTO myemp (id,name,birth) VALUES (3,'bob',TO_DATE('1992-08-05','YYYY-MM-DD'))

SELECT * FROM myemp

2)UPDATE语句:修改表中数据

将id为2的员工性别改为"M",部门改为"20"

UPDATE myemp SET gender='M',deptno=20 WHERE id=2

3)DELETE语句:删除数据

DELETE FROM myemp WHERE salary<5000

UPDATE语句与DELETE语句都需要使用WHERE添加过滤条件,否则是对表中所有数据的操作。

SELECT * FROM myemp

相关文章

  • NO.40 数据库原理和SQL(DDL、DML)

    保存数据的方式,经历了手工管理、文件管理等阶段,直至数据库管理阶段。 数据库(Database,简称DB)是按照数...

  • SQLite 语法初级教程

    SQL DML 和 DDL DML:数据库操作语言 SELECT - 从数据库表中获取数据UPDATE - 更新数...

  • SQL DML 和 DDL 查询和更新指令构成了 SQL 的 DML 部分: SQL 的数据定义语言 (DDL) ...

  • SQL语法总结

    SQL DML 和 DDL 数据操作语言 (DML) (基础篇) SELECT - 从数据库表中获取数据SELEC...

  • sql语法

    SQL DML 和 DDL 数据操作语言 (DML) 和 数据定义语言 (DDL)。SQL (结构化查询语言)是用...

  • 重新学sql 基础语法笔记 (其实大部分都是co的)

    SQL DML 和 DDL 可以把 SQL 分为两个部分:数据操作语言 (DML) 和 数据定义语言 (DDL)。...

  • SQL-基础

    SQL对大小写不敏感。 SQL分为DML和DDL两部分。 DML: SELECT- 从数据库表中获取数据 UPDA...

  • SQL

    SQL 语句 SQL DML 和 DDL 可以把 SQL 分为两个部分:数据操作语言 (DML) 和 数据定义语言...

  • 2016/12/26

    技术 graphviz工具及其原理 SQL四种语言:DDL,DML,DCL,TCL weex-v0.9.4 SQL...

  • DQL、DML、DDL、DCL的概念与区别

    DQL、DML、DDL、DCL的概念与区别 SQL(Structure Query Language)语言是数据库...

网友评论

    本文标题:NO.40 数据库原理和SQL(DDL、DML)

    本文链接:https://www.haomeiwen.com/subject/brdcrxtx.html