PHP基础03(数据库,数据表)

1.虚拟主机的配置

将一台服务器划分为若干个“”小空间“”,每个空间放一个小网站,这个小网站具有所有的功能(www服务,ftp服务,email服务)
虚拟主机分类:
a.基于域名的虚拟主机.(一个ip上可以有n多个域名)【主要】
b.基于ip的虚拟主机(多个ip,也就是多个网卡)

NameVirtualHost命令,是配置基于域名的虚拟主机的命令之一
语法格式:NameVirtualHost[IP地址:]端口号

NameVirtualHost *:80 // 所有IP的80端口
Include conf/vhosts.conf // 虚拟主机的配置文件

vhost.conf的格式
<VirtualHost *:80> //所有ip的80端口
ServerName www.baidu.com #服务器名称就是域名
DocumentRoot "E:\itcast" #网站根目录
DirectoryIndex index.html index.php index.htm #虚拟网站的首页文件名
</VirtualHost>

*注意:重要,将#注释内容,单独放一行,不要写在Allow from all这样的后面

对目录配置权限:
<Directory "e:\itcast">
Options Indexes
Order Allow,Deny
Allow From All
</Directory>

虚拟主机的配置高于主配置

2.一般的html中嵌入php,可以在文件的任何位置直接写php代码就好啊,但是这个文件你要保存为.php为后缀。

3.注意:
password()是MySQL的一个加密函数
md5()是PHP忠的一个加密函数

4.数据库操作

一、创建数据库
语法:Create Database [IF NOT EXISTS] db_name [CHARSET]
[CHARSET]设置数据库的字符集,如果不设置会用MySQL的默认字符集latin1;
eg: CREATE DATABASE IF NOT EXISTS db_user CHARSET utf8;
CREATE DATABASE db_user; // 默认使用字符集latin1;

如果设置CHARSET utf8
在sqladmin->操作->整理->可以看到utf8_general_ci

二、删除数据库
语法: DROP DATABASE [IF EXISTS] db_name;
[IF EXITST] 是可选项,如果存在,在进行删除,不会出现错的信息
eg:DROP DATABASE IF EXITST db_liaomaer; // 删除数据库db_liaomaer

三、更改数据库的字符集
eg:create database if not exists db_liao charset utf8; // 这个utf8就是字符集.默认是latin1,如果要修改默认的字符集
1.更改MySQL的默认字符集
位置:\phpStudy\MySQL\my.ini
客户端(Client Section):default-character-set=latin1;改为gbk或者utf8; // 最好是utf8
服务端(Server Section):default-character-set=latin1;改为gbk或者utf8; // 最好是utf8

*注意:如果通过这种方法修改默认,请重新启动MySQL

2.在MySQL客户端使用命令修改
ALTER DATABASE db_name DEFAULT CHARACTER SET gbk 或者utf8;

5.数据表的操作

数据库是文件夹,数据表是具体文件(像word表)

我们打开实质文件夹(数据库):看到有两个文件
db.opt(数据库的字符集设置)
news.frm()

一、显示数据库中的表
语法:USE db_name; // 首先选择数据库,对这个数据库操作
show tables; 或者 show tb_name FROM db_name; // 显示当前数据库中的表

二、创建数据表
语法结构:
CREATE TABLE tb_name(
列名1 猎德数据类型 猎德属性,
列名2 列的数据类型 列的属性,
列名3 列的数据类型 列的属性
);

eg: // *注意:这个text 数据类型可以存很长的长度的字符串 null 指的是可以为空 not null 指的是不能为空 addate 时间戳

CREATE TABLE tb_news(
id int not null auto_increment primary key,
title varchar(50) not null,
content text null,
addate int(16) not null
);

列的常用属性
(1)not null | null 指定列的只可以为空,还是不空,默认为nullm一般id字段不能为空
(2) DEFAULT default_value, 设置某个列的默认值,默认值可以是字符串或者数字。
eg: sex tinyint not null DEFAULT 1; // 默认是1

select Host from tb_user where User='root'; //

primary key : 主键索引。 主键索引必须给具有auto_increment属性的字段来添加。索引:相当于一本书的目录一样,通过目录查询要看的内容
id字段是每个数据表都必须有的字段,id字段必须具有着三个属性:not null ,auto_increment,private key

