数据库的复习之一

关于数据库编程

     1.简单介绍mysql数据库

     2.jdbc(java代码去操作数据库)

      3.jdbc(事务 数据库连接池)

1.常见数据库

     1.Oracle数据库(大型)——Oracle

     2.DB2

     3.SQLserver(中型)

     4.MySQL(小型)——Oracle

 

mysql6之前是免费的,开源的。

 

2.什么是数据库?

     持久化设备:

      1.IO

      2.数据库

      就是一个文件系统,通过标准SQL语言操作文件系统中数据——用来存放软件系统的数据。

 

3.数据库中存放的是什么样的数据?

     关系型数据(有点类似于书)

4.说明:

比如:商城系统

商品、订单、用户

————————

比如上面三个可以说是实体,用矩形表示

对应所有的属性用椭圆表示

还有实体之间的关系用菱形表示

 

5.mysql的安装与卸载

1.卸载

    1.因数据文件与安装文件分离,应该找它的位置

    2.正常删除数据库,在控制面板中将其删除

    3.删除数据文件

    4.将MySQL的遗留的数据文件删除

2.安装

    注意:

    MySQL的默认端口为3306

    字符集选择utf-8

    Service Name :mysql

3.测试

   打开终端输入:mysql -u root -p

   输入已设置的密码:****

   若出现了mysql>则表示成功

4.密码重置

1.win环境中,在“运行”中输入service.msc打开所有服务,找到对应的服务(找到路径)并将其停止

2.在终端下输入mysql - - skip -grant -tables启动服务 光标不动(不要关闭窗口)。

3.新打开终端输入mysql -u root -p不需要密码

use mysql

update user set passwd=password(abc) Where

User=root

4.关闭两个终端,在任务管理器中结束MySQL进程,并输出exit。

5.在服务管理页面重启MySQL服务

密码修改完成

———————————

MySQL数据服务器和数据库和表的关系(包含关系),最后是client来访问

mysql -h主机名 -p 端口 -u 用户名 -p 输入密码

 

如果自己电脑上已安装了MySQL服务器(指软件)

则终端输入mysql -u root -p

——————————

表的储存

列为字段(属性),行为记录

表中的字段与类中的属性对应

表中记录与类中的具体对象对应

class User{

int id;

String name;

int age;

}

User u=new User();

u.id=1;u.name=“ZhangSan”;u.age=20;

 

——————————————————

sql介绍

        sql 结构化查询语言

        sql 是非过程性语言(语句间无关联,相对独立)

—————————————————

sql分类

DDL  数据定义语言 用来定义数据库、表等

DML 数据库操纵语言  用来增删改查

DCL  数据控制语言    用户权限控制

 

DQL   数据查询语句(*) select

 

——————————————————

数据库基本操作

1.创建/使用/删除数据库

create database 数据库名;

use 数据库名

drop database 数据库名;

2.创建数据库是可以指定个编码集与校验规则

character set:指定数据库采用的编码集

collate:指定数据库字符集的比较方式

 

create database 数据名 character set 编码集 

collate 校验;//带校验规则的

 

create database 数据库名 character set=“utf-general-ci”;//查手册

 

create database 数据库名 character set=“utf8”;

 

show databases;

//显示已存在的数据库

 

//查看前面创建的mydb2数据库的定义信息

show create database  mydb2;

 

//修改数据库,并改字符编码(了解)

alter database 数据名 character set=“编码集” collate=“校验”;

 

create database 数据库名 character set=“gbk”;

show create database 数据库名;

alter database 数据名 character set=“编码集” collate=“校验”;

 

//切换数据库

use db_name;

//查看当前使用的数据库

select database();

 

……

(增删改查、函数、触发器、视图等看以往做的练习就行)

 

 

操作表:

1.创建create table table_name{

字段名 类型

}character set=‘’  collate=‘’;

 

2.表中字段类型

int 

varchar char

float double decimal

date datetime

 

3.查看

desc table_name

show table;

show create table table_name;

 

表约束

表约束一共有六种

约束用来保证数据有效性(避免脏数据)和完整性。

 

三种类型:

1.主键约束

           特点:1.非空  2.唯一  

           alter table tablename drop primary key;

           主键自动增长:auto_increment

2.非空约束

         not null

         例如:name varchar(20) unique

3.唯一约束

         unique

         例如:name varchar(20) unique

 

4.外键

 

——————————————————

表结构的修改

1.添加字段

      alter table table_name add 字段  数据类型;

2.修改字段

      alter table 表名  modify 字段 数据类型;

3.删除字段

     alter table 表名   modify 字段;

4.修改字段名称

    alter table 表名  change 旧自段名称 新字段名称 类型;

5.修改表的字符集

   alter table 表名  character set=字符集;

6.改表名

   rename table 表名 to 新表名;

7.删除主键

  alter table 表名 drop primary key;

主键不能自动增长,如果自动增长删除失败

 

MySql里面的in相当于取并集

eg: 

     select name from emp where dpt in ('dpt3','dpt4');  #员工在dpt3部门或在dpt4部门名字

 

     select name from emp where dpt not in('dpt3','dpt4');  #员工不在dpt3、dpt4部门名字

 

 

 

 

 

 

 

 

成年人的世界没有那么多的童话,也没有那么多的逆袭。
原文地址:https://www.cnblogs.com/shijinglu2018/p/8478549.html