sql与jdbc
来源:互联网 发布:淘宝现金券 编辑:程序博客网 时间:2024/05/18 16:39
1.什么是数据库,数据库有什么作用?
数据库(database)就是存储数据的仓库,其本质是一个文件系统,数据按照特定的格式将数据存储起来,用户可以对数据库中的数据进行增加,修改,删除及查询操作
2.数据库的分类
层次结构
网状结构
关系化数据库
关系数据库,是建立在关系模型基础上的数据库,借助于集合代数等数学概念和方法来处理数据库中的数据。
关系结构模型数据库,使用二维表格来存储数据.
3.常见关系化数据库
4.Mysql的安装
MySQL数据库的安装和配置
配置Mysql按照bin目录到Path中
使用命令行窗口连接MYSQL数据库
mysql –u用户名 –p密码
MySQL数据库Root密码重置
5.MySQL数据库服务器、数据库和表的关系
所谓安装数据库服务器,只是在机器上装了一个数据库管理程序,这个管理程序可以管理多个数据库,一般开发人员会针对每一个应用创建一个数据库。
为保存应用中实体的数据,一般会在数据库创建多个表,以保存程序中实体的数据。
数据库服务器、数据库和表的关系如图所示:
6.SQL语言简介
Structured Query Language, 结构化查询语言
非过程性语言
SQL是用来存取关系数据库的语言,具有查询、操纵、定义和控制关系型数据库的四方面功能
SQL的语法有以下要求:
SQL语句可以单行或多行书写,以分号结尾;
可使用空格和缩进来增强语句的可读性;
MySQL数据库的SQL语句不区分大小写,建议使用大写,例如:SELECT * FROM user
7.SQL分类
DDL (数据定义语言)
数据定义语言 - Data Definition Language
用来定义数据库的对象,如数据表、视图、索引等
DML (数据操纵语言)
数据处理语言 - Data Manipulation Language
在数据库表中更新,增加和删除记录
如 update, insert, delete
DCL (数据控制语言)
数据控制语言 – Data Control Language
指用于设置用户权限和控制事务语句
如grant,revoke,if…else,while,begin transaction
DQL (数据查询语言)
数据查询语言 – Data Query Language
select
8.使用SQL操作数据库
1.连接数据库
mysql -u root -p 密码
2.创建数据库
create database 要创建数据库的名称;
3.查看所有的数据库
show databases;
4.删除数据库
drop database 要删除数据库的名称;
5.切换数据库
use 要切换的数据库的名称;
9.使用SQL操作数据库表
1.创建表
create table 表名称 (
字段 类型,
字段 类型
)
2.查看表结构
desc 表名称;
3.删除表
drop table 要删除的表名称;
4.查看当前数据库所有表
show tables;
10.MySQL常用数据类型
字符串型
VARCHAR、CHAR
大数据类型
BLOB、TEXT
数值型
TINYINT 、SMALLINT、INT、BIGINT、FLOAT、DOUBLE
逻辑性
BIT
日期型
DATE、TIME、DATETIME、TIMESTAMP
11.使用SQL操作数据库中表记录1
1.插入记录
insert into 表名 values(要添加的值…);
当添加的字段的数据类型是int类型,直接写值
如果添加的字段类型是varchar类型和日期类型,使用单引号把值包起来
2.修改记录
update 表名 set 字段名1 = 值1 , 字段名2 = 值2 where 条件;
3.删除记录
delete from 表名 where 条件
4.查询记录
select 字段名 (*) as别名 from 表名 where 条件
5.去除表中重复记录
select distinct * from 表名;
12.Mysql的约束
6.MySQL的约束
a.非空约束 not null
* 表示数据不能为空
b.唯一性约束 unique
* 表中的记录不能重复的
c.主键约束 primary key
* 表示非空,唯一性
* 自动增长 auto_increment
13.使用SQL操作数据库表记录2
6.where子句使用
a. 运算符 <, >, >=, <=
b. in 显示在in列表中的值
c. and 多个条件同时满足
d. like 模糊查询
7.查看当前运行的数据库
select database();
8.排序
order by 字段名 asc 升序
order by 字段名 desc 降序
14.聚合函数
1.count()函数
select count(*) from …where….
2.sum()函数
select sum(要进行求和字段) from …where….
3. avg()函数
select avg(要计算平均数的字段名称) from …
4. max()函数
select max(字段) from…
5. min()函数
select min(字段) from…
15.分组查询
语法 group by + 分组字段
create table orders(id int,name varchar(20),price int);
insert into orders values(1,”dianshi”,2000);
insert into orders values(2,’dianshi’,2000);
insert into orders values(3,’bingxiang’,1000);
insert into orders values(4,”空调”,1000);
16.Sql中limit关键字
limit 关键字
从第几条开始查询几条
17.多表之间的关系
一对一
一对多
多对多
18.JDBC简介
JDBC(Java DataBase Connectivity),Java数据库的连接
JDBC使用到的类和接口:
DriverManager,Connection,Statement,ResultSet
JDBC操作步骤:
第一步,加载数据库的驱动
DriverManager里面registerDriver(Driver driver)
第二步,创建与数据库的连接
DriverManager里面getConnection(String url, String user, String password)
第三步,编写sql语句
第四步,执行sql语句
Statement里面executeQuery(String sql)
第五步,释放资源(关闭连接)
19.JDBC的DriverManager对象
registerDriver(Driver driver) :
参数是数据库的驱动,这个驱动是由数据库提供的。
(a) 这个方法在实际开发中,一般不使用,因为这个方法会加载驱动两次
(b) 一般在开发中使用反射的方式加载数据库的驱动
Class.forName(“com.mysql.jdbc.Driver”);
getConnection(String url, String user, String password),返回Connection。
第一个参数:表示要连接的数据库
写法:jdbc:mysql://数据库的ip:数据库的端口号/连接的数据库的名称
jdbc:mysql://localhost:3306/testdb2
简写的方式:jdbc:mysql:///testdb2(使用范围:连接的数据库是本机,端口是3306)
第二个参数:表示连接数据库的用户名
第三个参数:表示连接数据库用户密码
20.JDBC的Connection对象
Connection代表数据库的连接
创建statement对象
Statement createStatement()
创建预编译对象 PreparedStatement
PreparedStatement prepareStatement(String sql)
21.JDBC的Statement对象
Statement是用来执行sql语句的对象
1.执行查询操作方法
ResultSet executeQuery(String sql) ,返回查询的结果集
2.执行增加 修改 删除的方法
int executeUpdate(String sql) ,返回成功的记录数
3.执行sql语句的方法
boolean execute(String sql) ,返回是布尔类型,如果执行的是查询 的操作返回true,否则返回的false
4.执行批处理的方法
addBatch(String sql):把多个sql语句放到批处理里面
int[] executeBatch():执行批处理里面的所有的sql
22.JDBC的ResultSet对象
ResultSet代表查询返回的结果。
1.遍历结果集
next();
2.得到数据的具体值
getString(“字段名称”)
getInt(“字段名称”)
getObject(“字段名称”)
- sql与jdbc
- SQL数据库与JDBC技术
- SQL 与JDBC概要总结
- 配置SQL Server2005 express与jdbc连接
- jdbc与sql的连接问题
- jdbc 如何与 sql server 2000连接
- 配置SQL Server2005 express与jdbc连接
- JDBC与SQL SERVER 连接问题
- JDBC建立与SQL Server的连接
- JAVA的JDBC连接与sql操作
- sql server 与 java 使用jdbc 连接
- 【JDBC】SQL注入攻击演示与解决方法
- JDBC(四)SQL 注入与 PreparedStatement
- Mysql数据库与sql语言(四)---jdbc
- 通过JDBC/ODBC方法连接SQL Servers与MyEclipe(SQL)
- JDBC之Java与SQL之间数据类型的联系
- SQL Server 2000 Driver for JDBC安装与配置
- SQL Server 2000 Driver for JDBC安装与配置
- python django框架的模型的创建
- C++primer薄片系列之特殊工具与技术
- Uva 11572 Unique snowflakes
- Mac使用class-dump进行IOS逆向工程
- [uboot] (番外篇)global_data介绍
- sql与jdbc
- Eclipse '/RemoteSystemsTempFiles'错误
- 怎么将mysql数据导入到navicate for MYSQL
- ftp重启后,java调用ftp上传图片,无法登陆ftp
- 微软亚洲研究院五位院友当选 2018 IEEE Fellow
- 如何将网站部署到阿里云服务器
- 如何禁止 iPhone Safari 视频自动全屏?
- AngularJs v1.6.6,使用window.print()打印报表实现
- Text Summarization 综述