1、MySQL安装成功后的进入方式
/第一种方式进入:
点击开始--->所有程序--->Mysql-->Mysql Server5.0--->Mysql Command Line Client 点击
提示Enter password: root 回车
即可进入Mysql操作界面:
show databases;//显示所有的数据库
use test;//选择并使用test数据库
show tables;//显示test库中所有表
exit 退出
第二种进入方式:
开始--运行输入cmd 回车
cd/进入 c盘根目录
cd 切换到:
C:/Program Files/MySQL/MySQL Server 5.0/bin>
在此目录中采用
mysql - u root -p
mysql -h 127.0.0.1 -u root -p root
回车
提示Enter password: root 回车
即可进入Mysql操作界面:
show databases;//显示所有的数据库
use test;//选择并使用test数据库
show tables;//显示test库中所有表
exit 退出
第三种方式进入:
开始--运行输入cmd 回车
cd/进入 c盘根目录
cd 切换到:
C:/Program Files/MySQL/MySQL Server 5.0/bin>
在此目录中采用
mysql - u root -p 数据库名称
mysql -h 127.0.0.1 -u root -p root 数据库名称
回车
即可进入Mysql操作界面: 在此种直接可以使用 book数据库
show tables;//显示test库中所有表
exit 退出
2、密码设置:
当用户没有设置密码时:
添加密码:
mysqladmin -uroot -password ab12
注:因为开始时root没有密码,所以-p旧密码一项就可以省略了。
当用户存在密码时:
修改密码:
cd/进入 c盘根目录
cd 切换到:
C:/Program Files/MySQL/MySQL Server 5.0/bin>
采用命令:
mysqladmin -uroot -proot password 123
回车后密码及更新为123;
3、增加用户:
(注意:和上面不同,下面的因为是MYSQL环境中的命令,所以后面都带一个分号作为命令结束符)
格式:grant select on 数据库.* to 用户名@登录主机 identified by “密码”
第一种:
增加一个用户test1密码为abc,让他可以在任何主机上登录,并对所有数据库有查询、插入、修改、删除的权限。首先用以root用户连入MYSQL,然后键入以下命令:
grant select,insert,update,delete on *.* to test1@“%” Identified by “abc”;
但增加的用户是十分危险的,你想如某个人知道test1的密码,那么他就可以在internet上的任何一台电脑上登录你的mysql数据库并对你的数据可以为所欲为了,解决办法见例第二种:
第一种:增加一个用户test2密码为abc,让他只可以在localhost上登录,并可以对数据库mydb进行查询、插入、修改、删除的操作(localhost指本地主机,即MYSQL数据库所在的那台主机),这样用户即使用知道test2的密码,他也无法从internet上直接访问数
mysql> grant select,insert,update,delete on book.* to test2@localhost Identified by "abc";
如果你不想test2有密码,可以再打一个命令将密码消掉。
mysql> grant select,insert,update,delete on book.* to test2@localhost Identified by "";
下面来看看MYSQL中有关数据库方面的操作。注意:必须首先登录到MYSQL中,以下操作都是在MYSQL的提示符下进行的,而且每个命令以分号结束。
desc admin;//显示表的结构 字段 字段类型 字段是否为null 是否是主键 额外信息等
create database 数据库名称;//创建数据库
show databases;//查看创建数据库是否成功 显示所有数据库的名称
use 数据库名称;//使用此数据库
show tables;//查看此数据库中的所有表 的名称
4、表的概念:
数据库中包含一个或多个表;
表:是行和列组成的。 行称为记录,是组织数据的单位;
列被称为字段,每一个列表示记录的一个属性。
注意事项:
在特定的表中,列的名称必须是唯一的,但相同列名可以在数据库中不同的表中存在|使用。
在表中的行与列的次序是任意的。
表:是数据的集合,是用来存储数据和操作数据的逻辑结构。
案例:
学生信息表 =====>类
学号 姓名 性别 班级编号 籍贯 年龄 ====>学号 姓名 性别 班级编号 籍贯 年龄
0x01 mm m 09 beijing 20 =====>类的一个实例|对象 都对应数据库中一条记录
5、数据类型
字段的数据类型:
MySQL中提供了三种数据类型:
1、数值
2、字符串
3、日期
数值:
tinyint 非常小的整数 -128-127 1个字节
smallint 较小的整数 -2的15次方 --2的15次方减去1 2个字节
mediumint 中等大小的整数 -2的23次方 --2的23次方减去1 3个字节
int 标准的整数 -2的31次方 --2的31次方减去1 4个字节
big int 大整数 -2的63次方 --2的63次方减去1 8个字节
float 单精度浮点型 4个字节
double 双精度浮点型 8个字节
字符型:
char CHAR列的长度固定为创建表时声明的长度。长度可以为从0到255的任何值
varchar VARCHAR列中的值为可变长字符串。长度可以指定为0到65,535之间的值
binary
varbinary
BLOB是一个二进制大对象,可以容纳可变数量的数据。有4种BLOB类型:它们只是可容纳值的最大长度不同。
·tinyblob:仅255个字符
·blob:最大限制到65K字节
·mediumblob:限制到16M字节
·longblob:可达4GB
在每个MySQL的文档(从MySQL4.0开始)的介绍中,一个longblob列的最大允许长度依赖于在客户/服务器协议中可配置的最大包的大小和可用内存数。
你可能对在BLOB中存储大型文件非常谨慎,但是请放心使用,MYSQL提供了这样的灵活性!最大包的大小可容易地中的在配置文件中设置。例如:
一,Windows通过文件my.ini (在系统盘)
[mysqld]
set-variable = max_allowed_packet=10M
二,linux通过etc/my.cnf
[mysqld]
max_allowed_packet = 16M
你能指定几乎任何你需要的大小。默认是1M。
TEXT:
有4种TEXT类型:
TINYTEXT、
TEXT、
MEDIUMTEXT 、
LONGTEXT。这些对应4种BLOB类型,有相同的最大长度和存储需求。
SET是一个字符串对象,可以有零或多个值,其值来自表创建时规定的允许的一列值。指定包括多个SET成员的SET列值时各成员之间用逗号(‘,’)间隔开。这样SET成员值本身不能包含逗号。
例如,指定为SET('one', 'two') NOT NULL的列可以有下面的任何值:
ENUM是一个字符串对象,其值来自表创建时在列规定中显式枚举的一列值。
在某些情况下,ENUM值也可以为空字符串('')或NULL:
· 如果你将一个非法值插入ENUM(也就是说,允许的值列之外的字符串),将插入空字符串以作为特殊错误值。该字符串与“普通”空字符串不同,该字符串有数值值0。后面有详细讨论。
· 如果将ENUM列声明为允许NULL,NULL值则为该列的一个有效值,并且 默认值为NULL。如果ENUM列被声明为NOT NULL,其默认值为允许的值列的第1个元素。
每个枚举值有一个索引:
· 来自列规定的允许的值列中的值从1开始编号。
· 空字符串错误值的索引值是0。这说明你可以使用下面的SELECT语句来找出分配了非法ENUM值的行:
日期类型:
DateTime YYYY-MM-DD HH:MM:SS 从1000-01-01 00:00:00 到9999-12-31 23:59:49
date YYYY-MM-DD 从1000-12-31 至 9999-12-31
timestamp YYYYMMDDHHMMSS
time HH:MM:SS
year YYYY
//通过mysql.chm 3教程中的3.3.2创建表pet
7、创建表:
需要考虑:表包含哪些内容。 列===> 行 记录
宠物表 pet 包含字段 列-->列的名称 列的数据类型 列的长度 列是否为空 列是否为主键 是否使用约束
宠物的名称:name varchar 20 null
宠物的主人:owner varchar 20 null
宠物的性别:sex char 1
宠物的种类:species varchar 20
宠物的出生日期:birth date
宠物的死亡日期:death date
创建数据库
create database educsdn; //创建数据库
show databases; //查看是否创建成功
use educsdn;//使用数据库
然后执行创建的命令
使用Transact-SQL语言创建表
creat table 表名(
字段名称 数据类型 约束条件,
字段名称 数据类型 约束条件,
字段名称 数据类型 约束条件
);
创建pet表命令如下
mysql> create table pet
-> (
-> name varchar(20),
-> owner varchar(20),
-> species varchar(20),
-> sex char(1),
-> birth date,
-> death date
-> );
Query OK, 0 rows affected (0.08 sec)
show tables;//查看表是否创建成功
desc pet;//查看表的结构
<