您好,欢迎光临本网站![请登录][注册会员]  
文件名称: mysql基本操作和练习手册.pdf
  所属分类: MySQL
  开发工具:
  文件大小: 231kb
  下载次数: 0
  上传时间: 2019-10-11
  提 供 者: mumu*****
 详细说明:整理了mysql的基本操作 和 练习手册. 具体目录: 一 复习前的准备 二 基础知识: 1.数据库的连接 2:库级知识 3: 表级操作: 3.1 显示库下面的表 3.2 查看表的结构: 3.3 查看表的创建过程: 3.4 创建表: 3.5 修改表 4:列类型讲解 整型: 参数解释: 数值型 字符型 日期时间类型 5:增删改查基本操作 5.1 插入数据 5.3 . 修改数据 5.4 . 删除数据 5.5 select 查询 6: 连接查询 7 子查询 8: 字符集 客服端sql编码 character_set_client 综合练习: 三 查询知识练习 1: 基础查询 whe1 show tables 32查看表的结构: 1 desc tablename: 33查看表的创建过程: 1 show create table tableName 34创建表 1 create table tbName 列名称1列类型列参数][ not null default 列2 列名称N列类型[列参数][ not null default Engine myi sam/innodb charset utf&/gbk 例子 1 create table user id int auto increment name varchar(20) not null default age tinyint unsigned not null default 0 dex id (id) Engine=innodb charset=utf& e注: innodb是表引擎,也可以是 myL sam或其他,但最常用的是 myi sam和 innodb, 9 charset常用的有utf8,gbk; 35修改表 35.1修改表之增加列: 1 alter table tbName 2add列名称1列类型[列参数][ not null default]#(ad之后的旧列名之后的语法和创建表时的列声明 352修改表之修改列 I alter table tbName 2 change旧列名新列名列类型[列参数][ not null default]#(注:旧列名之后的语法和创建表时的列声 353修改表之减少列 1 alter table tbName 2drop列名称; 3.5.4修改表之增加主键 1 alter table tbName add primary key(主键所在列名) 3 9 alter table goods add primary key (id) 该例是把主键建立在id列上 355修改表之删除主键 alter table tbName drop primary key 3.56修改表之增加索引 Lter table tbName add [unique l fulltext] index素引名(列名); 35.7修改表之删除索引 1 alter table tbName drop index索引名; 358清空表的数据 truncate tablename 4列类型讲解 整型: ● tiny int(0~255/-128~127) smallint(0~65535/-32768~32767) mediumint int bigint(参考手册112) 参数解释: ● unsigned无符号(不能为负) 0填充 ●M填充后的宽度 tinyint unsigned t(6 zerofi 数值型 浮点型 float double 1格式: float(M,D) unsigned\zerofill; 字符型 har(m)定长 char(m)变长 实存字符讠 实占空间 利用率 2 char(m) 0<=i<=M M i/m<=100% 0 <=i<=M +1,2 /i+1/2<100% 日期时间类型 ● year YYYY范围:1901~2155.可输入值2位和4位(如98,2012 ● date YYYY-MM-DD如:2010-03-14 time HH: MM: SS $4: 19: 26:32 datetime YYYY-MM-DD HH: MM: SS 0: 2010-03-14 19: 26: 32 ● timestamp YYYY-MM-DDHH:MMSS特性:不用赋值,该列会为自己赋当前的具体时间 5:增删改查基本操作 5.1插入数据 1 insert into表名(co11,co12,…) values(va11,Va12 插入指定列 2 insert into表名 values(,,,);--插入所有列 3 insert into表名 values 次插入多行 (vaL1,vaL2… vaL1,vaL2…) L1 val2 53.修改数据 1 update tablename set L2-newval2 5 6 COLN LN where条件 5.4.删除数据 1 delete from tablengeme where条件 55 select查询 条件查询 oa.条件表达式的意义,表达式为真,则该行取出 b.比较运算符=,!= oc.ike, not like(%匹配任意多个字符,匹配任意单个字符)in; not in, between and d. is null is not nul 分组g o一般要配合5个聚合函数使用max,min,sum,avg, count 筛选 having 排序 order by 限制 6:连接查询 16.1左连接 Left join.. on 3 table a left join table B on tableA. coll tableB col2 4例句: select列名 from table A left join table b on tableA.co11= tableB.co12 66.2右链接: right join 66.3内连技: inner JoLn 左右连接都是以在左边的表的数据为准,沿着左表查右表 内连接是以两张表都有的共同部分数据为准,也就是左右连接的数据之交集. 7子查询 Whee型子查询内层sq的返回值在 where后作为条件表达式的一部分 196]: select from tablea where cola =(select colb from tableb where .. from型子查询内层sq查询结果作为一张表供外层的sq语句再次查询 1例句: select+fm( select from…,) as tableName where 8:字符集 客服端sq编码 character set client 服务器转化后的sq编码 character set connection 服务器返回给客户端的结果集编码 character set results 快速把以上3个变量设为相同值: set names字符集 存储引擎 enginE=12 1 Myisan这度快不支持事务回滚 2 Innodb速度慢支持事务,回滚 ①开启事务 start transaction ②运行sq; ③提交,同时生效回滚 commit\rollback 触发器 trigger 监视地点表 监视行为:增删改 触发时间: after\before 蝕发事件:增删改 创建触发器语法 create trigger anAme after/before insert/delete/update on tableName for each row sql;--触发语句 删除触发器: drop trigger tgName; 索引 提高查询速度,但是降低了增删改的速度,所以使用索引时,要综合考虑 索引不是越多越好,般我们在常出现于条件表达式中的列加索引 值越分散的列,索引的效果越好 索引类型 primary key主键索引 index普通索引 unique index一性索引 fulltext index全文索引 综合练习 连接上数据库服务器 创建一个gbk编码的数据库 建立商品表和栏目表字段如下 商品表 goods goods id 主键 goods_name--商品名称 cat id--栏目id brand id--品牌id goods_sn--货号 goods_ number--库存量 sh。p_ price--价格 goods_ desc--商品详细描述 栏目表: category cat id--主键 栏目名称 parent _id-栏目的父id 建表完成后,作以下操作: 删除gods表的 goods_desc字段,及货号字段 并增加字段 click count--点击量 在 goods_name列上加唯一性索引 在 shop_price列上加普通索引 在ccik_ count,列上加普通索引 删除clicκ count列上的索引 对 goods表插入以下数据: I goods_id i goods_name I cat_id I brand _id I goods _sn I goods_number I shop_price i click_count 1KD876 4 8|Ecs000000 101388.00 4|诺基亚N85原装充电器 8|1|EcS000004 17|58.00 3|诺基亚原装5800耳机 8|1Ecs000002 24|68.00 5|索爱原装M2卡读卡器 7|EcS000005 8|20.00 6|胜创 KINGMAX内存卡 110|ECs000006| 15|42.00 7|诺基亚N85原装立体声耳机Hs-82|8|1|ECs000007|20|100.00 a|飞利浦99 3|4|Ecs000008 17|399.00 9 9|诺基亚E66 13|1|ECs000009 13|2298.00 20 10索爱C702c 13|7|Ecs000010 7|132800 11|索爱C702c 3|7|ECs000011 11300.00|0 12|摩托罗拉A810 13|2|ECS000012 8|98300 4 13|诺基亚5320× pressMusic|3|1|EcS000013 113100 4诺基亚5800XM 1|Ecs000014 4|2625.00 6 15摩托罗拉A810 13|2|ECS000015 3|788.00 16恒基伟业G101 12|11|Ecs000016 0|82333 3 17|夏新N7 13|5|Ecs000017 1|2300.00| 2 18夏新T5 4 5|EcS000018 12878.00 0 19|三星SGH-F258 6|ECS000019 0|858.00 20|三星BC01 3|6|ECS000020 280.00 14 21|金立A30 3|10ECs000021 40|2000.00 22|多普达 Touch HD 3|3|ECS000022 0|599900 23|诺基亚N96 5|1Ecs000023 8|3700.00 24|P806 3|9|ECS000024 148|2000.00|36 25|小灵通/回话50元充值卡13|0|ECS000025 2|48.00 0 26|小灵通/话20元充值卡 13|0|ECS000026 2|19.00 27|联通100元充值卡 15|0|Ecs000027 2|95.00 28|联通50元充值卡 15 0|ECs000028 0|45.00 29|移动100元充值卡 14|0|ECS000029 0 90.00 0 30|移动20元充值卡 0|ECS000030 9|18.00 31摩托罗拉E8 3 2|Ecs000031 1133700 32|诺基亚N85 3|1|Ecs000032 1|3010.00 三查询知识练习 1:基础查询 where的练习: 查出满足以下条件的商品 11:主键为32的商品 1 select goods_id, goods_name, shop_price from ecs_goods where goods_id=32; 1.2:不属第3栏目的所有商品 1 select goods_id, cat_id, goods_name, shop_price from ecs_goods where cat_id 13:本店价格高于3000元的商品 select goods_id, cat_id, goods_name, shop_price from ecs_goods where shop_price >3000; 14:本店价格低于或等于100元的商品 select goods_id, cat_id, goods_name, shop_price from ecs_goods where shop_price <=100 15取出第4栏目或第11栏目的商品(不许用or) select goods_id, cat_id, goods_ name, shop_price from ecs _ goods where cat id in(4, 11) 16:取出100<=价格<=500的商品(不许用and select goods_id, cat_id goods_name, shop_price from ecs_goods where shop_ price between 100 and 500 17:取出不属于第3栏目且不属于第11栏目的商品(and,或 not in分别实现) select goods_id, cat_id goods_name, shop_price from ecs_goods where cat_id -3 and cat_id! =11 select goods_id, cat_id. goods_ _name, shop_price from ecs goods where cat_id not in (3, 11); 18:取出价格大于100且小于300,或者大于4000且小于5000的商品() select goods_id, cat_ id, goods_name, shop_price from ecs_goods where shop_price>100 and shop_price <300 or shop_price >4000 and shop_price <5000 19:取出第3个栏目下面价格<1000或>3000,并且点击量>5的系列商品 select goods_id, cat_ id, goods_name, shop_price, click_count from ecs_goods where cat id=3 and(shop_ price <1000 or shop_price>3000) and click count> 5 1.10取出第1个栏目下面的商品(注意1栏目下面没商品,但其子栏目下有) select goods id, cat id, goods name, shop_ price, click_count trom ecs_ goods where cat id in(2, 3, 4, 5) 1.11取出名字以"诺基亚“开头的商品 select goods_id, cat id, goods_name,shop_ price from ecs_goods where goods_name like‘诺基亚%; 1.12取出名宇为诺基亚Nxx"的手机 select goods _id, cat_id, goods_name, shop_ price from ecs_goods here goods_name like'诺基亚N_’; 113取出名字不以"诺基亚开头的商品 select goods_id, cat_id, goods_name, shop_price from ecs_goos where goods_name not like诺基亚%; 1.14:取出第3个栏目下面价格在1000到3000之间,并且点击量>5"诺基亚"开头的系列商品 select goods_id, cat_id, goods_name, shop_price from ecs_goods where cat_id=3 and shop_price >1000 and shop_price <3000 and click_count>5 and goods_name like WEI%; select goods_id, cat_id, goods_name, shop_price from ecs _goods where shop_price between 1000 and 3000 and cat_id=3 and click_count>5 and goods_name like iEaL% 1.15一道面试题 有如下表和数组 把num值处于[2029]之间改为20 num值处于30,39]之间的,改为30 man表 I num I 25 23 29 34 37 32 45 48 52 1.16练习题 把god表中商品名为诺基亚xxx的商品,改为 HTCXXXX 提示:大胆的把列看成变量,参与运算,甚至调用函数来处理 substring(), concat(
(系统自动生成,下载前可以参看下载内容)

下载文件列表

相关说明

  • 本站资源为会员上传分享交流与学习,如有侵犯您的权益,请联系我们删除.
  • 本站是交换下载平台,提供交流渠道,下载内容来自于网络,除下载问题外,其它问题请自行百度
  • 本站已设置防盗链,请勿用迅雷、QQ旋风等多线程下载软件下载资源,下载后用WinRAR最新版进行解压.
  • 如果您发现内容无法下载,请稍后再次尝试;或者到消费记录里找到下载记录反馈给我们.
  • 下载后发现下载的内容跟说明不相乎,请到消费记录里找到下载记录反馈给我们,经确认后退回积分.
  • 如下载前有疑问,可以通过点击"提供者"的名字,查看对方的联系方式,联系对方咨询.
 输入关键字,在本站1000多万海量源码库中尽情搜索: