传智播客mysql.docx

上传人:b****3 文档编号:684664 上传时间:2022-10-12 格式:DOCX 页数:48 大小:611.12KB
下载 相关 举报
传智播客mysql.docx_第1页
第1页 / 共48页
传智播客mysql.docx_第2页
第2页 / 共48页
传智播客mysql.docx_第3页
第3页 / 共48页
传智播客mysql.docx_第4页
第4页 / 共48页
传智播客mysql.docx_第5页
第5页 / 共48页
点击查看更多>>
下载资源
资源描述

传智播客mysql.docx

《传智播客mysql.docx》由会员分享,可在线阅读,更多相关《传智播客mysql.docx(48页珍藏版)》请在冰豆网上搜索。

传智播客mysql.docx

传智播客mysql

数据库服务器——>N多库——>N表——>行与列

 

1先建立数据库服务器

2建立一个库

3再建表

 

Mysqld服务器

 

一、连接数据库

1连接数据库所需要的工具:

Mysql作为数据库服务器来运行,任何满足mysql通信规的软件都可以作为客户端来连接服务器

常用的客户端:

mysqlfrontnavcat,基于web的phpMyAdmin,还有mysql自带的命令行客户端

2以命令行连接为例:

注意:

如果在命令行提示下出现如下提示:

则说明:

没有配置环境变量,导致系统找不到mysql.exe

解决:

1.配置环境变量,制定mysql\bin目录

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

 

3如何连接服务器

服务器地址(可用ip,域名):

端口(3306)

用户名

密码

Mysql–hlocalhost–uUserName–pPassWd

-h如果不写,则默认连localhost

Mysql–hlocalhost–uroot–p回车输入密码

Mysql–uroot–p123456

 

表格(多行多列,二位结构)

通讯录表:

年龄

手机号

薪资登记表:

性别

公司

工资

饭补

多表成库,表存于库下面,一个库下边可以有多个表

库存在于数据库服务器,一个服务器下面可以有多个库

 

入门语句:

1查看当前服务器下面,有哪些库(database)

showdatabases;

2创建一个数据库

createdatabaseDBName[字符集声明,整理声明];

3删除数据库

dropdatabasetest2;

4修改数据库

(只能修改字符集和整理集,简单,先自己看)

能否修改数据库的名字?

答不能!

5选择数据库

在进行表,行的相关操作时,要先选择数据库

useDBName;//选择相应的数据库

mysql>useshop;

Databasechanged

6如何查看一库下面的所有表

showtables;

7如何删除一表

droptabletableName;

8如何修改表名

renametableoldName(旧表名)tonewName(新表名);

9查看表结构

desctableName;//查看表结构

10最简单的建表结构

createtable表名(

列1名称列1类型,

列2名称列2类型(最后一列前不要加‘,’)

);

这里先记住两种最常用列类型int(整形),varchar(字符串)

实际操作:

创建一学籍表,有2个字段,id,name,分别代表学号和

createtablestu(

idint,

namevarchar(10)

);

11解决字符集问题:

默认建表一般用utf8,而我们在windows下窗口时gbk的,

因此,需要声明字符集。

setnamesgbk;

 

增删改查例子

 

insertintomsg增加

(id,title,name,content)

values

(1,‘初来乍到’,‘三’,‘刚来能不能当老大’);

insertintomsg

(id,title,name,content)

values

(1,‘又来了’,‘四’,‘你只能千年老二’);

 

updatemsg更新、改

set

id=2,

content=‘偏要当老大’

where

name=‘四’;

插入多行

insertintomsg

(id,title,name,content)

Values

(3,‘3标题’,‘备’,‘雌雄双剑’),

(4,‘4标题’,‘关羽’,‘青龙偃月刀’),

(5,‘5标题’,‘飞’,‘丈八蛇矛’);

 

#删除

deletefrommsgwhereid=2;

 

#查

select*frommsg;查询整表容

selectid,titlefrommsg;查询id,title这两列

selectid,titlefrommsgwhereid>2;查id>2的容

 

发现的一小问题

语句打错以后应该退出本语句,再继续打新的语句也可以打\c,提出本语句

如何破解数据库的密码:

1.通过任务管理器或者服务管理,关掉mysql(服务进程)

2.通过命令行+特殊参数开启mysqld

Mysqld--skip-grant-tables

3.此时,mysqld服务进程已经打开,并且,不需要权限检查。

4.mysql–uroot无密码登陆服务器

