你的位置:首页 > Java教程

[Java教程]MYSQL和JDBC的基础回顾(一)

一.数据库基础回顾:

  1.1 什么是数据库: 本质是一个文件系统,用户可以通过SQL对数据库中的数据进行增删改察操作.

  1.2 常见数据库:  MYSQL:web及中小企业常用,是开源免费,小型的数据库,通常和PHP语言结合使用,已被Oracle收购.

            Oracle:收费的,中大型数据库,Oracle公司出品.

            DB2:IBM公司出品,中大型数据库,收费,常用于银行系统.

            SQLServer:微软公司的中大型数据库,收费,常用微软自家语言,比如c#,.net.

            syBase:淡出历史舞台,但是其PowerDesigner功能强大,Java中有使用.

            SQLite:嵌入式中使用的数据库,用于小型设备. 

  1.3 SQL分类:  数据定义语言:DDL(Data Definition Language):用来定义数据库对象:database,table,column等.关键字create,alter,drop等.

             数据操作语言:DML(Data Manipulation Language):用来对数据库中的数据进行更新.如:insert,delete,updata等.

           数据查询语言:DQL(Data Query Language):用来查询数据库表的记录.如select,from,where等.

           数据控制语言:DCL(Data Control Language):用来定义数据库的安全及访问级别和创建用户.如:grant等.

  1.4 数据库操作:

    1.4.1  创建:  create database 库名;

             create database 库名 character set XXX(这里面是编码格式);

    1.4.2  删除:  drop database 库名;

    1.4.3  使用:  use 库;

    1.4.4  查看当前正常操作的库:  select database();

  1.5 数据表的操作:

    1.5.1  创建:  create table 表名(字段名 类型(长度)[约束],字段名 类型(长度)[约束]);

    1.5.2  查看:  show tables;

        查看表的结构:  desc 表名;

    1.5.3  删除表:  drop table 表名;

    1.5.4  修改表:

          4.1 添加一列:  alter table 表名 add 字段名 类型(长度) [约束];

              

          4.2 修改列的类型(长度,约束):  alter table 表名 modify 要修改的字段名 类型(长度) [约束] ;

              

          4.3 修改列的列名:  alter table 表名 change 旧列名 新列名 类型(长度) [约束];

              

          4.4 删除表的列:  alter table 表名 drop 列名;

          4.5 修改表名:  rename table 表名 to 新表名;

          4.6 修改表的字符集:  alter table 表名 character set 编码;

  1.6 对数据库中表记录进行插入

    1.6.1  插入记录:  insert into 表名(列名1,列名2,列名3...) values(值1,值2,值3...);

          比如:  insert into tal_user(uid,uname,upasd) values(null,'zhangsan','123');

        或者:    insert into 表名 values(值1,值2,值3......);(常用)

        插入中文乱码问题:  方式1(不推荐):直接修改数据库安装目录里面的my.ini文件的第57行:default-character-set = utf-8;           

                   方式2:  set names gbk;

                    

  1.7 对数据库中表记录进行修改

    1.7.1  不带条件的:  update 表名 set 字段名=值,字段名=值,字段名=值......;

               它会将改列的所有记录都更改.

     1.7.2  带条件的:  update 表名 set字段名=值, 字段名=值, 字段名=值…… where 条件;

                

  1.8 对数据库中表记录进行删除

    1.8.1  带条件的:   delete from 表名 where 条件(删除后,uid不会重置);

     1.8.2   不带条件的:  delete from 表名;

     1.8.3  说说delete与truncate的区别?

          delete删除的时候是一条一条的删除记录,它配合事务,可以将删除的数据找回.

          truncate删除,它是将整个表摧毁,然后再创建一张一模一样的表。它删除的数据无法找回.

          (delete删除,uid不会重置!而使用truncate操作,uid会重置,因为因为它删除了表结构,然后再创建一张一模一样的表,所以再次插入数据的数据的时候从1开始).

  1.9 对数据库中表记录进行查询

      查询是数据库中最为关键的功能,也是最复杂的一个功能,因此,会在下一章节中详细描述.