MySQL数据库的基础及加强
- 格式:doc
- 大小:209.50 KB
- 文档页数:43
MySQL数据库的基础 1. 什么是软件? 软件 = 数据 + 指令 + 文档 指令:通知计算机要做的事情. Servlet JSP System.out.println("hello world!") 文档:/** */文档注释 javadoc 数据:计算机要处理的值。 String char boolean
思考:软件的目的是方便用户进行操作不同的复杂数据。 因此软件的核心的数据。(采集数据、处理数据、存储数据(重点)、显示该数据) 2. 存储数据的方法 2.1 内存存储方法: 变量、对象、类、集合、数组 存储的特点是当计算机没有电的时候数据就会跌丢失。 优点:CPU的访问速度快! 2.2 磁盘存储方法: 文件、配置文件(.properties)、xml(关系数据) 存储的特点是永久的将数据存储的在磁盘上。 缺点:CPU的访问速度慢! 2.3 数据库存储方法 将处理好的数据以文件的方式存储在磁盘中,但是可以使用高效的IO流技术将文件中的数据 加载进内存中帮助软件进行使用。
回顾:IO 总结:以后在实际的开发中如果需要永久性的存储数据那么优先使用数据库技术。
3. 常见的数据库软件 一般的数据库 SQL Server 微软公司 主要适用于中小型企业的开发,没有开源 MySQL 甲骨文公司 主要适用于中小型企业的开发,有开源(今天讲) Oracle 甲骨文公司 主要适用于大型企业的开发(亿),没有开源 2G(后续课程4天) DB2 IBM公司 主要适用于大型企业的开发(亿),但是必须结合IBM的小型机进行结合使用。(银行、证券)
嵌入式的数据库(适用于手机等小型的移动设备) sqlite Android开发 Android系统默认支持该数据库 ------------------------------以上的数据库统称为关系数据库----------------------------------------- 关系数据库:就是数据库在存储数据的时候使用的存储方法是一张二维表。 new Student("0001","jack",13,'男'); 堆 +--------------------------+ | 编号 | 姓名 | 年龄| 性别| +--------------------------+ | 0001 | jack | 13 | 男 | +--------------------------+
有一个比较繁琐的问题是:软件处理的数据都是面向对象的,而底层的存储方法确实面向关系的,因此如果开发者 要将要将一个对象中数据存储的关系数据库中必须进行对象和关系的转换。
---------------------------------------面型对象的数据库------------------------------------------- 序列化和反序列化技术(IO) db4o db DataBase For Object conn.save(new Student("0001","jack",13,'男'));
4. MySQL数据的下载、安装和配置 下载:http://www.oracle.com 安装:一路next 配置: 当MySQL安装完毕后会自动启动一个配置向导。 安装类型: 典型 通用的功能都会安装(新手推荐) 完全 所有的功能都会安装 自定义 自己选择
配置方式 详细配置 新手推荐 标准配置 服务器类型 开发类型 使用用户的少量内存(新手推荐) 服务类型 使用用户的中等量内存 完全服务类型 使用用户的可用的全部内存
数据库的用途 多功能数据库 是否开启事务由用户决定(新手推荐) 事务数据库 非事务数据库
连接数的配置 手工设置 1~1010 一般设置为20 网络设置 端口 默认3306 采用严格的SQL语法进行验证SQL语句是否报错
字符集 手工选择 utf8 安装服务 默认MySQL 自动将安装的目录的/bin添加到path环境变量
账户设置 用户名默认是 root 密码: root
单击 --》 Finish 5. 测试安装 5.1 启动服务 5.2 打开命令行输入以下指令 C:\Documents and Settings\Administrator>mysql -uroot -p Enter password: **** Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 1 Server version: 5.0.67-community-nt MySQL Community Edition (GPL)
Type 'help;' or '\h' for help. Type '\c' to clear the buffer. 6. 卸载 控制面板 --》添加和删除程序 --》MySQL --》 卸载 进入注册表进行所有的MySQL项的清空在运行中输入--》regedit--》回车 查找进行删除(小心)
7. 使用MySQL的前奏 DBMS 即数据库管理系统。系统其实本质是一个软件。MySQL安装的时候就是一个数据库管理系统。 一个数据库管理系统一般包含:数据库的指令(bin)、数据库的文件存储(data)、实例(mysql.exe)、 以及其他的日志等文件的集合。
DB 即数据库,数据库主要用于管理表,而表主要用于存储数据。 DBA 即数据库管理员。 举例: Tomcat Web服务器 管理员 DBMS 数据库服务器 DBA(Oracle职业)
DBInstance 即数据库实例,主要负责客户端和数据库服务器的网络通信。
模型: 客户端(浏览器)PC ---》 Web服务器PC ----》 数据库实例(root/root 127.0.0.1:3306) ----》数据库服务器PC(MySQL) ----》数据库 ---》表
8. 数据库操作 准备: "当用户使用mysql指令连接数据库服务器的时候,那么在整个连接中需要使用SQL进行数据的操作"
SQL 即结构化的查询语言。所有的数据库都采用大致相同的SQL语法。 Welcome to the MySQL monitor. Commands end with ; or \g. 所有的SQL指令以;号结尾 如果需要记录所写的SQL命令,那么使用如下指令: tee d:/day13.sql
8.1 创建数据库 语法: create database 数据库的名字 character set 字符集名 collate 校对规则;
多学一招:校对规则是做什么的? 校对规则是用于指定某一种特定的字符集所对应的排序和查询的规则。 多学一招:如何快速的查看MySQL支持的字符集和校对规则? show character set; +----------+-----------------------------+---------------------+--------+ | Charset | Description | Default collation | Maxlen | +----------+-----------------------------+---------------------+--------+ | gbk | GBK Simplified Chinese | gbk_chinese_ci | 2 | | utf8 | UTF-8 Unicode | utf8_general_ci | 3 | +----------+-----------------------------+---------------------+--------+
举例:创建一个编码集为gbk名为day13的数据库。 create database day13 character set gbk collate gbk_chinese_ci;
8.2 查看数据库 语法: 方式一:查看所有的数据库 show databases; +----------------------+ | Database | +----------------------+ | information_schema | MySQL自带的数据库 | day13 | 刚刚建立好的数据库 | mysql | MySQL自带的数据库 | test | MySQL自带的数据库 +----------------------+
方式二:查看开发者自己建立的好的指定的数据库 show create database 数据库名; 举例: show create database day13;
+----------+---------------------------------------------------------------+ | Database | Create Database | +----------+---------------------------------------------------------------+ | day13 | CREATE DATABASE `day13` /*!40100 DEFAULT CHARACTER SET gbk */ | +----------+---------------------------------------------------------------+
将数据库名、以及创建数据库的语句以表的方式进行显示。 8.3 修改数据库 语法: alter database 数据库名 character set 字符集名 collate 校对规则名;
举例:将day13的数据的字符集改为utf8? alter database day13 character set utf8 collate utf8_general_ci;
mysql> show create database day13; +----------+----------------------------------------------------------------+ | Database | Create Database | +----------+----------------------------------------------------------------+ | day13 | CREATE DATABASE `day13` /*!40100 DEFAULT CHARACTER SET utf8 */ | +----------+----------------------------------------------------------------+