码迷,mamicode.com
首页 > 数据库 > 详细

4.数据库的基本概念

时间:2017-06-27 18:38:08      阅读:253      评论:0      收藏:0      [点我收藏+]

标签:asc   tin   免费   text   生成   测试   sel   数据表   安全   

1、数据库服务器

安装了数据库软件的电脑,就是“数据库服务器”。

安装了Apache软件的电脑,就是“WWW服务器”。

数据库服务器,提供对数据的管理、更新、安全、事务等方面功能。

举例:数据库服务器,可以看成是一个“文件柜”。

2DBMS

DBMS(Database Management System)数据库管理系统,是一个管理数据的大型软件。

常用DBMS软件有哪些?

l Access:是微软的小型数据库。

l SQL Server:是微软的大中型数据库。

l Oracle:是美国甲骨文公司的产品。大型、或超大型数据库。

l MySQL:原始瑞典的AB公司产品。后来被甲骨文公司收购。大家认为:MySQL只适用中小型网站数据库。是免费的产品。

3、数据库

数据库:存储数据的仓库。

举例:数据库,可以看成是一个“文件柜”中的“小格子”。还可以看成是不同的“文件夹”。

4、数据表

数据表是存储数据的真正的地方。

举例:数据表,可以看成是一个具体的“文件”。其实,就是一张“学生成绩表”。

5、记录、字段、数据

技术分享

技术分享

MySQL登录和退出——CMD模式操作

1、登录到MySQL服务器

l 语法格式:mysql.exe h主机名 u用户名 p密码

l 参数说明:

u mysql.exemysql服务器的主应用程序。

u -h代表MySQL数据库主机名(MySQL数据库端口号3306)。如:localhost127.0.0.1

u -u代表MySQL用户名。如:root

u -p代表MySQL密码。如:root

u 注意:各个参数之间用空格隔开。

l 举例:mysql –hlocalhost –uroot -proot

技术分享

技术分享

2、退出MySQL客户端

 

 

MySQL数据库操作

1、显示数据库

l 语法:SHOW DATABASES;

 技术分享

2、创建数据库

l 语法格式:CREATE DATABASE [IF NOT EXISTS] db_name [CHARSET utf8]

l 参数说明

u create database是系统命令。

u IF NOT EXISTS 是可选项。是一个条件判断。如果不存在,则创建数据库。

u db_name:是自定义的数据库名称。

数据库名称的命名规则,与PHP变量一样。

包括 a-z0-9 _这些符号。

n 不区分大小写。

u CHARSET是设置数据库的默认字符集。默认字符集为lain1

注意:如果设置为UTF8,不能带中划线。PHP中要求必须带中划线。

l 举例:

u create database 007online;  //默认字符集是latin1

u create database if not exists 007online;  //如果数据库不存在,再进行创建

u create database 007online charset utf8;  //指定数据库的默认字符集为utf8

技术分享

3、删除数据库

n 语法:DROP DATABASE [IF EXISTS] db_name;

 技术分享

 

 技术分享

1、查看数据库的字符集

含义:显示创建数据库的SQL语句

n 语法:SHOW CREATE DATABASE db_name;

n 举例:show create database 007online;

技术分享

2、通过MySQL命令来修改数据库的字符集

n 语法:ALTER DATABASE db_name DEFAULT CHARACTER SET utf8

n 举例:alter database 007online default character set utf8

 技术分享

MySQL数据表操作

1、选择数据库

n 描述:选择当前要操作的数据库,当前数据库只能是一个。

n 语法:USE db_name;

n 举例:use 007online;

 

2、显示所有的数据表(文件)

n 描述:显示当前数据库下的,所有数据表。

n 语法:SHOW TABLES;

技术分享

3、创建数据表的结构

n 语法:CREATE TABLE table_name(col_name col_type col_attr, col_name col_type col_attr,……)

n 参数:

u col_name:列的名称。

u col_type:列的类型。如:tinyintintbigintcharvarchartextdatetime等。

u col_attr:列的属性。

n NOT NULL | NULL:该列是否可以为空。

n DEFAULT default_value:指该列的默认值。

l default_value默认值可以是字符串,也可以是整型。

n AUTO_INCREMENT:该列为自动增长型,或者自动编号。要求该列必须是整型。一个表只能有一个auto_increment属性

n PRIMARY KEY:主键。指定该列的值具有唯一性,主键所在的列不能为空。一个表的主键只能有一个

n id字段的属性必须有:NOT NULL AUTO_INCREMENT PRIMARY KEY

u 一个数据表,由多个列构成。多个列定义之间用英文下的逗号隔开。

技术分享

技术分享

技术分享

4、删除数据表

l 语法:DROP TABLE [IF EXISTS] table_name;

l 举例:drop table news;

 技术分享

