2022年Access中的SQL语言 .pdf

上传人:Che****ry 文档编号:27250742 上传时间:2022-07-23 格式:PDF 页数:10 大小:135.60KB
返回 下载 相关 举报
2022年Access中的SQL语言 .pdf_第1页
第1页 / 共10页
2022年Access中的SQL语言 .pdf_第2页
第2页 / 共10页
点击查看更多>>
资源描述

《2022年Access中的SQL语言 .pdf》由会员分享,可在线阅读,更多相关《2022年Access中的SQL语言 .pdf(10页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、Access中的 SQL 语言1. SQL概述结构化查询语言(Structured Query Language SQL 读成“ sequel”)自 1974 年提出,1975 年 IBM 公司在 RDBMS(关系型 DBMS)Syatem R 上实现以来,由于它功能丰富、使用方便、简洁易学,倍受用户和计算机工业界的欢迎,经不断修改、扩充和完善,现已成为RDBMS 的标准语言。 众多的 RDBMS 中实现了SQL语言,当然各数据库厂家在各自的RDBMS中的 SQL 语言与 ISO 颁布的标准SQL语言都或多或少有些差别。SQL 语言包括了对数据库的所有操作,主要可分为三个部分数据定义语言(DD

2、L Data Definition Language) ,用以定义数据库的逻辑结构,包括定义基本表、索引和视图。数据操纵语言 (DML Data Manipulation Language),用以对数据的查询和更新,数据更新操作中包括插入、删除和修改三种操作。数据控制语言(DCL Data Control Language),用以对基本表和视图的授权即指定具体用户可使用哪些表或视图。SQL 语言的特点:(1)语言风格统一:尽管有不同功能的DDL 、DML 和 DCL,但语言风格相同,再SQL 语言既能独立地使用于联机交互方式,又能嵌入到高级程序设计语言如C、C等语言中,而且在两种不同地使用方式

3、下的SQL 语句的语法基本一样;(2)面向集合的操作方式:因为RDB 的结构是关系,即记录的集合,也是SQL 语言的操作对象,所以操作速度比其他语言快;(3)语言简洁,易学易用:尽管 SQL 的功能很强, 但它的核心语句只有九条(CREATE、ALTER、DROP、SELECT、INSERT、DELETE、UPDATE、GRANT 和 REVOKE),加之它的结构化特性,非常便于学习和使用。2. 在 Access 中使用 SQL 语句SQL 语句的输入:打开一个已有的Access 数据库,在“对象”栏中选中“查询”,在“列表框”内选定“在设计视图中创建查询”命令,双击之,或按“设计”按钮,系统

4、将显示一个查询窗口和一个“显示表”对话框,关闭“显示表”对话框,在不关闭查询窗口的情况下,Access 窗口的菜单栏上才会出现查询菜单,该查询菜单下有“SQL 特定查询”子菜单、视图菜单中会出现“ SQL 视图”命令、同时原来显示在菜单栏下的数据库工具栏自动被切换为“查询设计”工具栏,其中的左上角会有一个视图切换按钮。 无论用上述三种方法的哪一种,均可在 Access 窗口中显示供输入 SQL 语句的“查询”窗口。注意:在该窗口中只能输入一条SQL 语句!但可分行输入,系统会把分号“;”作为命令的结束标志,但一般在输入命令时,不必人为地输入分号。当需要分行输入时,不能把Sql 语言的关键字或字

5、段名分在不同行。 Sql 语句中所有的标点符号和运算符号均为ASCII 字符!每两个单词之间至少要有一个空格或有必要的逗号!SQL 语句的保存:关闭“SQL 语句输入”窗口,命名为一个查询SQL 语句的执行:在“SQL 语句输入”窗口中输入一个完整的SQL 语句后,按“查询设计工具栏” 中的运行按钮 “! ” , 或在数据库窗口中双击已被保存的相应查询。I.数据表定义语句前面我们是使用Access 窗口中菜单命令的方式建立数据表的。现在,我们开始学习用SQL名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - -

6、 - - - - 第 1 页,共 10 页 - - - - - - - - - 语言来创建数据表。首先打开图书管理数据库文件“图书管理 . mdb ” ,且按上述方法打开输入 SQL 语句的“查询”窗口。输入 Sql 语句:CREATE TABLE 图书 (总编号CHAR(6) PRIMARY KEY ,分类号CHAR(6) NOT NULL, 书名CHAR(20), 作者CHAR(15), 出版社CHAR(10), 单价SINGLE) 运行该 Sql 语句后,在数据库窗口中打开数据表图书的设计视图,可核对一下用Sql 语句和用窗口菜单命令建表的区别。说明:在Microsoft Access

7、2000 中 的 Sql 语言是通过Microsoft Jet数据库引擎来支持Sql语言的,而Microsoft Jet SQL语言与标准SQL 语言有若干的差别。Microsoft Jet SQL语言所支持的SQL 数据类型CHAR(n) or TEXT(n) 文本型MEMO 备注型INT or INTEGER 数字 (长整型 )介于 2,147,483,648 到 2,147,483,647 的长整型数SMALLINT or SHORT 数字(短整型)介于 32,768 到 32,767 的短整型数BYTE 数字(字节)介于0 到 255 的整型数REAL or SINGLE 数字(单精度

8、)默认有四位小数FLOAT or DOUBLE 数字(双精度)DATE or TIME 日期 /时间型CURRENCY or MONEY 货币型COUNTER(n) 自动编号型(从整数n 起)YESNO 是/否型若字段名中有空格或除了汉字外的非字母性字符,则应用一对方括号 将字段名括起来,如 First Name 数据完整性约束条件:它是用来定义数据表之间的关联关系和数据表内的字段应满足的条件的, 当用户操作数据表时,DBMS 会自动检查操作是否违背已定义的完整性约束条件。同一个完整性约束条件如果涉及到一个表中的多个字段,则该约束条件必须定义在表级,否则,一般定义在字段级(即列级 )。完整性约

9、束条件主要有下列三种:实体完整性约束条件:NOT NULL 不能为空, NULL 的含义是无意义,不能与空字符或数值0 等同UNIQUE 唯一性,即表中各记录的该字段值各不相同PRIMARY KEY 主键或称主码(同时,具有上两约束条件)参照完整性约束条件:REFERENCES () 该字段所取值应来自指定表内的指定字段的值用户定义完整性约束条件:不能在 Access 的 Sql 中使用, 只能在表的设计视图中的字段有效性规则中输入IS NULL NOT Between And 如: Between 0 And 100 可取 0 到 100 之间的数NOT In () 如: In( 法律 ,

10、经济法 , 刑事司法 )仅可取表达式列表中所指定的有限个值由此可见,名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 10 页 - - - - - - - - - (1) 创建基表的Sql 命令格式为:CREATE TABLE ( , , ) 类似地,我们可以根据读者 ( 借书证号字符型长度为 5 非空每位读者的借书证号均不相同姓名字符型长度为 4 性别字符型长度为 1 部门字符型长度为 5 职称字符型长度为 5) 建立读者数据表。请同学们自己完成。那么对于流通数据表流通

11、(总编号字符型长度为 6 主键,且来自于图书实体借书证号字符型长度为 5 非空,且来自于读者实体借阅日期日期型 ) 还是请同学们自己完成。注意: 由于流通表的建立要参照图书表与读者表,所以必须待图书表与读者表建立后方可建立流通表。同理,必须在主表中有记录后,才能在相关表中输入记录。我们现在在图书表中开始输入记录:INSERT INTO 图书VALUES( 100001 , ww001 , 橘子红了 , 郑重王要 , 人民文学出版社 ,31.8) INSERT INTO 图书 (总编号 ,分类号 ,书名 ,单价 ) VALUES(100002,ww002,追忆似水年华(上),68) 可见, 插入

12、一条具体录的Sql 语句为:INSERT INTO () VALUES () 当插入的记录中有部分字段值不确定时,可以仅输入部分字段值,但必须指明相应的字段名,而未指明的字段值为NULL 。故上述第二条记录插入命令等价于INSERT INTO 图书VALUES(100002,ww002,追忆似水年华 (上),NULL,NULL,68) 请再输入以下三条命令INSERT INTO 图书VALUES(100002,ww003,追忆似水年华 (下),NULL,NULL,68) INSERT INTO 图书VALUES(NULL,ww003,追忆似水年华(下),NULL,NULL,68) INSERT

13、 INTO 流通VALUES(100002,90002,#02/14/98#) 看看能不能执行上述三条命令,若不能,请说明原因。通过上述对创建表命令和插入记录命令的学习,我们可以大致了解到Sql 命令的基本格式为: 其中 是指明该命令的功能,子句可以有多种,如:标识子句TABLE 、INDEX 、VIEW 目标子句INTO 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 10 页 - - - - - - - - - 字段 (值)列表子句 | VALUES () 完整性约束

14、条件子句,以后,还将学到更多的子句。(2) 修改表结构增加字段:ALTER TABLE ADD , ,修改字段类型:ALTER TABLE ALTER , ,删除字段: ALTER TABLE DROP 注意:在对数据表的结构进行修改前,必须关闭该表!请同学自己先在读者数据表中增加两个字段,字段名依次为联系电话和年龄,数据类型分别为长整型和短整型,并观察每个命令执行后的效果。再将联系电话字段的数据类型改为有8 个字符的字符型,年龄字段的类型改为字节型数字。再删除联系电话字段(3) 删除表DROP TABLE II.数据更新前面, 我们已经学会了在数据表中插入记录的命令,对数据的更新还包括修改数

15、据,删除记录等操作。注意:若我们对已经同其它数据表建立了关联关系的数据表中的记录的关联字段值进行更新 (修改或删除 )时,为了保持数据的一致性(即相容性 ),系统一般会拒绝此操作。那么,若要坚持更新,又能保持保持数据的一致(即被关联数据表中的外码关联字段的值也会自动更新,则必须要预先在关系(即关联 )窗口中,编辑关系具有级联更新和级联删除功能(参考 7.3.1 用 ACCESS建立关系型数据库的步骤5) (1) 修改表记录UPDATE SET = ,=, WHERE 啊呀, 不好。我在输入读者数据表时,不小心将所有读者的姓名都输入反了,即应该是男的,却输入了女,而应该是女的,反到输入了男。我曾

16、经先后用下面两条命令UPDATE 读者SET 性别 = 女 WHERE 性别 = 男 UPDATE 读者SET 性别 = 男 WHERE 性别 = 女 命令倒没错,但,结果却不符合本意。请同学帮帮忙:再在读者数据表中输入每位读者的年龄,并添加下列三记录(不一定要用SQL 语句) 。99001、张三郎、 null、null 、null、62 99002、黄阿三、 null、null 、null、66 99002、黄海、 null、null、 null、66 在读者表中将姓黄且单名的同志的年龄减1 岁UPDATE 读者SET 年龄 =年龄 1 WHERE 姓名LIKE 黄?在读者表中将姓名中带有“

17、三”字的同志的性别设为男UPDATE 读者SET 性别 = 男 WHERE 姓名LIKE * 三* 在读者表中将年龄为62 或 66 的职工的部门字段值设为“退休”名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 10 页 - - - - - - - - - UPDATE 读者SET 部门 = 退休 WHERE 年龄IN (62,66) 通过上述练习,我们对Sql 命令中的条件子句应该有了基本的理解条件子句格式为:WHERE ,其中条件表达式经运算后得到真(YES)或假 (

18、NO) 而条件表达式常为: 条件运算符一般有比较运算符:、!、NOT BETWEEN AND :判断字段值是否落在指定的范围(,)中。NOT IN():判断字段值是否等于指定的若干个值之一。NOT LIKE :判断字符型字段值中是否与指定的字符串相匹配,通配符有?表示一个非空字符、*表示 0 个或连续的任意多个字符。(例如, Like Smith ) ,或用通配符来指定前两个字符为Sm 的字符串 (例如, Like Sm*) 。NOT IS NULL:判断字段值是否为空。(2) 删除表记录DELETE FROM WHERE 那么,删除读者数据表中职称字段值为空的记录的Sql 命令应该如何书写?

19、III.数据查询数据查询是用户根据需要从数据库中提取所需的数据,这也是建立数据库的最主要目的之一,所以,数据查询是对数据库最为常规的操作。数据查询语句的一般格式为:SELECT ALL |DISTINCT FROM WHERE GROUP BY HA VING ORDER BY ASC|DESC, ASC|DESC ,对此, 暂时我们先不作过多的解释,为了便于在操作中理解SELECT 语句的使用, 这里我们先建立了一个名为“选课管理. mdb”的数据库,且其中已有下列三个数据表:数据表S ,结构为 Sno(学号) 文本型6 个字符主键Sname(姓名 ) 文本型4 个字符不能为空值Ssex(性

20、别 ) 文本型1 个字符Sage(年龄 ) 字节型Sdept(专业 ) 文本型10 个字符数据表C ,结构为Cno(课程号 ) 文本型2 个字符主键Cname(课程名 ) 文本型8 个字符非空且各不相同Cpno(先修课程号 ) 文本型2 个字符参照本表中的Cno Ctime(课时数 ) 字节型Ccredit( 学分 ) 字节型数据表SC ,结构为Sno(学号 ) 文本型6 个字符非空且参照S表中的 Sno Cno(课程号 ) 文本型2 个字符非空且参照C 表中的 Cno Grade(成绩 ) 字节型其中 Sno 和 Cno 一起为主键其中,建立表C 的命令为:CREATE TABLE C(Cn

21、o char(2) Primary Key,Cname char(8) not null unique, Cpno char(2) references C(Cno),Ctime byte,Ccredit byte) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 10 页 - - - - - - - - - 建立表 SC 的命令为:CREATE TABLE SC(Sno text(6) not null references S(Sno), Cno text(2) no

22、t null references C(Cno),Grade byte, Primary Key(Sno,Cno)注:当表中要用多个属性值组成主键时,必须在建表语句中单独成为一个子句,如: Primary Key (Sno,Cno) ,即它是数据表级的完整性条件!注:若数据表中有字段有对本表中另一字段的参照完整性约束条件,则要注意记录输入的先后顺序,被参照的记录要先输入,参照其它记录的记录要后输入!且三个数据表中已有若干条记录表 S 为:Sno Sname Ssex Sage Sdept 99001 张敏男20 MA 99002 刘丰男21 IS 99003 王翔男19 CS 99004 陆逸

23、女18 MA 99005 李明女23 CS 表 C 为:Cno Cname Cpno Ctime Ccredit 2 高等数学108 6 6 数据处理54 3 7 C 语言6 72 3 5 数据结构7 72 4 1 数据库5 72 4 3 信息系统1 54 3 4 操作系统6 72 4 表 SC 为:Sno Cno Grade Sno Cno Grade 99001 2 82 99001 6 69 99001 7 94 99002 6 50 99002 7 63 99003 7 56 99003 5 51 99003 1 75 99004 7 87 99004 5 94 99004 3 88

24、99004 1 92 现在开始数据查询,先在一个表中进行数据的查询单表查询1.在 S 表中查询全体学生的全部属性命令为: SELECT * FROM S2.在 S 表中查询全体学生的姓名、学号和年龄命令为: SELECT Sname,Sno,Sage FROM S3.在 S 表中查询全体学生的姓名、性别和专业命令为:4.在 S 表中查询全体学生的姓名和出生的年份命令为: SELECT Sname, 2005-Sage FROM S或用命令: SELECT Sname, 2005-Sage AS BirhYearFROM S名师资料总结 - - -精品资料欢迎下载 - - - - - - - -

25、 - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 10 页 - - - - - - - - - 两者在效果上有何区别?5.在 C 表中查询每门课程的1 个学分相当的课时数命令为:6.在 SC 表中查询有学生选修的课程号命令为: SELECT Cno FROM SC若用命令: SELECT DISTINCT Cno FROM SC两者在效果上有何区别?从而理解单词DISTINCT的作用7.在 SC 表中查询出参加选修的学生的学号(一位学生可能选修多门课程)。可用命令:8.在 S 表中查询所有年龄不超过20 岁的女生的姓名和专业命令为: SELEC

26、T Sname, Sdept FROM S Where Sage=20 and Ssex= 女9.在 C 表中查询课时数大于90 和小于 60 的课程名和课时数可用命令: SELECT Cname, Ctime FROM C Where Ctime NOT BETWEEN 60 AND 90还可用命令: SELECT Cname, Ctime FROM C Where10.在 SC 表中查询选修了1 号或 5 号或 7 号课程的学生的学号及选修的课程号。可用命令: SELECT Sno FROM SC Where Cno in ( 1 , 5 , 7 )还可用命令:11.在 SC 表中查询 1

27、 号或 5 号或 7 号课程均不选修的学生的学号可否用命令: SELECT Sno FROM SC Where Cno NOTin ( 1 , 5 , 7 )12.在 S 表中查询姓刘的学生的记录可用命令: SELECT FROM Where Sname like 刘*13.在 S 表中查询姓名的第二个字为明的学生的姓名和性别可用命令: SELECTFROM Where Sname like ?明*14.在 C 表中查询课程名以“数据”开头的记录可用命令:15.在 C 表中查询课程名中有“数”字的课程号、课程名和课时数可用命令:16.在 C 表中查询课程名中第三、四个汉字为“系统”的课程号、课

28、程名和课时数可用命令:17.在 C 表中查询所有课程的记录,并以学分由少到多的升序排序可用命令:SELECT * FROM C ORDER BY Ccredit DESC注:查询所得的临时表在显示时,还可将临时表中的记录按某些属性的值排序,升序的关键字为ASC(默认值,即可省略) ,降序的关键字为DESC 18.在 C 表中查询课程名中有“数”字的课程名、课时数和学分,并按学分升序、若学分相同则按课时数降序排序可用命令:集函数与分组查询1.在 SC 表中查询出选修的总人次、最高分、最低分和平均分。可用命令:SELECT COUNT(*) ,MAX(Grade), MIN(Grade),AVG(

29、Grade) FROM SC2.查询出选修7 号课程的总分、最高分、最低分和平均分。可用命令:3.查询出选修各门课程的课程号、学生数、最高分、最低分和平均分。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 10 页 - - - - - - - - - 可用命令: SELECT Cno,COUNT(*),MAX(Grade), MIN(Grade),AVG(Grade) FROM SC GROUP BY Cno若查询的结果表达式或条件中有集函数(又称统计函数),则一般要对记

30、录按某个属性值进行分组, 属性值相同的记录归并在同一个组中,属性值不同的记录在不同的组,分组后,查询操作的对象就不再是一条一条的记录,而是一个个的组了!对于组,可以取到属性值相同的字段(一般是分组依据字段),而对于属性值不同的字段只能用集函数取到统计结果而再也无法取到具体一条记录的字段值!4.查询出选修各门课程的课程号、学生数、 最高分、 最低分和平均分,并按课程号降序排列。可用命令:5.查询出至少选修满3 门课程的学生的学号。可用命令:6.查询出每门选修课成绩均及格的学生的学号及平均成绩。可用命令:7.查询出既有不及格成绩又有及格成绩的学生的学号。可用命令:8.查询出至少有2 门课程不及格的

31、学生的学号。可用命令:连接查询(1) 什么时候需要用连接查询当查询的结果表达式,或查询的记录过滤条件中包含有来自两个或两个以上数据表的字段,这时,必须打开多个数据表,表与表之间必定会根据一定的连接条件进行连接, 在内存中形成一个临时表(又称中间表) ,以后的所有查询操作都是针对这个临时表进行的。(2) 系统执行内连接的过程若同时打开表S 和 SC,且有连接条件S.Sno=SC.SNO,即命令中有源子句如下:FROM S INNER JOIN SC ON S.Sno=SC.SNO,则系统对两表的连接如下图S.Sno S.Sname S.Ssex S.Sage S.Sdept SC.Sno SC.

32、Cno SC.Grade Sno Cno Grade 99001 2 82 99001 6 69 99001 7 94 99002 6 50 99002 7 63 99003 1 75 99003 5 51 99004 7 87 99004 1 92 99004 3 88 99004 5 94 Sno Sname Ssex Sage Sdept 99001 张敏男20 MA 99002 刘丰男21 IS 99003 王翔男19 CS 99004 陆逸女18 MA 得到中间表如下:名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名

33、师精心整理 - - - - - - - 第 8 页,共 10 页 - - - - - - - - - 99001 张敏男20 MA 99001 2 82 99001 张敏男20 MA 99001 6 69 99001 张敏男20 MA 99001 7 94 99002 刘丰男21 IS 99002 6 50 99002 刘丰男21 IS 99002 7 63 99003 王翔男19 CS 99003 1 75 99003 王翔男19 CS 99003 5 51 99004 陆逸女18 MA 99004 7 87 99004 陆逸女18 MA 99004 1 92 99004 陆逸女18 MA

34、99004 3 88 99004 陆逸女18 MA 99004 5 94 (3) 系统执行查询命令的过程 若是多表查询,则首先根据连接条件进行连接形成一个中间表; 若有记录的过滤条件,则先对记录进行过滤(又称筛选); 若查询的结果表达式或条件中有集函数(又称统计函数),则一般要再对记录按某个属性值进行分组; 若有组过滤条件, 则对组进行过滤, 只有满足组过滤条件的组才会在最后的查询目标中生成一条记录; 根据查询的目标表达式生成查询目标表中的一条条记录; 若有排序要求,则最后对查询目标表中的记录进行排序。1 找出每个学生的学号、姓名、选修课程号和该门选修课的成绩。可用命令:SELECT S.sn

35、o, S.sname, SC.Cno, SC.grade FROM S INNER JOIN SC ON S. Sno=SC. SNO 注意:由于是多表查询,所以在引用其中一个表的字段时,必须写明引用的是具体哪一个表的字段,引用的格式为 . 2 找出选修了“数据结构”课程的学生的学号和成绩。可用命令:SELECT SC.sno,C.Cname, SC.grade Where3 找出选修了“数据结构”课程的学生的姓名和成绩。可用命令: SELECT S.Sname, C.CNAME, SC.grade FROM (S INNER JOIN SC ON S.sno=SC.sno) INNER JO

36、IN c ON SC.Cno=C.CNO WHERE C.Cname= 数据结构 嵌套查询(子查询)1 查询选修了1 号课程的学生的姓名及性别。可用命令:SELECT S.sname,S.ssex From S Where Sno in (select Sno from SC where Cno= 1 )其中, “ (select Sno from SC where Cno= 1 ) ”称为子查询,若查询命令中有子查询,则系统总是先执行子查询,将子查询所得的结果表达式作为二次查询中记录的过滤条件或分组过滤条件中的内容,再执行二次查询。名师资料总结 - - -精品资料欢迎下载 - - - - -

37、 - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 10 页 - - - - - - - - - 当然,本例题也可用有记录过滤条件的连接查询命令:2 查询出与“陆逸”同学相同专业的学生的姓名(设只有一个学生名为“陆逸”) 。可用命令:3 查询出既不选修3 号课程又不选修5 号课程的学生的学号。SELECT DISTINCT snoFROM sc WHERE sno not in (select distinct sno from sc where cno in (3,5)4 查询出所有选修课成绩中获得最高成绩的学生的学号及其最高成绩。SELECT sno, gradeFROM sc WHERE grade= (select max(grade) from sc )5 查询出平均成绩高于所有成绩的平均分的学生的学号SELECT sno FROM sc GROUP BY sno HAVING avg(grade) (select avg(grade) from sc )名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 10 页 - - - - - - - - -

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 高考资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