Properties :
----------------
1.extends Hashtable ,线程安全的。
2.key - value
SQL : Structurual query language,结构化查询语言。
-------------------------------------------------
database :
--------------
1.数据库
2.表的集合。
3.操作
1.增加
id | name | age
-------------------
1 | tom | 24
....
insert into table1 values(100,‘jerry‘,23);
insert into table1(id,name,age) values(100,‘jerry‘,23);
insert into table1(name,age,id) values(‘jerry‘,23,1000);
insert into table1(name) values(‘dick‘); //
2.删除
delete
delete from students where name is null; //where 条件子句
3.更新
update
update students set name = ‘tomasLee‘,age=33,id=19 where id = 23;//
4.查询
select :选择
select * from table1 where name = ‘tom‘;
select * from table1 where name like ‘t%‘ or age = 12;
select * from students where age is null ; //查询是否为null的记录
select id,name from students where age is not null ; //查询是否为null的记录
select ... order by id asc | desc; //asc 升序 | desc 降序
select * //全字段扫描
select ... [no where] //全表扫描
select id,name from stus ; //选择若干字段进行查找,投影查询 project
select * from stus where ... limit 1,2 ; //1-offset,偏移量 , 2-length,长度,需要查询的记录数.
5.数据的CRUD : create | retrieve | update | delete
.
Table
--------------
1.二维。
2.行 : row,record,记录.
3.列 : field,字段.
RDBMS : relation database manage system.
---------------------------------------
1.结构化数据
JDBC:
---------------
JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。
安装mysql
----------------
1....
2.custom安装
3.安装地址 C:\myprograms\MySQL Server 5.5\
4....
5.启动配置向导
6.detailed
7.developer machine
8.multifunction database
9. ...next -> next
10. ...
11.选择默认字符集
手动选择字符集(第三个选项) --> utf8
. 12.创建安全设置
root密码:
启用远程主机访问。
13.选择执行
14.ok
15.验证mysql是否安装
1.控制面板 --> 管理工具 --> 服务 --> mysql --> 状态 == 已启动 --> ok
2.cmd --> services.msc --> 直接打开服务窗口
主键 : primary key
--------------------
1.唯一,不重复
2.不能为null
3.create table stus(id int ,...) primary key id ;
mysql常用操作
-------------------
1.操作1
mysql>show databases ; //显示有哪些数据库
information_schema //元数据信息
test //测试
mysql>use test;
mysql>show tables; //显示当前库中的所有表
2.DDL
database define language,数据库定义语言。
create database mybase ; //创建数据库
drop database mybase ; //删除数据库
//数据类型 int varchar(50)
create table stus(id int primary key,name varchar(50) , age int); //
drop table stus ; //删除表
desc[ribe] stus ; //查看表结构
3.DML : 数据操纵语言
select * from stus ; //查询
insert into stus values(1,‘tom‘,12);
4.
JDBC
---------------
1.java database connection,java数据库连接
//准备工作
2.下载驱动程序
mysql-connector-java-5.0.8.jar
3.添加驱动到classpath下。
创建lib文件夹
复制到lib下
添加到buildpath中。
//编程
4.注册驱动
5.建立连接
6.创建Statement(语句)
7.执行
8.处理结果.
9.释放资源。
事务
-------------------
1.transaction : 事务.
2.acid
a: atomic,原子性,不可分割。全成功、全失败。
c: consistent,一致性
i: isolate,隔离性
d: durable,永久性。
自动提交:commit.
事务操作:
----------
1.commit,
2.rollback.,
3.设置mysql client事务自动提交关闭
set autocommit = 0 ;
//启动事务
start transaction ;
4.
单元测试
-----------------
1.@test junit
删除测试
----------------
1.delete from ... where id < 5 ;
2.delete from ... where id > 5 ;
mysql client下的事务操作
------------------------
1.关闭自动提交
set autocommmit = 0 ; //1 = true
2.开启事务
start transaction ;
3.提交事务
commit ;
4.回滚
rollback ;
ResultSet
-------------------
1.*****字段索引以1为基址*****
SQL
------------------
1.语法解析
2.语义解析
Statement
----------------
st.execute("insert into stus(id,name,age) values(1,‘‘,12)");
PreparedStatement
-----------------
1.预处理语句.
2.conn.preparedStatement("insert into stus(id,name,age) values(?,?,?)");
3.SQL注入
where name = ‘ 1‘ or ‘1‘ = ‘1 ‘ and password = ‘ xxx ‘
原文地址:http://yehom.blog.51cto.com/5159116/1793020