热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

数据库综合系列之基本表的创建和增删改查

主要通过6张表的建立来实现数据库操作,数据库设计是不合理的,主要是探索基本语法使用和实现。

t_manager :经理表,主要负责一个商店,销售人员

t_shop        : 商店

t_cash_housewoker   : 销售人员表

t_director :仓库主任,主要负责一个仓库,和业务人员

t_warehouse :仓库信息表

t_account       :业务人员信息表

数据库创建:

 

create database test


商店信息表:

 

 

create database test
use  test;
create table t_shop
(
    s_id int identity(1,1) primary key, --商店编号
	s_name varchar(20),                 --商店名称
	s_tel varchar(11),					--商店电话
    s_address text						--地址
);


经理信息表:

 

 

create table manage
(
	m_id int primary key identity(1,1),  --identity(1,1) 低版本sql server 的自动增长
    m_name varchar(20),
	m_password varchar(20),
	m_sex varchar(2) check((m_sex='男') or (m_sex='女')),
	m_bir datetime,
    m_tel varchar(11),
    s_id int ,
   foreign key(s_id) references t_shop(s_id)
);


销售人员表:

 

 

create table t_cash_housewoker
(
    c_id int primary key identity(1,1),
	c_name varchar(20) ,
	c_password varchar(20),
	c_sex varchar(2)check((c_sex='男') or (c_sex='女')),
	c_bir datetime,
	c_tel varchar(11),
	m_id int,
	foreign key(m_id) references manage(m_id)
)


仓库表:

 

 

create table t_warehouse
(
	w_id int identity(1,1),
	w_name varchar(20),
	w_address text,
    primary key(w_id)
)

定义仓库主任表

 

 

create table t_director
(
	d_id int identity(1,1) primary key,
	d_name varchar(10),
	d_password varchar(20),
	d_sex varchar(2) check((d_sex='男') or (d_sex='女')),
	d_bir datetime ,
	d_tel varchar(11),
	w_id int,
    foreign key(w_id) references t_warehouse(w_id) on delete cascade on update cascade --定义级联删除和级联修改
)


业务人员信息表:

 

 

create table  t_account
(
	a_id int identity(1,1) primary key,
	a_name varchar(10),
    a_password varchar(20),
	a_sex varchar(2) check((a_sex='男') or (a_sex='女')),
	a_bir datetime,
	a_tel varchar(11),
	d_id int ,
   foreign key(d_id) references t_director(d_id)
)


插入语句的实现:

 

商店 

 

insert into t_shop values('烩面馆','11111111112','新乡')
insert into t_shop values('酒店','11111111112','河南科技学院')

经理:

 

 

insert into manage values('buyingfei','11111111112','男','2010-10-10','11111111112',1)
insert into manage values('buyafei','11111111112','男','2010-10-10','11111111112',2)

销售人员:

 

 

insert into t_cash_housewoker values('销售1','11111111112','男','2010-10-10','11111111112',1)
insert into t_cash_housewoker values('销售2','11111111112','男','2010-10-10','11111111112',1)


仓库:

 

 

insert into t_warehouse values('仓库1','河南科技学院')
insert into t_warehouse values('仓库2','河南')

仓库主任:

 

insert into t_director values('仓库主任1','11111111112','男','2010-10-10','11111111112',1)
insert into t_director values('仓库主任2','11111111112','男','2010-10-10','11111111112',2)

业务员:

 

 

insert into t_account values('业务员1','11111111112','男','2010-10-10','11111111112',1)
insert into t_account values('业务员2','11111111112','男','2010-10-10','11111111112',1)

 



查询:

 

查询m_id负责的商店和销售人员

 

select s_name 商店名字,s_address 商店地址,c_name 销售人员 from t_shop,t_cash_housewoker where s_id in(select s_id from manage where m_id=1) and  t_cash_housewoker.m_id=1

 

修改:

修改m_id=1经理的名字

 

update manage set m_name='步迎飞' where m_id='1'


删除:

 

 

delete from t_director where d_id in(3) --因为定义了级联删除,会直接删除仓库表中相关数据


 

 



 

 






 


推荐阅读
  • 一、使用ContentProvider(内容提供者)共享数据ContentProvider在android中的作用是对外共享数据,也就是说 ... [详细]
  • 外层|条件下_MySQL还能这样玩第五篇之视图应该这样玩
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了MySQL还能这样玩---第五篇之视图应该这样玩相关的知识,希望对你有一定的参考价值。 ... [详细]
  • oracle text db2,从Oracle 到DB2(一)
    在实际的软件项目的开发过程中,特别是在企业的应用系统集成(EAI)项目中广大开发人员经常遇到不同关系型数据库之间的数据移植问题。笔者根据自己在工作中的不同数据库数据移 ... [详细]
  • 自定义RecyclerView添加EmptyView
    你知道RecyclerView里没有Em ... [详细]
  • 【自制小工具】代码生成器
    【自制小工具】代码生成器陆陆续续接触过好几款代码生成工具,发现确实好用,但都会有那么点不完善的地方,所以索性就自己做一个吧。界面非常简单,反正是自己用的,简单点用起来也方便上图:左 ... [详细]
  • lazarus使用sqlite3遇到特定字符时出现乱码的Bug
    lazarus使用zeosDB控件时发现SQLite一个奇怪的现象,应用程序编译为win64时,如果输入中国2022中国时出现乱码,win32和linux64正常,开始怀疑的sql ... [详细]
  • 故障申报系统php源码,运维不再专业救火 不会PHP照样找出代码性能问题
    作者:凉白开网站:www.ttlsa.com身处互联网的SA(运维)们总感叹自己职业的苦逼,Why?我来告诉你:APP奔溃、 ... [详细]
  • 1.数据准备#测试数组vectorc(5,34,65,36,67,3,6,43,69,59,25,785,10,11,14)vector##[1]53465366736436959 ... [详细]
  • 第一部分:TSqlTop有两种用法1,限制查询结果集返回的行数或总行数的百分比。当将TOP与ORDERBY子句结合使用时,结果集限制为前N个已排序行;否则,以未定义的顺序返回前N个 ... [详细]
  • FroggerTimeLimit:1000MSMemoryLimit:65536KTotalSubmissions:32257Accepted:10396DescriptionFr ... [详细]
  • 作业迁移
    背景:数据库服务器更换,1、数据库迁移(BACKUPRESTORE);2、数据库登录名用户迁移(注意孤立用户);3、作业迁移数据库迁移,备份数据库、拷贝备份文件到新服务器,还原数据 ... [详细]
  • CAS介绍CAS(CentralAuthenticationService),是耶鲁大学开发的单点登录系统(SSO,singlesign-on),应用广泛,具有独立于平台的,易于理解,支持代 ... [详细]
  • pdf怎么把html变成pdf1 用AdobeAcroat8.1.2,打开网页后,页面右键菜单中会出现一个“转换为AobePDF的选项,点击就可以转换。 安装AdobeAcroba ... [详细]
  • 使用Mybatis框架操作数据库时,可以使用注解的方式,也可以使用XML文件配置,两种写法各有千秋。在使用注解进行save操作时,如果我想获取插入数据后的自增主键,那么可以使用如下 ... [详细]
  • 一、概述ceph为k8s提供存储服务主要有两种方式,cephfs和cephrdb;cephfs方式支持k8s的pv的3种访问模式ReadWriteOnce,ReadOnlyMany ... [详细]
author-avatar
灵动的音乐xl
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有