jdbc和数据库的应用
jdbc是Java Data Base Connectivity(java数据库连接):
- 是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。
JDBC关键字的使用:
1.DriverManager:依据数据库的不同,管理JDBC驱动
2.Connection:负责连接数据库并且担任传送数据库的任务
3.Statement:由Connection产生、负责执行SQL语句
4.ResultSet:负责保存Statement执行后所产生的查询结果
5.PreparedStatement接口(预编译的SQL语句)提高了SQL语句的性能、代码的安全性、代码的可读性和可维护性
- 简单来说它有5个步骤来完成java到数据库的连接: (1)加载驱动(Class.forName(com.mysql.jdbc.Driver)) (2)搭建一条java到数据库的通道 Connection conn =DriverManager.getConnection(url, user, password); (3)通过Statement stmt = conn.createStatement(); 来向数据库增删改; (4)通过 ResultSet rs = stmt.executeQuery(sql); 来查询数据库数据 (5)关闭资源
tatement常用方法:
ResultSet executeQuery(String sql):执行SQL查询并且获取ResultSet对象
Int executeUpdate(String sql):可以执行插入、删除、更新等操作,返回值是执行该操作所影响的行数
Boolean execute(String sql):可以执行任意SQL语句,然后获得一个布尔值,表示是否返回ResultSet
Boolean next():将光标从当前位置向下移动一行
Boolean previous():游标从当前位置向上移动一行
Void close():关闭ResultSet对象
Int getInt(int colIndex):以int形式获取结果集当前行指定列号值
Int getInt(String colLabel):以int形式获取结果集当前行指定的列名值
Float getFloat(int colIndex):以float形式获取结果集当前行指定列号值
Float getFloat(String colLabel):以float形式获取结果集当前指定列名值
String getString(int colIndex):以Sting形式获取当前行指定列号值
String getString(String colLabel):以String形式获取当前行指定列名值
5. 数据库表的管理和数据的管理
管理表:
选择数据库:use 数据库;
增加: create table 表(字段名1 字段类型,字段名2 字段类型......);
删除: drop table 表;
修改:
添加字段: alter table 表 add [column] 字段名 字段类型;
删除字段: alter table 表 drop [column] 字段名;
修改字段类型: alter table 表 modify 字段名 新的字段类型;
修改字段名称 : alter table 表 change 旧字段名 新字段名 字段类型;
修改表名称: alter table 表 rename [to] 新表名;
查询:
show tables / desc student;
管理数据:
增加: insert into 表(字段1,字段2,。。。) values(值1,值2.。。。。);
删除: delete from 表 where 条件;
修改: update 表 set 字段1=值1,字段2=值2...... where 条件;
查询:
5.1)所有字段: select * from 表;
5.2)指定字段: select 字段1,字段2.... from 表;
5.3)指定别名: select 字段1 as 别名 from 表;
5.4 )合并列: select (字段1+字段2) from 表;
5.5)去重: select distinct 字段 from 表;
5.6)条件查询:
a)逻辑条件 :and(与) or(或)
select * from 表 where 条件1 and/or 条件2
b)比较条件: > < >= <= = <> between and(在。。。之间)
select * from 表 where servlet>=90;
c)判空条件:
判断null: is null / is not null
判断空字符串: ='' / <>''
d)模糊条件: like
%: 替换任意个字符
_: 替换一个字符
5.7 分页查询:limit 起始行,查询行数
起始行从0开始
5.8 排序: order by 字段 asc/desc
asc: 正序,顺序
desc:反序,倒序
5.9 分组查询:group by 字段
5.10: 分组后筛选: having 条件
SQL语句的分类:
DDL: 数据定义语言
create / drop / alter
DML:数据操作语句
insert / delete /update / truncate
DQL: 数据查询语言:
select / show
jdbc和数据库的应用的更多相关文章
- jdbc链接数据库的三种方式
/** * jdbc连接数据库 * @author APPle * */ public class Demo1 { //连接数据库的URL private String url = "jdb ...
- 如何通过JDBC访问数据库
Java数据库连接(JDBC)用与在Java程序中实现数据库操作功能,它提供了执行SQL语句.访问各种数据库的方法,并为各种不同的数据库提供统一的操作接口,java.sql包中包含了JDBC操作数据库 ...
- 通过jdbc获取数据库中的表结构
通过jdbc获取数据库中的表结构 主键 各个表字段类型及应用生成实体类 1.JDBC中通过MetaData来获取具体的表的相关信息.可以查询数据库中的有哪些表,表有哪些字段,字段的属性等等.Met ...
- Java 通过JDBC查询数据库表结构(字段名称,类型,长度等)
Java 通过JDBC查询数据库表结构(字段名称,类型,长度等) 发布者:唛唛家的豆子 时间:2012-11-20 17:54:02 Java 通过JDBC查询数据库表结构(字段名称,类型,长 ...
- 用于JDBC操作数据库的公共类
/* * @(#)CommonSql.java 2011-9-5 * * Copyright 2011 Bianjing,All rights reserved. */ import java.sql ...
- Spring实战6:利用Spring和JDBC访问数据库
主要内容 定义Spring的数据访问支持 配置数据库资源 使用Spring提供的JDBC模板 写在前面:经过上一篇文章的学习,我们掌握了如何写web应用的控制器层,不过由于只定义了SpitterRep ...
- 用JDBC查询数据库
JDBC API的核心组件:1.DriverManager类:用语跟踪可用的JDBC驱动程序并产生数据库连接. 2.Connection接口:用于取得数据库信息.生成数据库语句,并管理数据库事务. 3 ...
- 使用JDBC向数据库中插入一条数据
原谅我是初学者,这个方法写的很烂,以后不会改进,谢谢 /** * 通过JDBC向数据库中插入一条数据 1.Statement 用于执行SQL语句的对象 1.1 通过Connection 的 * cre ...
- java web中Jdbc访问数据库步骤通俗解释(吃饭),与MVC的通俗解释(做饭)
一.Jdbc访问数据库步骤通俗解释(吃饭) 1)加载驱动 Class.forName(“com.microsoft.jdbc.sqlserver.SQLServer”); 2) 与数据库建立连接 Co ...
- javaweb学习总结(三十三)——使用JDBC对数据库进行CRUD
一.statement对象介绍 Jdbc中的statement对象用于向数据库发送SQL语句,想完成对数据库的增删改查,只需要通过这个对象向数据库发送增删改查语句即可. Statement对象的exe ...
随机推荐
- CentOS系统、Jdk、Tomcat安装实战
CentOS系统.Jdk.Tomcat安装实战 第一次接触Liunx系统,都说J2EE系统在Li ...
- Java 编程下使用 Class.forName() 加载类
在一些应用中,无法事先知道使用者将加载什么类,而必须让使用者指定类名称以加载类,可以使用 Class 的静态 forName() 方法实现动态加载类.下面的范例让你可以指定类名称来获得类的相关信息. ...
- top 命令SQLServer-sybase-oracle
SQLServer: select top 10 * from tablename; select top 10 percent from tablename; select * from table ...
- Objective-C 字符串
#import <UIKit/UIKit.h> #import "AppDelegate.h" int main(int argc, char * argv[]) { ...
- No2_4.接口继承多态_Java学习笔记_经典案例
import java.lang.reflect.Field; import java.util.ArrayList; import java.util.Collections; import jav ...
- log4j配置文件及nutch中的日志配置
使用slf4j作为日志系统时,由于slf4j只是一个接口,它需要一个具体实现来执行. 具体参考http://blog.csdn.net/jediael_lu/article/details/43854 ...
- 安装hadoop1.2.1集群环境
一.规划 (一)硬件资源 10.171.29.191 master 10.173.54.84 slave1 10.171.114.223 slave2 (二)基本资料 用户: jediael 目录 ...
- Remove掉Request.QueryString
好久上博客来了,最近有点忙,有点懒. 今天在解决一个Request.QueryString 传值的问题上遇到了,当不是第一次加载时需要把Request.QueryString的值赋值为null,刚开始 ...
- python 远程统计文件
#!/usr/bin/python #encoding=utf-8 import time import os import paramiko import multiprocessing #统计文件 ...
- Scala学习笔记--xml
http://blog.csdn.net/beautygao/article/details/38497065 https://github.com/scala/scala-xml http://st ...