mysql自主学习(一)

数据库服务器  mysql->库->表->行与列

1、先建立数据库服务器

2、建立一个库

3、再建表

一、连接数据库

mysql 作为数据库服务器运行  常用的客户端  mysql_front,navcat,基于web的phpMyAdmin

还有mysql自带的命令行客户端

mysql 不是内部或外部命令...... 没有配置环境变量

1、配置环境变量 指定 mysql\bin 目录

2、每次进入到 mysql\bin 目录再运行 mysql

如何连接服务器

mysql -h(地址) localhost -u(用户) root -p(密码) 1111

information_schema 基本信息   performance_schema 性能优化

show databases 显示数据库

create databases php 创建数据库

use php 选中数据库

drop database php

不能修改数据库名字  (字符集,整理集)

show tables 查看表

create table class 创建表

rename table score(旧表名) to newscore(新表名) 修改表名

drop table class 删表

description class 查看表的结构

truncate class 清空表

二、增删改查简介

增:insert into msg (id, title, name, content) values (1, '初来乍到', '张三', '刚来能不能当老大');

删:delete from msg where id = 2;/where name = '李四';

改:update msg set id = 2, content = '偏要当老大' where name  = '李四';

查:select *from msg;  select id,title from msg;

三、解决字符集问题

默认建表一般用 utf8,而我们在windows下窗口是GBK的,因此需要声明字符集

set names gbk;

四、整型列的字节与存储范围

所谓建表,就是声明列的过程,数据以文件的形式存放在硬盘(也有存放在内存里)

不同的列类型占的空间不一样  选列的原则:够用不浪费

mysql 三大列类型

1、整型  tinyint 微小的列类型 1字节   tinyint(M指宽度) unsigned zerofill(零填充)  默认有符号

类型             字节                位                无符号                有符号

Tinyint           1                   8                0-2的8次方-1       -2的7次方-2的7次方-1     -128-127

Smallint         2                  16               0-2的16次方-1     -2的15次方-2的15次方-1  -328768-32767

Mediumint    3                  24               0-2的24次方-1      -2的23次方-2的23次方-1  8百多万

Int                 4                  32               0-2的32次方-1       -2的31次方-2的31次方-1  21亿多

alter table class add age2 tinyint unsigned;   增加列

整型列的可选属性

unsigned  无符号类型   影响存储范围

M              代表宽度      在 zerofill 时才有意义

zerofill       零填充         00001  00005  如果某列 zerofill,默认是unsigned

列可以声明默认值,而且推荐使用默认值

alter table class add age5 tinyint not null default 0;

2、小数型    浮点型与定点型

Float(M,D)     decimal(M,D) 更精确

M:精度(总位数不包含点)

create table goods(
name varchar(10) not null default '',
price float(6, 2)not null default 0.00
)charset utf8;

D:标度(小数位)

3、字符串类型

char 定长  char(M) M代表宽度 即可容纳字节数   M<=255

Varchar    varchar(M) M代表宽度 即可容纳字节数  M<=65535

区别:

M存储范围大小不同

实占空间不一样 char 实占M个字符  Varchar 有1-2个字节来标记真实的长度

末尾空格处理不一样 char 不够M个,右侧补空格,取出时,除去右侧空格

速度上定长快一些

create table stu (
name char(8) not null default '',
waihao varchar(10) not null default ''
)charset utf8;

char 与 varchar 型的选择原则

1、空间利用效率,四字成语表,char(4)

个人简介微博 140字   varchar(140)

2、速度

用户名 char 

text 文本串 大段文本  Text 不用加默认值,加了也没用

4、日期时间列类型

年---year    1个字节  1901-2155  如果输入两位 '00-69'








  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值