首页 > mysql教程 > 正文

MySQL数据库操作的基本命令实例详解

原创 2018-01-13 0 167
本文主要介绍了MySQL使用初步之MySQL数据库的基本命令,需要的朋友可以参考下,希望能帮助到大家。

一、创建数据库:

 create data data _name;

php中创建数据库的两种方法:(mysql_create_db(),mysql_query())

 $conn = mysql_connect(“localhost”,”username”,”password”) or
 die ( “could not connect to localhost”);
 mysql_create_db(“data _name”) or
 die (“could not create data ”);
 $string = “create data data _name”;
 mysql_query( $string) or
 die (mysql_error());

二、选定数据库

在创建表之前,必须要选定要创建的表所在的数据库

选定数据库:

通过命令行客户端:

use data _name

通过

php: mysql_select_db()
 $conn = mysql_connect(“localhost”,”username”,”password”) or
 die ( “could not connect to localhost”);
 mysql_select_db(“test”,$conn) or
 die (“could not select data ”);

三、创建表

create table table_name

如:

 create table table_name
 (
 column_1 column_type column attributes,
 column_2 column_type column attributes,
 column_3 column_type column attributes,
 primary key (column_name),
 index index_name(column_name)
 )

在命令行客户端需要键入整个命令

在php中使用,mysql_query()函数

如:

 $conn = mysql_connect(“localhost”,”username”,”password”) or
 die ( “could not connect to localhost”);
 mysql_select_db(“test”,$conn) or
 die (“could not select data ”);
 $query = “create table my_table (col_1 int not null primary key,
  col_2 text
  )”;
 mysql_query($query) or
 die (mysql_error());

四、创建索引

 index index_name(indexed_column)

五、表的类型

ISAM MyISAM BDB Heap

声明表类型的语法:

 create table table_name type=table_type
 (col_name column attribute);

默认使用MyISAM

六、修改表

 alter table table_name

更改表名

 alter table table_name rename new_table_name

或者(高版本中)

 rename table_name to new_table_name

添加和删除列

添加列:

alter table table_name add column column_name colomn attributes

例如:

 alter table my_table add column my_column text not null

first 指定插入的列位于表的第一列

after 把新列放在已经存在的列的后面

例如:

alter table my_table add column my_next_col text not null first
alter table my_table add column my_next_col text not null after my_other _column

删除列:

alter table table_name drop column column name

添加和删除索引:

 alter table table_name add index index_name (column_name1,column_name2,……)
 alter table table_name add unique index_name (column_name)
 alter table table_name add primary key(my_column)
 alter table table_name drop index index_name

如:

alter table_name test10 drop primary key

更改列定义:

用change或是modify命令可以更改列的名称或是属性。要更改列的名称,还必须重新定义列的属性。例如:

 alter table table_name change original_column_name new_column_name int not null

注意:必须要重新定义列的属性!!!

 alter table table_name modify col_1 clo_1 varchar(200)

七、向表中输入信息(insert)

 insert into table_name (column_1,column_2,column_3,…..)
 values (value1,value2,value3,……)

如果要存入字符串,则需要使用单引号“'”将字符串括起来,但是需要注意字符的转意

如:

insert into table_name (text_col,int_col) value (\'hello world\',1)

需要转义的字符有:单引号' 双引号” 反斜杠\ 百分号% 下划线_

可以连续使用两个单引号转义单引号

八、updata语句

 updata table_name set col__1=vaule_1,col_1=vaule_1 where col=vaule

where部分可以有任何比较运算符

如:

table folks
id fname iname salary
1 Don Ho 25000
2 Don Corleone 800000
3 Don Juan 32000
4 Don Johnson 44500
updata folks set fname='Vito' where id=2
updata folks set fname='Vito' where fname='Don'
updata folks set salary=50000 where salary<50000

九、删除表、数据库

 drop table table_name
 drop data data _name

在php中可以通过mysql_query()函数使用drop table命令

在php中删除数据库需要使用mysql_drop_db()函数

十、列出数据库中所有可用表(show tables)

注意:使用该命前必须先选定数据库

在php中,可以使用mysql_list_tables()得到表中的清单

十一、查看列的属性和类型

 show columns from table_name
 show fields from table_name

使用mysql_field_name()、mysql_field_type()、mysql_field_len()可以得到类似信息!

十二、基本的select语句

要求指出进行选择的表,以及要求的列名称。若要选定所有的列,可用*代表所有的字段名

 select column_1,column_2,column_3 from table_name

或者

 select * from table_name

用mysql_query()可向Mysql发送查询

十三、where子句

限制从查询(select)返回的记录行

 select * from table_name where user_id = 2

如果要对存储字符串(char、varchar等类型)的列进行比较,就需要在where子句中用单引号把要比较的字符串括起来

如:

select * from users where city = ‘San Francisco'

通过向where子句添加and或是or,可以一次比较几个运算符

 select * from users where userid=1 or city='San Francisco'
 select 8 from users where state='CA' and city='San Francisco'

注意:空值不能和表中的任何运算符比较,对于空值,需要使用is null或是is not null谓词

 select * from users where zip!='1111′ or zip='1111′ or zip is null

如果要找到包含任何值(除空值以外)的所有记录,可以

 select * from table_name where zip is not null

十四、使用distinct

当使用distinct时,Mysql引擎将删除有一样结果的行。

 select distinct city,state from users where state='CA'

十五、使用between

使用between可以选择在某个范围内的值,between可用于数字,日期,文本字符串。

如:

 select * from users where lastchanged between 20000614000000 and 20000614235959
 select * from users where lname between ‘a' and ‘m'

十六、使用in/not in

若某列可能返回好几个可能的值,就可以使用in谓词

 select * from users where state='RI' or state='NH' or state='VT' or state='MA' or state='ME'

可改写为:

select * from users where state in (‘RI','NH','VY','MA','ME')

如果要达到相同的结果,但结果集相反,可使用not in 谓词

 select * from user where state not in (‘RI','NH','VT','MA','ME')

十七、使用like

如果需要使用通配符,则要使用like

 select * from users where fname like ‘Dan%' %匹配零个字符
 select * from users where fname like ‘J___' 匹配以J开头的任意三字母词

Mysql中like不区分字母大小写

十八、order by

order by语句可以指定查询中返回的行的顺序,可对任意列类型排序,通过在末尾放置asc或是desc以设置按升序或是降序排列,如果不设置,默认使用asc

 select * from users order by lname,fname

可以按照需要根据任意多的列排序,也可以混合使用asc和desc

 select * from users order by lname asc, fname desc

十九、limit

limit限制从查询中返回的行数,可以指定开始的行数和希望返回的行数

得到表中的前5行:

 select * from users limit 0,5
  select * from users order by lname,fname limit 0,5

得到表的第二个5行:

  select * from users limit 5,5

二十、group by 与聚合函数

使用group by后Mysql就能创建一个临时表,记录下符合准则的行与列的所有信息

count() 计算每个集合中的行数

 select state,count(*) from users group by state

*号指示应该计算集合中的所有行

 select count(*) from users

计算表中所有的行数

可以在任何函数或列名后使用单词as,然后指定一个作为别名的名称。如果需要的列名超过一个单词,就要使用单引号把文本字符串括起来

sum() 返回给定列的数目
min() 得到每个集合中的最小值
max() 得到每个集合中的最大值
avg() 返回集合的品均值
having

限制通过group by显示的行,where子句显示在group by中使用的行,having子句只限制显示的行。

二十一、连接表

在select句的from部分必须列出所有要连接的表,在where部分必须显示连接所用的字段。

select * from companies,contacts where companies.company_ID=contacts.company_ID

当对一个字段名的引用不明确时,需要使用table_name.column_name语法指定字段来自于哪个表

二十二、多表连接

在select后面添加额外的列,在from子句中添加额外的表,在where子句中添加额外的join参数–>

相关推荐:

TP5的数据库操作

PHP使用ORM进行数据库操作

MySQL教程--通过配置文件连接数据库操作详解

以上就是MySQL数据库操作的基本命令实例详解的详细内容,更多请关注php中文网其它相关文章!

  • 相关标签:MYSQL 数据库 命令
  • 本文原创发布php中文网 ,转载请注明出处,感谢您的尊重!
  • 独孤九贱(4)_PHP视频教程

    江湖传言:PHP是世界上最好的编程语言。真的是这样吗?这个梗究竟是从哪来的?学会本课程,你就会明白了。 PHP中文网出品的PHP入门系统教学视频,完全从初学者的角度出发,绝不玩虚的,一切以实用、有用...

    独孤九贱(5)_ThinkPHP5视频教程

    ThinkPHP是国内最流行的中文PHP开发框架,也是您Web项目的最佳选择。《php.cn独孤九贱(5)-ThinkPHP5视频教程》课程以ThinkPHP5最新版本为例,从最基本的框架常识开始,将...

    ThinkPHP5实战之[教学管理系统]

    本套教程,以一个真实的学校教学管理系统为案例,手把手教会您如何在一张白纸上,从零开始,一步一步的用ThinkPHP5框架快速开发出一个商业项目。

    PHP入门视频教程之一周学会PHP

    所有计算机语言的学习都要从基础开始,《PHP入门视频教程之一周学会PHP》不仅是PHP的基础部分更主要的是PHP语言的核心技术,是学习PHP必须掌握的内容,任何PHP项目的实现都离不开这部分的内容,通...

    独孤九贱(1)_HTML5视频教程

    《php.cn原创html5视频教程》课程特色:php中文网原创幽默段子系列课程,以恶搞,段子为主题风格的php视频教程!轻松的教学风格,简短的教学模式,让同学们在不知不觉中,学会了HTML知识。 ...

    ThinkPHP5快速开发企业站点[全程实录]更新中...

    本课以最新版ThinkPHP5.0.10为基础进行开发,全程实录一个完整企业点,从后台到前台,从控制器到路由的全套完整教程,不论是你是新人,还是有一定开发经验的程序员,都可以从中学到实用的知识~~

    Thinkphp3.2.3个人博客开发

    ThinkPHP是一个快速、开源的轻量级国产PHP开发框架,是业内最流行的PHP框架之一。本课程以博客系统为例,讲述如何使用TP实战开发,从中学习Thinkphp的实践应用。模版下载地址:http:/...

    PHP实战天龙八部之仿爱奇艺电影网站

    本课程是php实战开发课程,以爱奇艺电影网站为蓝本从零开发一个自己的网站。目的是让大家了解真实项目的架构及开发过程

    独孤九贱(8)_php从零开始开发属于自己的php框架

    本课以一个极简的PHP开发框架为案例,向您展示了一个PHP框架应该具有的基本功能,以及具体的实现方法,让您快速对PHP开发框架的底层实现有一个清楚的认识,为以后学习其实的开发框架打下坚实的基础。

    独孤九贱(3)_JavaScript视频教程

    javascript是运行在浏览器上的脚本语言,连续多年,被评为全球最受欢迎的编程语言。是前端开发必备三大法器中,最具杀伤力。如果前端开发是降龙十八掌,好么javascript就是第18掌:亢龙有悔。...

    直播实录:PHP魔鬼训练营[从零开始制作个人博客]

    本站9月直播课已经结束,本套教程是直播实录,没有报上名或者漏听学员福利来了,赶紧看看吧,说不定这里就有你的菜

    2018前端入门_HTML5

    轻松明快,简洁生动,让你快速走入HTML5的世界,体会语义化开发的魅力

    JavaScript极速入门_玉女心经系列

    JavaScript能够称得上是史上使用最广泛的编程语言,也是前端开发必须掌握的三技能之一:描述网页内容的HTML、描述网页样式的CSS以及描述网页行为的JavaScript。本章节将帮助大家迅速掌握...

    PHP用户注册登录系统视频教程

    《php用户注册登录系统》主要介绍网站的登录注册功能,我们会从最简单的实现登录注册功能开始,增加验证码,cookie验证等,丰富网站的登录注册功能

    独孤九贱(7)_Bootstrap视频教程

    Bootstrap 是最受欢迎的 HTML、CSS 和 JS 框架,用于开发响应式布局、移动设备优先的 WEB 项目。为所有开发者、所有应用场景而设计,它让前端开发更快速、简单,所有开发者都能快速上手...

    PHP学生管理系统视频教程

    《PHP学生管理系统视频教程》主要给大家讲解了HTML,PHP,MySQL之间的相互协作,实现动态的网页显示和获取数据.

    独孤九贱(2)_CSS视频教程

    《php.cn独孤九贱(2)-css视频教程》课程特色:php中文网原创幽默段子系列课程,以恶搞,段子为主题风格的php视频教程!轻松的教学风格,简短的教学模式,让同学们在不知不觉中,学会了CSS知识...

    弹指间学会HTML视频教程

    《弹指间学会HTML视频教程》从最基本的概念开始讲起,步步深入,带领大家学习HTML,了解各种常用标签的意义以及基本用法,学习HTML知识为以后的学习打下基础

    独孤九贱(6)_jQuery视频教程

    jQuery是一个快速、简洁的JavaScript框架。设计的宗旨是“write Less,Do More”,即倡导写更少的代码,做更多的事情。它封装JavaScript常用的功能代码,提供一种简便的...

    最新微信小程序开发视频教程

    《最新微信小程序开发视频教程》本节课程是由微趋道录制,讲述了如何申请一个微信小程序,以及开发中需要使用哪些工具,和需要注意哪些等。

    • 小云云

      学生

    • 想不好签名了...
    • 5865篇
      文章总数
    • 167
      文章总浏览数

    头条

    推荐视频教程

  • javascript初级视频教程
  • jquery 基础视频教程
  • javascript三级联动视频教程
  • 独孤九贱(3)_JavaScript视频教程
  • 独孤九贱(6)_jQuery视频教程
  • 最新更新