Sql Server——数据的增删改
所谓数据的增删改就是在创建好数据库和表后向表中添加数据、删除表中的数据、更改表中的一些数据。
新增数据:
语法一: insert into 表名 values (数据内容) --这里需要注意的就是新增的数据内容个数必须和创建表的时候的列名个数一致,插入的值的数量与顺序:必须和表定义时完全相同。但我们可以忽略自增列(也就是说在添加数据的时候遇到自增列可以直接跳过它添加后面的数据)。
如:
insert into 表名 values(值1,值2,值n.......)
insert into stuInfo values('张秋丽','S25301','女',18,'重庆','很厉害')
有默认约束的列:使用default代码
insert into stuInfo values('李文才','S25303','男',25,default,'很厉害')
可以为空的列:使用null代码
insert into stuInfo values('欧阳俊雄','S25304','男',30,default,null)
语法二:insert into 表名(列名1,列名2,列名n..........) values(值1,值2,值n.......)
如:
insert into stuInfo (stuName,stuNo,stuSex,stuAge,stuAddress,remark) values('小黑黑','S25305','男',20,'北京','很帅')
为空的列,可以省略不写:
insert into stuInfo (stuName,stuNo,stuSex,stuAge,stuAddress) values('小红红','S25306','女',20,'北京')
有默认约束的列,可以省略不写:
insert into stuInfo (stuName,stuNo,stuSex,stuAge) values('红花花','S25307','女',20)
顺序可以和表中定义不一样:
insert into stuInfo (stuNo,stuName,stuSex,stuAge) values('S25308','张三','女',20)
注意:插和时into关键字可以省略不写 插入数据时,分为三类: (1)必填项:not null,必须给值
(2)选填项:null 或 默认约束,可给可不给
(3)不填项:identity,不能给值
插入方式一:insert into 表名 values(值1,值2,值n......) 注:值的数量与顺序与表定义时完全一致
有默认值的列:用default关键字代码
可以为空的列:用null关键字代码
插入方式二:insert into 表名(列名1,列名2,列名n.....) values(值1,值2,值n......) 注:值的数量与顺序与表名后的列完全一致
有默认值的列/可以为空的列:可以省略不写,表名后的列名省略了,值也跟着省略不写
修改数据:
语法: update 表名 set 需要改的列名=改的内容 where 条件
删除数据:
语法:delete from 表名 where 条件
如要删除整个表的数据:delete from 表名
在修改和删除的过程中,我们一般会遇到那种存在主外键关联的列,这种情况下我们直接修改或删除要操作的对象是不行的,因为存在关联。我们只有先操作外键表,再操作主键表。
仔细看看下面的代码你肯定能懂!(这是一个模拟的银行ATM管理系统)
/*
@数据操作
@Author: ......
@Date: 2017-9-26
*/
create database bankDB
use bankDB
--用户信息--
create table userInfo
(
customerID ,) primary key, --顾客编号
customerName ) not null, --开户名
PID ) ), --身份证号码
telephone ) not null check(telephone like '[0-9][0-9][0-9]-[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]'or telephone like'[0-9][0-9][0-9][0-9]-[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]'), --电话
address text null default '地址不详'
)
--插入数据
--set IDENTITY_INSERT userInfo on
/*
*这里我添加数据并没有像刚刚那两种方法来,但和第一种是大同小异。
*这样来写的话,你只需要把握好语句里的数据顺序(内容)和表中一致,并注意逗号就可以了
*多按照上面的两种方式写写就熟悉了
*/
','010-67898728','北京海淀'),
(','0478-44443333',default) --Sql Server 规定最后一个语句都不能打逗号
--张三注销帐户:删除张三的帐户(先删除丛表数据,再删除主表数据)
--这里涉及到外键问题,在有外键的情况下,我们只有先删从表,再删主表
--先删两个从表 外键存在的表叫从表
'
'
--再删主表 主键存在的表叫主表
--查询整个表的数据
select * from userInfo
--银行卡信息--
create table cardInfo
(
cardID ) not null primary key,--卡号
curType ) not null default 'RMB',--货币种类
savingType ) not null check(savingType='活期' or savingType='定期'), --存款类型
openDate datetime not null default getdate(), --开户日期
openMoney ), -- 开户金额
balance ), --金额.低于1元则注销账户
pass ), --密码
IsReportLoss ) not null default '否' check(IsReportLoss='是' or IsReportLoss='否'), --是否挂失
customerID int not null references userInfo(customerID)
)
),
()
--修改密码
--张三(卡号为1010 3576 1234 5678)修改银行卡密码为123457
--李四(卡号为1010 3576 1212 1134)修改银行卡密码为123123
'
'
--李四(卡号为1010 3576 1212 1134)因银行卡丢失,申请挂失(将IsReportLoss修改为是)
'
select * from cardInfo
--交易信息表--
create table transInfo
(
transDate datetime not null default getdate(), --交易日期
cardID ) not null references cardInfo(cardID), --卡号
transType ) not null check(transType='存入' or transType='支取'),--交易类型
transMoney ), --交易金额
remark text null,
)
--添加数据
--张三的卡号(1010 3576 1234 5678)取款900元
--李四的卡号(1010 3576 1212 1134)存款5000元
',null),
(',null)
--清空所有效果记录(清空transInfo的所有数据)
delete from transInfo
select * from transInfo
Sql Server——数据的增删改的更多相关文章
- SQL Server 数据的增删改
1. 使用Insert语句添加数据 (1)如果要向表中每一列都添加数据,则可以省略列明,直接将值按照顺序写入并用逗号隔开就行. use Howie ','JD','mars','CN','sh') ( ...
- VS连接SQL Server数据库,增删改查详细教程(C#代码)_转载
工具: 1.Visual Studio (我使用的是vs2013) 2.SQL Server (我使用的是sql server2008) 操作: 1.打开SQL Server,打开后会看到数据库的初 ...
- SQL server数据类型、增删改查
数据类型: 整数型:bigint.int.smallint.mediumint.tinyint 小数类型:decimal.numeric 浮点型:real.float.double 位型:bit 字符 ...
- python连接sql server数据库实现增删改查
简述 python连接微软的sql server数据库用的第三方模块叫做pymssql(document:http://www.pymssql.org/en/stable/index.html).在官 ...
- C#winform窗体实现对sql server数据库的增删改查
1.运行效果截图 2.输入用户名,密码进行查询 查找成功则显示 查找不成功显示用户信息不存在 3.输入用户名与密码,向数据库中添加用户信息 添加后数据库表信息 4.查看全部信息 5.根据编号信息进行查 ...
- 【sql server常用操作{增删改查}】
use DB_x go drop database DB_y create database DB_y --创建数据库 on primary --指定主数据文件 ( name= ...
- 关于JAVA通过REST接口对arcGis Server数据进行增删改查
一: 添加要素 public void create(BoxVo boxVo) throws Exception { // 创建HTTP客户端 CloseableHttpClient httpclie ...
- sql server触发器中增删改判断
触发器生效逻辑 在Before或者After之后使用INSERT,DELETE,UPDATE 触发器内情况判断 插入 if exists(select 1 from inserted) and not ...
- SQL Server 约束的增删改
1. 非空约束 列的为空性决定表中的行是否可以包含空值.空置(NULL)不同于零(0)/空白或者长度为零的字符串(“”). (1)创建非空约束 create table orders ( docent ...
随机推荐
- c++中string.erase()函数的用法(转)
erase函数的原型如下:(1)string& erase ( size_t pos = 0, size_t n = npos );(2)iterator erase ( iterator p ...
- HTML Input属性
HTML Input 属性 value 属性 value 属性规定输入字段的初始值: readonly 属性 readonly 属性规定输入字段为只读(不能修改): readonly 属性不需要值.它 ...
- java private修饰的类和变量
private主要用来修饰变量和方法,一般不会用来修饰类,除非是内部类. 1.new对象 被private修饰的变量和方法,只能在自己对象内部使用,其他对象即使是new你这个对象也是获取不到被priv ...
- 数据库索引B-树和B+树
一开始学习数据结构的时候,主要学习的是数组,队列,链表,队列,栈,树这些数据结构,其中树主要学习二叉树,平衡二叉树,二叉搜索树等这些子节点最多只有两个的树结构.但是,当我们接触数据库的时候,你会发现数 ...
- 帆软的报表系统与泛微OA结合起来,这两个软件麦枫提供了经典的服务。
一.集成配景泛微OA对企业的代价 泛微协同办公计划能向你供给一个协同的.集成的办公情况,使所有的办公职员都在统一且个性化的信息流派中一路事情, 解脱光阴和地区的限定,实现协同事情与知识治理. Eoco ...
- MVC配置伪静态
提出需求 伪静态能提高搜索引擎收录,还不影响硬盘寿命,是一个不错的选择,但是会增加CPU和内存开销,由于时候也需要实现伪静态. web.config配置 <system.webServer> ...
- Java IO 学习总结 学习手册总结
Java IO 是一套Java用来读写数据(输入和输出)的API.大部分程序都要处理一些输入,并由输入产生一些输出.Java为此提供了java.io包. 代码 github地址:https://git ...
- vue.js移动端app实战4:上拉加载以及下拉刷新
上拉加载以及下拉刷新都是移动端很常见的功能,在搜索或者一些分类列表页面常常会用到. 跟横向滚动一样,我们还是采用better-scroll这个库来实现.由于better已经更新了新的版本,之前是0.几 ...
- 为什么说汽车VIN码是汽车唯一的"身份证"
人有身份证,那么车有吗?当然了,汽车也是有"身份证"的,出厂时就会跟着车辆一起出生, 一般在车辆的挡风玻璃处.按照国际SAE国际规定,Vin码由17位字符组成,其中包含了车辆的生产 ...
- 转:【Java集合源码剖析】HashMap源码剖析
转载请注明出处:http://blog.csdn.net/ns_code/article/details/36034955 您好,我正在参加CSDN博文大赛,如果您喜欢我的文章,希望您能帮我投一票 ...