三、MySQL数据类型

整形、浮点型、字符型、文本型、日期型

mysql -uroot -proot;
show databases;
create databases if not exists db_gz charset utf8;
drop database if exists db_gz;
show tables;
create table tb_name(
id tinyint not null auto_increment private key,
title varchar(50),
addate int(16) default 0
); // *注意,命令行创建表的时候,需要有分行

show create table tb_01; // 显示创建这个tb_01的命令语句是什么.
describe tb_01; // 查看表的结构

a.修改数据表:
(表的结构)
语法:ALTER TABLE tb_name .....
提示:使用phpMyAdmin来修改

b.删除数据表
语法:DROP TABLE tb_name FROM db_name;

show命令:
显示MySQL主机的所有数据库:show databases;
显示某个数据库中的所有表格:show tables [FROM db_name]
显示某个数据库中表的创建语句:show create table tb_name;
显示某个数据库中表的结构:show table
describe tb_name; // 显示表的结构

整形、浮点型、字符型、文本型、日期型
一、整形:

tinyint: 最小整数,一个字节表示,-128~127
smallint
mediumint
int
bigint

二、浮点型:
单精度和双精度

Float: 可以精确到小数点后7位. m代表总长度,d代表小数数位; float(6, 2) 表示总长度为6位(不含小数点),小数位是2位.如1200.65
double:可以精确到小数点后15位

三、字符型:

char(M): 固定宽度 * 取值范围0-255个字符. 255个英文字符或者255个中文字符。如:新闻标题,帖子标题等.
char[10],假设我存了5个字符,其他的空间会用空格填充.
varchar(M): 自动伸缩型 * 取值范围 0-65535个字符.
varchar(10),假设我存了5个字节,它的长度应该是6,这里多出的1是字符的长度.

四、文本型:

tinytext:一个字节,0-255个字符
text:2个字节* 这个用的比较多

五、日期时间型:

Date:格式YYYY-MM-DD存储.如:2016-09-22
Time:格式YYYY-MM-DD HH:mm:ss存储
Timestamp:格式(总长度19个字符) YYYY-MM-DD HH:mm:ss

$addate = time(); //
Date("Y-m-d H:m:s");

*注意:>mysql -hlocalhost -uroot -proot 不要加;
*注意:windows 下的cmd.exe 默认字符集应该是gbk
因为MySQL的客户端默认字符集,应该是GBK,因此显示字符集应该改为gbk
我们在phpMyAdmin中可以看到 操作->整理:看到字符集
我们可以再命令行中输入:set names gbk;

只需要设置数据库中的字符集,数据表将继承数据库中的字符集

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,968评论 6 482
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,601评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 153,220评论 0 344
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,416评论 1 279
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,425评论 5 374
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,144评论 1 285
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,432评论 3 401
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,088评论 0 261
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,586评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,028评论 2 325
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,137评论 1 334
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,783评论 4 324
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,343评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,333评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,559评论 1 262
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,595评论 2 355
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,901评论 2 345

推荐阅读更多精彩内容

  • MySQL5.6从零开始学 第一章 初始mysql 1.1数据库基础 数据库是由一批数据构成的有序的集合,这些数据...
    星期四晚八点阅读 1,136评论 0 4
  • MySQL 数据库常用命令 1、MySQL常用命令 create database name; 创建数据库 use...
    55lover阅读 4,772评论 1 57
  • 什么是数据库? 数据库是存储数据的集合的单独的应用程序。每个数据库具有一个或多个不同的API,用于创建,访问,管理...
    chen_000阅读 4,030评论 0 19
  • 有两个好朋友,从小一起长大,从幼儿园直到高中年年在一起,兴趣、喜好、成绩、连性格都差不多,一直姐妹相称。 大学毕业...
    兔妈妈1503阅读 501评论 6 0
  • 在我的上一篇文章中介绍了HTML的相关内容,一个漂亮的网页仅仅靠HTML标签是很难做出来的,比如当我们需要页面具有...
    你叫呆小瓜阅读 559评论 1 5