5修改权限表

A:

usemysql;

B:

updateusersetpassword=password(‘11111’)whereuser=’root’;

C:

flushprivileges;

6.通过任务管理器,或服务管理,关掉mysqld服务进程

7.再次通过服务管理,打开mysql服务

即可用修改后的新密码登陆、

 

增删改查案例过程分析:

用户注册表单收集,提交数据,注册页面收集到表单的数据后,形成insert语句,user表插入该条数据,用户注册完成.

前台用户中心,用户新昵称,根据新昵称和用户id,形成update语句

完成昵称修改.

管理员后台点击会员列表,此时,网页形成select语句,查询出所有会员的数据,完成会员的查看.

管理员后台选中某用户并且删除,捕捉此用户的id,根据用户id形成相应的delete语句,

执行delete语句,完成用户的删除.

增删改查基本语法学习

增:

insert

Insert3问

1插入哪表?

2插入哪几列?

3这几列分别插入什么值?

Insertinto表名insertinto表名

(列1,列2……列n)

Valuesvalues

(值1,值2…..值n)(值1,值2…..值n)

值与列,按顺序,一一对应

特殊:

insert语句允不允许不写列名

答:

允许

如果没有声明列名,则默认插入所有列

因此,值应该与全部列,按顺序一一对应

 

例:

建一工资登记表

 

2插入部分列

3插入所有列

注:

文中的setnamesgbk;是为了告诉服务器,客户端用的是gbk编码,防止乱码

4插入所有列的简单

 

改:

update语句

Update4问

改哪表?

改哪几列的值?

分别改为什么值?

在哪些行生效?

 

语法:

Update表名

Set

列1=新值1,

列2=新值2,

列n=新值n....

Whereexpr

 

例:

 

删:

delete

Delete2问

从哪表删除数据?

要删除那些行?

语法:

Deletefrom表名

whereexpr

例:

 

仿ecshop建表:

 

1:

安装ecshop(打开gd扩展)

2:

安装phpMyAdmin

#建木瓜库

Createdatabasemuguacharsetutf8;

#选中木苦

Usemugua;

#创建商品表

Createtablegoods(

Goods_idintprimarykeyauto_increment,

cat_idsmallintnotnulldefault0,

goods_snchar(15)notnulldefault'',

goods_namevarchar(30)notnulldefault'',

click_countmediumintunsignednotnulldefault0,

brand_idsmallintnotnulldefault0,

goods_numbersmallintnotnulldefault0,

market_pricedecimal(7,2)notnulldefault0.00,

shop_pricedecimal(7,2)notnulldefault0.00,

all_timeintunsignetnotnulldefault0

)charsetutf8;

 

#把ecshop的商品数据导入到木瓜库

insertintomugua.goods

select

goods_id,cat_id,goods_sn,goods_name,click_count,

brand_id,goods_number,market_price,

shop_price,

add_time

fromshop.goods;

#建栏目表

createtablecategory(

cat_idsmallintprimarykeyauto_increment,

cat_namevarchar(30)notnulldefault'',

parent_idsmallintnotnulldefault0

)charsetutf8;

#把ecshop的栏目数据导入到木瓜库

insertintomugua.category

select

cat_id,cat_name,parent_id

fromshop.category;

#建品牌表

createtablebrand(

brand_idsmallintprimarykeyauto_increment,

brand_namevarchar(30)notnulldefault''

)charsetutf8;

#把ecshop的品牌数据导入到木瓜库

insertintomugua.trand

select

brand_id,brand_name

fromshop.trand;

 

查:

select5种子句

◆Where条件查询

◆groupby分组

◆having筛选

◆orderby排序

◆limit限制结果条数

where:

各种条件查询场合

常用运算符

<小于>大于!

=或<>不等于=等于<=大于等于>=小于等于in在某集合between在某围

in(值1,值2...值n),等于值1—n任意一个都行(in在某集合)

例:

selectgoods_id,cat_id,goods_namefromgoodswherecat_idin(4,5);

Between值1and值2,表示在值1和值2之间(between在某围)

例:

selectgoods_id,goods_nmae,shop_pricefromgoodswhereshop_pricebetween2000and3000;

not或!

逻辑非or或||逻辑或and或&&逻辑与

selectgoods_id,goods_name,shop_pricefromgoodswhereshop_price>=3000andshop_price<=5000orshop_price>=500andshop_price<=1000;

selectgoods_i

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 能源化工

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1