JAVA基础复习(八)数据库程序设计

1、先学习简单SQL语句,可以通读数据库系统概论,程序设计后台建表建数据库很讲究。

2、关系数据库系统都是基于关系数据模型的,这种模型有三个要素:结构【定义了数据的表示】、完整性【强加一些对数据的约束】和语言【提供了访问和操纵数据的手段】。

3、关系模型是围绕着一个简单自然的结构建立的,一个关系实际上是一个没有重复行的表格。表的一行表示一条记录,一行称为一个元组,一列称为一个属性。

4、完整性约束对表格强加了一个条件,对表中的所有合法值都必须满足该条件。一般来说,有三种类型的约束:域约束【规定属性的允许值】、主键约束【唯一的标识了一个关系】、外键约束【不同关系中的元组通过它们的共同属性互相关联】。 域约束和主键约束被称为内部关联型约束,每个约束只涉及一个关系。外键约束是互相关联型的,意味着一个涉及多个关系的约束。

5、所有关系数据库系统都支持主键约束和外键约束,但不是所有的数据库系统都支持域约束。

6、MySQL上创建用户账户

登录 mysql -u root -p

输入一开始设置好的密码

使用系统自带数据库:use mysql;

创建用户名为lp1,密码为lp2的账户:create user 'lp1'@'localhost' identified by 'lp2';grant select,insert,update,delete,create,drop,execute,references on *.* to 'lp1'@'localhost';

退出:exit;

7、创建数据库

create database xxx;

8、创建和删除表

create table xxx(

    useId char(4) primary key,

    useName varchar(50) not null

    ...

);

如果要删除的表被其他表引用,必须先删除其他表。

drop table xxx;

具有属性包含关系的表之间支持下列这种写法:

create table xxx1(  create table xxx2(

...

    );

);

9、简单插入、更新和删除

insert into tablename (xxx1,xxx2,xxx3) values (xxx , xxx , xxx);   

update tablename set column1=newvalues where ....;

delete tablename where ...;

delete tablename;       

10、简单查询

select columnlist from tablename where ...;                                                                                                                                                                                                                                                                                                                                            11、复杂一些的查询还可以了解一下比较运算符、布尔运算符、运算符like、between-and、is null、列的别名、order by、联结表等等

12、JDBC的简单操作,注意关闭资源

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

Connection con=DriverManager.getConnection("jdbc:mysql://localhost/数据库名","用户名","密码");

Statement statement=con.createStatement();

statement.executeUpdate(sql);//更新语句

ResultSet resultSet=statement.executeQuery(sql);//查询语句

while(resultSet.next()){

   ...

resultSet.getString(1);

 ...
}

13、防注入以及多次大量操作,使用PreparedStatement

14、执行存储过程使用CallableStatement

15、获取数据库元数据

DatabaseMetaData dbMeteData=con.getMetaData();
//记得遍历
ResultSet rsTables=  dbMeteData.getTables(...);//得到数据库中所有表
                     dbMeteData.getColumnCount();//得到列的总数
                     dbMeteData.getColumnName(i);//得到第i列的列名,从1开始算

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值