PHP的MySQL扩展:MySQL数据库概述
来源:http://www.ido321.com/1023.html
一、SQL:结构化查询语言
SQL(Structured Query Language)是高级的非过程化变成语言,专门用于查询和修改数据库的信息以及对数据库进行管理和维护的标准语言。SQL语言结构简单,功能强大,得到了众多DBMS的支持。
SQL分为四个部分:
数据定义语言(DDL):用于定义和管理数据对象,包括数据库、数据表等。如create/drop/alter等
数据操作语言(DML):操作数据库对象中包含的数据,如insert/update/delete等
数据查询语言(DQL):查询数据库对象中包含的数据,并返回数据结果,如select
数据控制语言(DCL):管理数据库对象,包括权限管理和数据更改,如grant/revoke/commit/rollback等
二、MySQL的常见操作
1、连接和关闭:mysql –h 【服务器主机地址】-u 用户名 –p 用户密码 quit和exit用于关闭连接
2、创建用户和授权:GRANT 权限 ON 数据库.数据表 TO 用户名@登陆主机 IDENTIFIED BY “密码”
1: //添加新用户,名为phper 密码dwqs,在任何主机登陆,对所有数据库拥有查询、插入、修改、删除权限
2: //创建用户前,先以root用户登陆
3: GRANT SELECT,INSERT,UPDATE,DELETE ON *.* TO phper@"%" IDENTIFIED BY "dwqs"
4:
5: //只对mydb数据库创建用户并授权
6: GRANT SELECT,INSERT,UPDATE,DELETE ON mydb.* TO phper@localhost IDENTIFIED BY "dwqs"
3、数据库操作
1: //创建名为test的数据库
2: create database [if not exists] test;
3: //删除test
4: drop database [if exists] test
5: //显示数据库列表
6: show databases
7: //使用test数据库
8: use test
4、数据表操作
1: //在test中创建一个表,表名是dwqs
2: create table dwqs
3: <
4: id int not null auto_increment,
5: name varchar(20) not null default '',
6: site varchar(20) not null default 'www.ido321.com,
7: email varchar(15) not null default ''
8: >
1: //查看在test数据库的中表
2: show tables
3: //查看dwqs表的结构
4: desc dwqs 或 description dwqs
5: //删除dwqs表
6: drop table dwqs
5、数据表的内容管理
1: //插入记录
2: insert [into] 表名 [(字段名1),(字段名2),...,(字段名n)] values ('值1','值2',...,'值n')
3: //更新记录
4: update 表名 set 字段名1=表达式1[,字段名2=表达式2,...,字段名n=表达式n]
5: [where 条件] [order by 字段] [limit 行数]
6: //删除记录
7: delete from 表名 [where 条件] [order by 字段] [limit 行数]
8: //查询记录
9: select [all|distinct]
10: {*|table.*|[table.]field1[AS alias1],[table.]field2[AS alias2][,...]}
11: from tablaname[,...][in externaldatabase]
12: [where 条件][group by 字段][having 条件][order by 字段][limit 行数]
说明:在 查询中,distinct用于排除重复的数据,只返回一个,默认是all。 as用于给列标记别名: 字段名 as ‘别名’,在查询的结果中,字段名以别名显示.in用于子查询,也可以使用like进行模糊查询,如 like ‘%php%’—>包含php字样的,%表示0个或任意个字符;like ‘dw_s’—>形如dwqs,dwrs等,_表示一个任意字符。group by是对查询结果分组。同时可以再select中嵌入SQL表达式或者函数,如count();
6、修改表
1: //这个"修改"主要修改表的结构,如添加字段、修改字段属性等
2: alter table 表名 action
3: //action的具体内容
4: //添加新字段
5: alter table 表名 add 字段名 描述 [first|after 列名]
6: alter table dwqs add qq int[14] not null //为dwqs表添加一个qq字段,类型是整数,不为空
7: //修改字段
8: alter table 表名 change(modify) 列表 描述
9: alter table dwqs change qq qq varchar(15) default 0 //将qq字段的类型改为varchar,默认值是0
10: alter table dwqs modify qq varchar(15) default 0 //将qq字段的类型改为varchar,默认值是0
11: //修改表名
12: alter table 旧表名 rename as 新表名
说明:[first|after 列名]表名新字段的位置,first将字段插入第一列,after 列名将字段插入到指定列名之后。未指定该值,默认在末尾添加。
modify和change的区别:change除了更改类型,还会更改列名,所有qq字段出现了两次,前一个是旧列名,后一个是新列名。而modify 没有修改列名的功能,所有qq只出现了一次
下一篇:PHP的MySQL扩展:PHP访问MySQL的常用扩展函数
PHP的MySQL扩展:MySQL数据库概述的更多相关文章
- python 全栈开发,Day60(MySQL的前戏,数据库概述,MySQL安装和基本管理,初识MySQL语句)
一.MySQL的前戏 在学习Mysql之前,我们先来想一下一开始做的登录注册案例,当时我们把用户的信息保存到一个文件中: #用户名 |密码 root|123321 alex|123123 上面文件内容 ...
- 使用VS Code的MySQL扩展管理数据库
我将在本文告诉你如何用VS Code的扩展程序管理MySQL数据库,包括连接到MySQL.新建数据库和表.修改字段定义.简单的查询方法以及导入导出. 在许多情况下,我们需要随时查看数据库的记录来确保程 ...
- MySQL入门笔记 - 数据库概述
参考书籍<MySQL入门很简单> 1.数据库 数据库(DataBase)是一个存储数据的仓库,将数据按照特定的规律存储在磁盘上. 2.数据存储方式 数据存储方式分为3个阶段:人工管理阶段. ...
- PHP mysql扩展整理,操作数据库的实现过程分析
相关文章:PHP mysqli扩展整理,包括面向过程和面向对象的比较\事务控制\批量执行\预处理 PHPmysqli扩展整理,包括面向过程和面向对象的比较\事务控制\批量执行\预处理 从某种程度上 ...
- 第一章 数据库概述、MySQL的安装和配置
第一章 数据库概述.MySQL的安装和配置 1.为什么要使用数据库 最早是纸质文件来存储数据 缺点:不易保存,占用空间大 计算机出现以后,采用软件来进行保存(excel) 缺点:容易损坏 文件 ...
- 【MySQL】MySQL无基础学习和入门之一:数据库基础概述和实验环境搭建
数据库基础概述 大部分互联网公司都选择MySQL作为业务数据存储数据库,除了MySQL目前还有很多公司使用Oracle(甲骨文).SQLserver(微软).MongoDB等. 从使用成本来区分可以 ...
- php笔记08:数据库编程---使用php的MySQL扩展库操作MySQL数据库
1.使用php的MySQL扩展库操作MySQL数据库: php有3种方式操作MySQL数据库 (1)mysql扩展库 (2)mysqli扩展库 (3)pdo mysql扩展库与mysql数据库 ...
- mysql扩展库操作mysql数据库
环境搭建 启用mysql扩展库,在php.ini文件中去配置mysql扩展库 extension=php_mysql.dll 查询数据库 1.建库建表 //建库testcreate database ...
- php使用mysql扩展库链接mysql数据库(查询)
php链接数据库可以使用mysql扩展库,mysqli,pdo这几种方式,相比java而言要麻烦一点,因为它不像java那么统一.从代码的难易程度来说php的确要简单许多.步骤大体如下 1.打开数据库 ...
随机推荐
- DelphiXE下String转PAnsiChar(反向转换)
很多资料只提到升迁到xe,而我们调用底版本c++开发的程序,是只能按Ansi操作的,所以需要反向转换. var s:PansiChar;s:=PansiChar(AnsiString('我我我我我') ...
- HDU 4358 Boring counting 树状数组+思路
研究了整整一天orz……直接上官方题解神思路 #include <cstdio> #include <cstring> #include <cstdlib> #in ...
- LingPipe-TextClassification(文本分类)
What is Text Classification? Text classification typically involves assigning a document to a catego ...
- 函数mem_area_alloc
/********************************************************************//** Allocates memory from a po ...
- bzoj2823
最小圆覆盖 有个东西叫作随机增量法,具体可以baidu 这里来说说怎么求三点共圆 这其实就是求两条线段的交点 在编程中,我们解方程是比较麻烦的一个比较好的方法是利用相似三角形 设线段AB,CD交P,则 ...
- 玩转EasyUi弹出框
这两天在搞EasyUi的弹出框,弹出框之前也搞过很多个版本,总是觉得不那么完美,刚好最近有时间,就往多处想了想,功能基本上达到我的预期,并且在开发过程中遇到很多小技巧,特撰文如下. 走起:在EasyU ...
- Jqgrid入门-Jqgrid列数据拖动(七)
上一章提到在Jqgrid中如何设置二级表头,这一章节主要探讨Jqgrid表格里面的数据如果实现拖动功能,比如你想把第一行的数据拖到当前页的最后一行,或者其他位置. Jqgrid表格插件自己没有 ...
- UVa 253 Cube paiting
题意:输入两个骰子,判断是否等价 因为每一个面可以作顶面,共6*4种情况,枚举就可以了 #include<iostream> #include<cstdio> #include ...
- asp.net读excle的数据类型不统一取出空值问题
如果表格里某列全是数字或是字符没问题,但如果混合了全是数字和部分字符就会有部分读取为空连接EXCEL方式如下 string strConn = "Provider=Microsoft.Jet ...
- Oracle中job的使用详解
我们在项目开发中,常常会有一些复杂的业务逻辑.使用oracle的存储过程,可以大大减少java程序代码的编写工作量,而且存储过程执行在数据库上,这样可以利用oracle的良好性能支持,极大地提高程序执 ...