5、修改数据表

使用数据表,使用的命令 alter table 。但是这个命令非常复杂,建议看懂就行。

 

技术分享

describe显示表的结构定义

l 语法:DESCRIBE table_name;

 技术分享

MySQL数据类型

1、整型浮点型

1)整型

tinyint    最小型整数  0-255(-128 ~ +127)   1个字节

smallint   小型整数    0-65535            2个字节

mediumint 中型整数    0-1677万           3个字节

int          一般整数    0-21亿             4个字节

bigint       最大整数    0-42亿              8个字节

2)浮点型

float(M,D) 单精度(精确到小数点后7)    M代表长度,D代表小数位数

举例:float(6,2) //总长度为6位,小数位数为2位,小数点不算。存的最大值为9999.99

double(M,D) 双精度(精确到小数点后15)   M代表长度,D代表小数位数。

 

2、日期时间型

date   日期型   格式为: “YYYY-mm-dd”

time   时间型   格式为: “00:00:00”

3、字符和文本型

1)字符型

char(M)    0-255  固定长度的字符串   如:邮编、手机号码、电话号码等

varchar(M) 0-65535  可变长度的字符串   如:新闻标题、家庭地址、毕业院校等。

2)文本型

tinytext     0-255      小型文本

Text        0-1670万  中型文本

longtext    0-42亿     大型文本

问题:当向数据表中添加一条记录,且记录的内容含有中文时,为何添加不进去?

技术分享

技术分享

SQL基础

1SQL简介

SQL(Structured Query Language)结构化查询语言。

SQL就是操作数据的一种语言。

2、增加记录

n 语法格式:INSERT INTO table_name(字段1,字段2,字段3,) VALUES(1,2,3,)

n 语法说明

l INSERT INTO是添加数据的SQL命令。

l table_name要添加的数据表。

l 表的字段列表,要与值的列表,一一对应。

l 字段的类型,要与值类型一样。

l 如果还有没有列出的字段,将用默认值代替。

n 举例:insert into news(title,content,hits) values(‘标题’ , ‘内容’ , 100)

技术分享

3、删除记录

n 语法:DELETE FROM table_name [WHERE 条件]

n 说明:

u WHERE条件:如果省略,将删除所有记录

n 举例:

u delete from news;    //删除所有的记录

u delete from news where id>10;  //删除id>10所有记录

u delete from news where id>=10 and id<20;   //删除id>10id<20的记录

u delete from news where author = ‘admin’ and id<100; //删除id<100author = ‘admin’记录

 技术分享

4、修改记录

n 语法:UPDATE table_name SET 字段1 = 新值1,字段2=新值2,[WHERE条件]

n 说明:

u 需要更新的字段列出,不需要更新的不用管它。

u 字段的顺序可以修改。

u WHERE条件不能省略,如果省略,所有记录都会修改完一样。

n 举例:

u update news set title = ‘新标题’,content = ‘新内容’ where id=50;

u update news set content = ‘新内容’ , title = ‘新标题’ where id=50;

技术分享

5、查询记录

n 语法:SELECT 字段列表|* FROM table_name [WHERE条件] [ORDER BY排序][LIMIT限制输出]

n 参数:

u 字段字列表:查询某些字段的数据,各字段之间用逗号隔开,字段之间没有顺序。

u *:表示显示所有列的数据。如:select * from news;

u where:指查询的条件。

n SELECT * FROM news WHERE id<100;

n SELECT * FROM news WHERE id<100 and hits<100;

n SELECT * FROM news WHERE id=100 OR hits<50;

u ORDER BY:字段排序。

语法:ORDER BY 字段 [ASC|DESC]

n ASC表示“升序”排列(默认)DESC表示降序排列。

n SELECT * FROM news ORDER BY id DESC; //id降序排列

n SELECT * FROM news ORDER BY hits;  //hits升序排列

u LIMIT:限制输出

语法:LIMIT startrow,pagesize;

n 参数:

l startrow从指定的行数,开始返回数据。

l pagesize返回的记录数。

n 举例:

l LIMIT 0,10;  //从第0行起,返回10条记录

l LIMIT 10,10;  //从第10行起,返回10条记录

l LIMIT 20,10;  //从第20行起,返回10条记录

技术分享

导入SQL文件,用于测试使用

Saixinjituan.sql

注意:导入SQL文件时,要先创建数据库,然后再导入数据。

      创建的数据库的字符集必须是UTF8,否则会乱码。

 

 技术分享

 

 技术分享

案例“赛鑫集团”的配置

技术分享

技术分享

技术分享

 

4.数据库的基本概念

标签:asc   tin   免费   text   生成   测试   sel   数据表   安全   

原文地址:http://www.cnblogs.com/supermanGuo/p/7086224.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!