jdbc 开发 之 mysql
mysql 介绍
(1)mysql数据库是 瑞典 AB 开发
(2)mysql->sun->oracle
(3)mysql数据库的特点
1.开源
2.免费
3.跨平台(windows / linux /unix /苹果)
4.处理并发性 (13000个)/安全/稳定
5.该数据库 轻(对资源要求不高.) 安装文件 37.7m ,而且对cpu / 内存要求不高.
mysql 使用
使用命令行窗口连接MYSQL数据库
mysql –u用户名 –p密码
特别说明: -p 后面的密码 不要有空格 / 使用该命令的时候,需要配置一下环境变量.
mysql数据库也提供图形化界面来登录mysql数据库
表的一行称之为一条记录
表中一条记录对应一个java对象的数据
如何在mysql中创建数据库
create database 数据库名
创建一个名称为mydb1的数据库。
create database mydb1; 【sql】
创建一个使用utf-8字符集的mydb2数据库。
create database mydb2 character set utf8
创建一个使用utf-8字符集,并带校对规则的mydb3数据库
create database mydb3 character set utf8 collate utf8_general_ci;
CHARACTER SET:指定数据库采用的字符集
COLLATE:指定数据库字符集的比较方式
mysql的一些常用指令
①如何查看,创建数据库的指令:
show create databse 数据库名;
② 显示数据库
指令 show databases;
③查看创建数据库的指令
show create database 数据名;
④删除数据库:
drop database 数据库名
⑤ 如何指定使用某个数据库
use 数据库名;
⑥ 如何备份和恢复数据库.
mysqldump –u 用户名 –p密码 数据名 > 存放路径
该指令,需要在dos控制台下直接执行
恢复数据库:
1.创建一个数据库 mydb2 ,但是这个数据库目前是空.
2.use 数据名
3.在mysql 控制台下 使用 source 备份文件路径
创建表
基本语法
create table 表名 (
列名 列的数据类型,
....
) character set 字符集名称 collate 校对规则
案例 :
创建一张用户表
create table users (
id int ,
name varchar(64),
pwd varchar(64),
birthday date)
mysql数据类型(重点)
①数值型:
1. bit(m) m默认为 1 最大 64
案例
create table test1 (id bit(1)); ---//这里显示乱码?
2. tinyint [unsigned] 如果是有符号则表示 -128 到 127 ,如果是无符号 0-255
案例
create table test3(num tinyint) -- -128 到 127
create table test4(num tinyint unsigned) 0 --- 255
4.smallint
samllint 是两个字节表示的.
带符号是负的 2的15次方到2的15次方-1 ,无符号2的16方 -1
6.float FLOAT[(M,D)] [UNSIGNED] 是定长
m : 表示有效位
d: 表示小数点有几位
案例:
create table test5( num float);
create table test6(num float(5,1));
7. double
其用法和float 类似,只是表示的范围更大,也是定长
8. numeric(m,d) 用于表示小数,或者整数
create table test7 (num numeric); //这样其实就是可以存放整数.
create table test8 (num numeric(5,2));//这样就可以表示 有效为5,小数点有两位的数
②字串类型
常用的有
(1)char(m) m 范围是 0-255, 定长.
char(20) 如果你存放 ‘abc’ 字串,实际在表‘abc ’;
案例:
create table test11 (name char(20));
☞ 小技巧:
mysql 自带的client 默认支持 utf8 码,所有我们在添加中文的时候,需要设置让client支持gbk
* show variables like ‘char%’; //显示关于字符的设置参数
* set character_set_client=gbk; //可以存中文
* set character_set_results=gbk; //可以看中文
③日期类型
(1)date 日期 (年-月-日)
create table test12(birthday date);
对于date 只保存 年-月-日
(2)datetime 日期时间类型
create table test13(hiredate datetime);
(3)timestamp 邮戳: 该类型可以保存 年-月-日 : 时:分:秒
它和datetime 最大的区别是,当你 update 某条记录的时候,该列值,最自动更新
create table test14 (name varchar(64) , sal float, hiredate1 timestamp, hiredate2 datetime);
建议: 如果不知道该不该用 timestamp ,就不要用.
dual ---虚表 专门用来测试的
now()返回当前的时间