第0116章教材源码MySQL数据库应用项目教程钱冬云清华大学出版社.docx
- 文档编号:903104
- 上传时间:2022-10-13
- 格式:DOCX
- 页数:55
- 大小:40.73KB
第0116章教材源码MySQL数据库应用项目教程钱冬云清华大学出版社.docx
《第0116章教材源码MySQL数据库应用项目教程钱冬云清华大学出版社.docx》由会员分享,可在线阅读,更多相关《第0116章教材源码MySQL数据库应用项目教程钱冬云清华大学出版社.docx(55页珍藏版)》请在冰豆网上搜索。
第0116章教材源码MySQL数据库应用项目教程钱冬云清华大学出版社
无代码
无代码
【例3.1】创建销售管理数据库companysales
CREATEDATABASEcompanysales;
【例3.2】为某公司创建一个名称为sales数据库。
【例3.3】查看当前数据库管理系统中所有数据库
SHOWDATABASES;
【例3.4】利用SQLyog客服端软件查看当前的服务器中的已有以“company”打头命名的所有数据库。
SHOWDATABASESLIKE'company%';
【例3.5】选择companysales数据库为当前操作的数据库。
USEcompanysales;
【例3.6】将companysales3数据库(此数据不存在)设置为当前操作的数据库。
USEcompanysales3;
【例3.7】利用SQLyog客服端软件将sales数据库设置为当前操作的数据库。
USEsales;
【例3.8】删除sales数据库,并参看删除后的所有数据库。
DROPDATABASEsales;
【例3.9】删除companysales2数据库。
【例4.1】查看当前MySQL数据库服务器的默认存储引擎。
HOWVARIABLESLIKE‘storage_engine%’;
【例4.2】将当前MySQL数据库服务器的默认存储引擎改为“MyISM”。
default-storage-engine=MyISM
【例4.3】创建表t1,有id1和id2两个字段,指定其数值宽度分别为int和int(5);id3和id4指定数值宽度为int和int(5),并都带有zerofill参数。
CREATETABLEt1(
id1int,id2int(5),
id3intzerofill,id4int(5)zerofill
);
DESCt1;
【例4.4】在上例创建的t1表中,将1和2数值分别插入到id1和id2中;将3和123456数值分别插入到id3和id4中,并观察结果。
INSERTINTOt1VALUES(1,2,3,123456);
SELECT*FROMt1;
【例4.5】比较float、double和decimal数据类型的区别。
创建t2表,将id1、id2、id3字段设置为float(5,2)、double(5,2)、decimal(5,2);并将往id1、id2、id3字段中插入数据1.234.
CREATETABLEt2(
id1float(5,2),
id2double(5,2),
id3decimal(5,2));
DESCt2;
INSERTINTOt2VALUES(1.234,1.234,1.234);
SHOWwarnings;
SELECT*FROMt2;
【例4.6】比较date、time、datetime和timestamp数据类型的区别。
创建t3表,将id1、id2、id3和id4字段设置为date、time、datetime和timestamp;并将往id1、id2、id3和id4字段中使用now()函数插入当前日期和时间。
CREATETABLEt3(id1date,id2time,id3datetime,id4timestamp);
DESCt3;
INSERTINTOt3VALUES(now(),now(),now(),now());
INSERTINTOt3VALUES(now(),now(),now(),NULL);
SELECT*FROMt3;
【例4.7】创建一个enum字符串类型。
sexenum('男','女')
【例4.8】创建如下两个字符串列,比较enum和set的区别:
colorenum('red','black','green','yellow')
propertyset('car','house','stock')NOTNULL
【例5.1】在销售管理数据库companysales中,利用CREATETABLE语句,创建如表5-1department(部门)表和表5-3product(商品)表。
CREATEDATABASEIFNOTEXISTScompanysales;
USEcompanysales;
CREATETABLEdepartment
(departmentidintNOTNULL,
departmentnamevarchar(30)NOTNULL,
managerchar(8)NULL,
depart_descriptionvarchar(50)NULL/*此为最后行,没有逗号*/
);
CREATETABLEproduct
(productidintNOTNULL,
productnamevarchar(50)NOTNULL,
pricedecimal(18,2)NULL,
productstocknumberintNULL,
productsellnumberintNULL/*此为最后行,没有逗号*/
);
【例5.2】在销售管理数据库中的customer(客户)表,结构如表5-5所示,利用SQLyog客户端软件创建此客户表。
【例5.3】查看companysales数据库中所有的数据表的信息。
SHOWFULLTABLESINcompanysales;
【例5.4】查看上例在companysales数据库中创建的customer(客户)表的信息。
DESCcustomer;
【例5.5】使用SHOWCREATETABLE查看customer表的定义。
SHOWCREATETABLEcustomer\G
【例5.6】查看的customer(客户)表的结构、索引等信息。
【例5.7】查看department(部门)表的结构、索引等信息。
【例5.8】查看的department表中记录。
【例5.9】在部门表department中,增加两列:
部门人数列personnum,数据类型为int,允许为空;办公地点列office,数据类型为varchar(50),允许为空。
ALTERTABLEdepartment
ADD
(personnumintNULL,
officevarchar(50)NULL);
【例5.10】在部门表department中,删除部门人数列personnum。
ALTERTABLEdepartment
DROPpersonnum;
【例5.11】在部门表department中,将部门经理列manager的数据类型改为varchar(20)。
ALTERTABLEdepartment
MODIFYCOLUMNmanagervarchar(20)
【例5.12】在部门表department中,部门经理列manager重命名为managername。
DESCdepartmentmanager;
ALTERTABLEdepartment
CHANGEmangermangernamechar(8);
【例5.13】将商品表product重命名为newproduct,然后删除newproduct表。
ALTERTABLEproductRENAMENTOnewproduct;
DROPTABLEnewproduct;
【例5.14】查看在部门表department,在部门名称departmentname列之后,增加一个部门人数列personnum,数据类型为int,允许为空。
【例5.15】删除部门表department。
DROPTABLEdepartment
【例5.16】将department(部门)表中的部门主管manager的为空性设置为不为空。
ALTERTABLEdepartment
MODIFYmanagerchar(8)NOTNULL
【例5.17】在销售管理数据库中,创建如表5-1所示的部门表。
CREATETABLEIFNOTEXISTSdepartment
(departmentidintPRIMARYKEY,
departmentnamevarchar(30)NOTNULL,
managerchar(8)NULL,
depart_descriptionvarchar(50)NULL
);
【例5.18】在销售管理数据库中,创建如表5-3所示的商品表。
CREATETABLEIFNOTEXISTSproduct
(productnamevarchar(50)NOTNULL,
pricedecimal(18,2)NULL,
productstocknumberintNULL,
productsellnumberintNULL,
CONSTRAINTpk_productPRIMARYKEY(productid)
);
【例5.19】在销售管理数据库中,创建一个以商品编号和商品名称为组合主键的新商品表,然后删除此表。
CREATETABLEnew_product
(pidintNOTNULL,
pnamevarchar(50)NOTNULL,
pricedecimal(18,2)NULL,
psnumberintNULL,
PRIMARYKEY(pid,pname)
);
【例5.20】在【例5.3】中创建供应商表provider的providerid上,添加主键约束。
ALTERTABLEprovider
ADD
CONSTRAINTpk_providerPRIMARYKEY(providerid)
【例5.21】删除provider表上的主键约束。
ALTERTABLEprovider
DROPPRIMARYKEY
【例5.22】在销售管理数据库中,创建销售订单表结构,如表5-9所示。
CREATETABLEsell_order
(
sellorderidintNOTNULLAUTO_INCREMENTPRIMARYKEY,
productidintNOTNULLREFERENCESproduct(productid),
employeeidintNOTNULLREFERENCESemployee(employeeid),
customeridintNOTNULLREFERENCEScustomer(customerid),
sellordernumberintNULL,
sellorderdatedateNULL
);
【例5.23】利用表级约束形式,创建【例5.22】中的销售订单表。
CREATETABLEsell_order
(
sellorderidintAUTO_INCREMENTPRIMARYKEY,
productidintNOTNULL,
employeeidintNOTNULL,
customeridintNOTNULL,
sellordernumberintN
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 0116 教材 源码 MySQL 数据库 应用 项目 教程 钱冬云 清华大学出版社