MySQL常规练习

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;//查看表的结构

 <

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值