`
xiaxia0402
  • 浏览: 19559 次
  • 性别: Icon_minigender_2
  • 来自: 长沙
文章分类
社区版块
存档分类
最新评论

web学习总结之sql语句与JDBC

 
阅读更多

一、mysql基本语句

这里主要是对sql基本语句的一个复习总结,不过还是首先比较一下几种常见的数据库:

SQL ServerDB2Oracle主要应用于大型应用系统,也就是企业级的应用开发,他们对于大数据量的存取、安全性等各方面有着独到的优势,但相对来说,这些数据库都属于中大型软件,对系统的要求比较高,费用方面也比较昂贵;AccessMySql这类数据库则属于轻量级,他们不需要很高的系统硬件配置,而且部署比较方便,但是他们的缺点是只能进行一些小数据量的存取,而且安全性不高。所以对于初学者的我们,目前多数选择方便快速的mysql数据库来学习, Sql语句主要可以分为以下三类,每一大类下列出了其中主要的sql语句。

1、  DMLData Manipulation Language,数据操作语言)——用于检索或者修改数据;

SELECT - 从数据库表中获取数据

UPDATE - 更新数据库表中的数据

DELETE - 从数据库表中删除数据

INSERT INTO - 向数据库表中插入数据

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

CREATE DATABASE - 创建新数据库

ALTER DATABASE - 修改数据库

CREATE TABLE - 创建新表

ALTER TABLE - 变更(改变)数据库表

DROP TABLE - 删除表

CREATE INDEX - 创建索引(搜索键)

DROP INDEX - 删除索引

3、  DCLData Control Language,数据控制语言)——用于定义数据库用户的权限。

 

 

了解了sql语句的基本分类后就是掌握其基本的语法结构,以下是学习过程中应用到的一些增删查改以及查询数据的操作语句:

 

创建数据库

Create database lesson1;

创建表

create table userinfo(

 id int not null auto_increment,

 name varchar(20) not null,

 pwd varchar(20),

 age int ,

 primary key(id));

 

create table bloginfo(

 id int not null auto_increment primary key,

 id_user int not null,

title varchar(20));

指定数据库/表的编码

Create database mysql defaule character set utf8;

增加表字段

 alter table userinfo add city varchar(20);

删除表字段

alter table userinfo drop column city;

创建主键(主键的作用及意义,将字段设为主键会出现的问题)

alter table userinfo add primary key(id);

创建外键(外键的作用->业务实体中的一对多,一对一,多对多)

Alter table bloginfo add constraint fk_bloginfo_uid foreign key fk_bloginfo_uid(id_user)

References userinfo(id);

唯一性约束

Alter table userinfo add unique index index_unique using hash(name);

插入一行完整的数据

Insert into userinfo(name,pwd,age)values(‘a’,’123’,20);

插入一行中的部分数据

Insert into userinfo(name,pwd)values(‘b’,’123’);

插入一个查询结果

Insert into userinfo(name,pwd,age)select name,pwd,age from test;

按条件更新记录

Update userinfo set name=’abc’ where id=1;

删除记录

Delete from userinfo where id=1;

清空表(truncate table user)

Truncate table userinfo;

开启事务

start transaction;

提交事务

commit;

回滚事务

rollback;

简单查询

Select * from userinfo;

查询排序

Select * from userinfo order by id desc;

按条件查询

Select * from userinfo where age=20;

非空查询

Select * from userinfo where age is not null;

In查询

Select * from userinfo where age in(21,23);

模糊查询

Select * from userinfo where name like’%et_’;

and/or 查询

select * from userinfo where age>10 and age<21 or name = ‘a’;

别名

Select u.id,u.name as ‘别名’ from userinfo u;

聚集查询(count,sum,avg,max,min,distinct)

Select avg(age) from userinfo;

Select count(*) from userinfo;

Select sum(age) as num from userinfo;

Select max(age) from userinfo;

Select min(age) from userinfo;

Select count(distinct(age)) from userinfo;

分组查询

Select count(*) as ct,id_user from bloginfo group by ct desc;

子查询

Select * from bloginfo where id_user in (

Select id from userinfo where age=32);

外连结查询

Select u.id,u.name,b.title from bloginfo b rifht join userinfo u on u.id = b.id_user;

数据库的导入与导出

mysqldump -u root -p student_manager>c:\lesson1.sql

source c:lesson1.sql;

 

二、JDBC简介:

在数据库的学习之后,需要考虑的问题就出现了,如何在java程序中操作数据库,多种不同的数据库是否操作方式也不同呢,那又有没有简单的方式来帮我们解决这些问题呢?JDBC就帮我们解决这些问题,JDBCJava Database ConnectivityJava数据库连接),提供了一种与平台无关的,用于执行SQL语句的标准Java API,可以方便的实现多种数据库的统一操作,它由一组用Java语言编写的类和接口组成。

在实际开发中可以直接使用JDBC进行各个数据库的连接与操作,而且可以方便的向数据库中发送各种SQL命令。在JDBC中提供的是一套标准的接口,这样,各个支持JAVA的数据库生产商只要按照此接口提供相应的实现,则就都可以使用JDBC进行操作。极大的体现了JAVA的可移植性的设计思想。

    JDBC操作的基本步骤如下:

1、加载数据库驱动程序:各个数据库都会提供JDBC的驱动程序开发包,直接把JDBC操作所需要的开发包,直接配置到classpath路径即可。在程序中的加载语句以mysql为例:

// 装载对应数据库的驱动类

                 Class.forName("com.mysql.jdbc.Driver ");

2、连接数据库:根据各个数据库的不同,连接的地址也不同,这里使用的是mysql数据库,连结是先制定数据库的URL

//数据库连结串

 String dbURL=" jdbc:mysql://localhost:3306/lesson1";

其中lesson1是所要操作的库名,用户在取得连接之后才可以对数据库进行查询或更新的操作。

取得连结对象:

// 创建连结,传入连结串,帐号,密码

Connection conn =DriverManager.getConnection(dbURL, "root","netjava");

 

 

 

3、使用语句进行数据库操作:数据库操作分为更新和查询两种操作,除了可以使用标准的SQL语句之外,对于各个数据库也可以使用其自己提供的各种命令。

4、关闭数据库连接:数据库操作完毕之后需要关闭连接以释放资源。

 

连接好后对数据库的操作中就可以用到很多Connection 接口的方法如预编译PreparedStatement ,事务管理,批处理等等,也是之后有待熟悉的地方。

分享到:
评论

相关推荐

    P6SPY JDBC拦截打印sql语句 非常好的调试工具

    P6spy是一个JDBC Driver的包装工具,p6spy通过对JDBC Driver的封装以达到对SQL语句的监听和分析,以达到各种目的。 p6spy的安装步骤: 1. 下载p6spy的安装包 2. 把p6spy的jar包放到Classpath中,如果是WEB App...

    WEB08-JDBC.rar

    3,能够使用SQL语句操作数据库 4,能够使用SQL语句操作表结构 5,能够使用SQL语句进行数据的添加修改和删除的操作 6,能够使用SQL语句查询表结构中的数据 7,能够使用SQL语句进行查询条件过滤 8,能够使用SQL语句...

    mvc servlet jdbc web框架

    经典的web mvc 开发模式, 使用了servlet 拼sql语句的模式,可以学习jsp,servlet 为日后学习新的web框架打下基础

    JDBC 3.0数据库开发与设计

    2.1.1 SQL数据库数据库基本操作语句 2.1.2 Microsoft SQL Server数据库设计及ODBC配置 2.1.3 Oracle 数据库的基本说明及其使用简介 2.1.4 MySQL的安装及使用简介 2.2 使用JDBC连接数据库 2.2.1 SQLJ基本知识 ...

    Java中JDBC概述的资料,帮助初学者掌握何为JDBC

    JDBC是用Java语言向数据库发送SQL语句 2、JDBC原理 早期SUN公司的天才们想编写一套可以连接天下所有数据库的API,但是当他们刚刚开始时就发现 这是不可完成的任务,因为各个厂商的数据库服务器差异太大了。后来SUN...

    JDBC-SQL-Gateway:使用 JDBC、MySQL、JSP 和 Servlet 的 SQL 网关

    SQL网关是一个允许使用基于 Web 的界面来执行任何类型的 SQL 语句的应用程序。 这使得访问或修改数据库中的数据变得容易。 此外,如果 SQL 语句的语法不正确,此应用程序会显示一条错误消息。 所以我们可以编辑并...

    java web课设基于web的图书管理系统源码+说明文档+数据库sql语句

    这个web项目使用Java Servlet和JDBC实现,具有登录注册功能以及图书管理功能,适合作为课程设计的项目。下面我会更详细地描述这些功能。 1. 登录注册功能: - 用户可以通过注册页面创建新账户,需填写用户名、密码...

    jiql 允许你的应用在GAE上使用SQL语句

    jiql - (允许你的应用在GAE上使用SQL语句) jiql是在JAVA GAE上访问Google Datastore的JDBC wrapper jiql支持标准的sql语言进行访问原版的官方主页 www.jiql.org 由于原版源代码存在一些问题,所以对改版本做了...

    sql anywhere11.0新特点

    通过提供联机分析处理(On-Line Analytical Processing,简称 OLAP),SQL Anywhere 提供了在单条 SQL 语句中执行复杂数据分析的功能,从而通过减少对数据库的查询次数来改进性能,而同时又能增加结果值。...

    JDBC连接所有数据库步骤

    JDBC连接所有数据库步骤 1 将数据库的JDBC驱动加载到classpath中,在...5 执行SQL语句。 6 访问结果记录集ResultSet对象。 7 依次将ResultSet、Statement、PreparedStatement、Connection对象关闭,释放所占用的资源。

    JDBC如何有效防止SQL注入?

    具体来说,它是利用现有应用程序,将(恶意)的SQL命令注入到后台数据库引擎执行的能力,它可以通过在Web表单中输入(恶意)SQL语句得到一个存在安全漏洞的网站上的数据库,而不是按照设计者意图去执行SQL语句。...

    Java-Web程序设计实战-第8章-JDBC详解.pptx

    ODBC本身也提供了对SQL语言的支持,用户可以直接将SQL语句送给ODBC,因为ODBC推出的时间要比JDBC早,所以大部分数据库都支持通过ODBC来访问。 SUN公司提供了JDBC-ODBC这个驱动来支持像Microsoft Access之类的数据库...

    2020.2.2JDBC(java Database Connectivity)数据库连接(客户端如何访问数据库):.md

    文章主要是JDBC的两种架构:BS架构(Browser and server)浏览器服务器架构-------》web、javaweb、phpweb CS架构(Client and server)客户端服务器架构---------》...与mysql相互连接的语句, 一些函数的运用区别。

    《Java Web开发与实战--Eclipse+Tomcat+Servlet+JSP整合应用》.(刘伟,张利国).[PDF].zip

    主要内容包括web应用程序运行原理、主流集成开发工具(eclipse/myeclipse)和运行环境(tomcat)的配置和使用、servlet、jsp、jdbc、jsp表达式语言(el)、servlet监听器和过滤器、定制标记库、jstl、mvc模式、dao...

    Java Web应用开发:JDBC.ppt

    JDBC, 全称为Java DataBase Connectivity, 它是一个面向对象的应用程序接口(API), 通过它可访问各类关系数据库。JDBC也是java核心类库的一部分。...向数据库发送SQL语句 处理数据库的返回结果 import java.sql.*;

    netbeans web demo2 一个jsp 页面查询数据库所有记录 --jdbc

    netbeans web demo2 -jsp页面查询mysql数据库-- jdbc--最简单案例。netbeans 打开项目 就行了, (源代码+数据库),数据库导入。然后修改密码和账号 就行了。

    基于Java web的网上书店管理系统(源码+数据库).zip

    2、在MySQL中创建数据库,使用MySQL Control Center执行database目录下的dbscript.sql数据库脚本文件创建数据库SQL语句创建数据库和表及数据; 3、设置数据库连接配置,修改WebRoot\WEB-INF的jdbc.properties文件,...

    JSP+JDBC+Mysql 留言板系统

    这是个最简洁的web系统,只是用于对初学者练手的,把文件夹解压到Tomcat的webapps文件夹下,然后重启Tomcat.本系统用的是Mysql数据库,解压文件里面有与系统相对于的数据库脚本,之间复制在Mysql数据库命令行即可。...

    SSM连接sqlserver数据库配置

    SSM如何连接sqlserver数据库?目前网上的几乎都是连接mysql的。替换src目录下的configuration.properties,以及WEB-INF...lib目录下加入sqljdbc42.jar用于连接Sqlserver。再把mysql的语句语法改为sqlserver的就可以了。

    Java Web编程宝典-十年典藏版.pdf.part2(共2个)

    第1篇为技能学习篇,主要包括Java Web开发环境、JSP语法、JSP内置对象、Java Bean技术、Servlet技术、EL与JSTL标签库、数据库应用开发、初识Struts2基础、揭密Struts2高级技术、Hib锄劬e技术入门、Hibernate高级应用...

Global site tag (gtag.js) - Google Analytics