Java数据库编程---SQL语法基础

SQL语法基础

SQL(Structured Query Language,结构查询语句)是一个功能强大的数据库语言。SQL通常用于与数据库的通讯。ANSI(美国国家标准学会)声称,SQL是关系数据库管理系统的标准语言。


SQL分类

SQL功能强大,概括起来,它可以分成以下几组:

1):DML(Data Manipulation Language,数据操作语言)—用于检索或者修改数据;

2):DDL(Data Definition Language,数据定义语言)—用于定义数据的结构,如创建、修改或者删除数据库对象;

3):DCL(Data Coontrol Language,数据控制语言)—用于定义数据库用户的权限。


创建操作表

在MySQL数据库中良好的支持了标准的SQL语法支持,本章中主要使用的是DDL,下面分别对数据库的增加、修改、删除、查询语句进行介绍。为了操作方便,本部分使用以下的表完成全部操作。


创建表的语句为:

CREATE TABLE user(

id INT AUTO_INCREMENT PRIMARY KEY ,

name VARCHAR(30) NOT NULL ,

password  VARCHAR(32) NOT NULL ,

age INT NOT NULL ,

sex VARCHAR(2) DEFAULT '男' ,

birthday DATE 

) ;





增加数据

向表中增加数据,可以使用以下的语法:

INSERT INTO 表名称[(字段1,字段2,字段3,...,字段n)] VALUES(值1,值2,值3,...值n);

例子:向user表中插入数据:

INSERT INTO user(name,password,age,sex,birthday) VALUES(‘斜雨’,’www.baidu.com’,23,’男’,’2014-02-16);

INSERT INTO user(name,password,age,sex,birthday) VALUES(‘北风’,;www,qq.com’,20,’男’,’2014-02-18’);


查看表中的数据如下所示:


【表中id稍微改变】


删除数据

删除表中的数据,可以使用以下的语法:

DELETE FROM 表名称[删除条件];

在进行删除数据的时候,最好指定删除的条件,如果没有指定的话,则表示删除一张表中的全部数据,一般这个条件都是使用id表示。

例子:删除第二条记录

DELETE FROM user WHERE id=6;

删除之后,表中的结果如下图所示:



更新数据

当需要修改数据表中的某些记录时,就可以使用UPDATE语句,语句格式如下:

UPDATE 表名称 SET 字段1=值1,...字段n=值n[WHERE 更新条件];

与删除语句一样,修改的时候也需要指定修改条件,否则数据表的全部记录都将被修改。一般的条件都是使用id表示。

例子:

UPDATE user SET age=22 WHERE id=5;



简单查询语句

在SQL语法中,如果要查看表中的记录内容,可以通过查询语句完成,用户发出查询指令时会将全部的查询结果返回给用户。

简单查询语句格式

SELECT {*|column alias}

FROM 表名称  别名

[WHERE condition(s)];   --->设置查询条件

例子:查询全部数据

SELECT * FROM user;


对于数据库操作而言,查询时最复杂的了,查询分为以下几种:

1):简单查询;

2):限定查询:指定查询条件;

3):多表查询;

4):分组统计;

5):子查询;

6):交、并、补。


如果只需要查询特定的列,只需用特定的列名代替“*”就行。



如果现在要求查询出姓名或密码中包含字母“m”的用户。

此时就需要使用条件查询,使用模糊匹配。

SELECT * FROM user WHERE name LIKE ‘%m%’  OR password LIKE ‘%m%’; 



在开发中,还有一种情况:查询部分数据,这在系统的分页程序中经常使用。

假如下载的user表中的数据如下图所示:


我们可以用以下命令只用查询部分结果:

SELECT * FROM user WHERE name LIKE ‘%m%’ OR password LIKE ‘%m%’ LIMIT 0,5;


查询语句中LIMIT后面的0,5分别代表了从下标为0的数据开始之后的5个数据。【开始下标,长度】

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值