目的:实现对数据库XDSA中表S72、C72、SC72的数据插入

1.构建数据库

2.构建表

3.插入数据

插入数据语句:

命令:

INSERT INTO TableName
VALUES('值','值','值','值','值')

示例:

INSERT INTO S72
VALUES('200512','李勇','计算机系','20','男')

命令:insert  into  表名 (列名 ,列名)

values (值,值)

示例:insert  into  表名(Sname,Sid,Sage)

values(‘张三’,12,15)

(批量插入)

命令:BULK INSERT 表名 FROM '文件路径地址' WITH (FIRSTROW=2)

示例:BULK INSERT SC72 FROM 'F:\DB201721123072\dataSC72.txt' WITH (FIRSTROW=2)

4.验证插入是否成功

命令:

SELECT * FROM 表名

示例:

SELECT * FROM SC72

5.源代码

create database XSDA
on primary
(name = XSDA,
filename = 'D:\大学生活文档\大学课程\数据库课程\实验三插入数据\XSDA.mdf')
log on
(name = XSDA_Log,
filename = 'D:\大学生活文档\大学课程\数据库课程\实验三插入数据\XSDA_Log.ldf')
use XSDA
go
create table S72
(SNO CHAR(10) NOT NULL PRIMARY KEY,
SNAME VARCHAR(20) NOT NULL,
DEPA VARCHAR(20) CHECK(DEPA IN('计算机系','数学系','物理系','信息系')),
AGE INT CHECK(AGE>0),
SEX NCHAR(1)
)
CREATE TABLE C72
(CNO CHAR(3) NOT NULL PRIMARY KEY,
CNAME VARCHAR(20) NOT NULL,
cpno char(3) REFERENCES C72(CNO),
credit int DEFAULT 2
)
CREATE TABLE SC72
(SNO CHAR(10) NOT NULL REFERENCES S72(SNO),
CNO CHAR(3) NOT NULL REFERENCES C72(CNO) ,
GRADE DECIMAL(4,1),
PRIMARY KEY(SNO,CNO)
)
INSERT INTO S72
VALUES('200512','李勇','计算机系','20','男')
INSERT INTO C72
VALUES('c03','数据结构',null,'6')
INSERT INTO C72
VALUES('c01','数据库原理','c03','4')
INSERT INTO C72
VALUES('c02','信息系统','c01','4')
INSERT INTO C72
VALUES('c04','DB_设计','c01','3')
BULK INSERT S72 FROM 'F:\DB201721123072\S72.txt' WITH (FIRSTROW=2)
BULK INSERT SC72 FROM 'F:\DB201721123072\SC72 .txt' WITH (FIRSTROW=2)

6.小结

①这里不能用unique修饰,不然后面会和C72(CNO)关联的表产生冲突。

②没有设置关联主键的话,其实SC72这个表就没什么实际意义了,不能保证参数的完整性和准确性。

③对数据库的语句使用有了更进一步的认识,明白了在输错数据之后,怎么用delect清空表里面的内容。

SQL service 数据插入的更多相关文章

  1. sql 根据指定条件获取一个字段批量获取数据插入另外一张表字段中+MD5加密

    /****** Object: StoredProcedure [dbo].[getSplitValue] Script Date: 03/13/2014 13:58:12 ******/ SET A ...

  2. SQL Server 批量插入数据的两种方法

    在SQL Server 中插入一条数据使用Insert语句,但是如果想要批量插入一堆数据的话,循环使用Insert不仅效率低,而且会导致SQL一系统性能问题.下面介绍 SQL Server支持的两种批 ...

  3. SQL Server 批量插入数据的两种方法(转)

    此文原创自CSDN TJVictor专栏:http://blog.csdn.net/tjvictor/archive/2009/07/18/4360030.aspx 在SQL Server 中插入一条 ...

  4. 转:SQL Server 批量插入数据的两种方法

    在SQL Server 中插入一条数据使用Insert语句,但是如果想要批量插入一堆数据的话,循环使用Insert不仅效率低,而且会导致SQL一系统性能问题.下面介绍SQL Server支持的两种批量 ...

  5. SQL从入门到基础–03 SQLServer基础1(主键选择、数据插入、数据更新)

    一.SQL语句入门 1. SQL语句是和DBMS“交谈”专用的语句,不同DBMS都认SQL语法. 2. SQL语句中字符串用单引号. 3. SQL语句中,对于SQL关键字大小写不敏感,对于字符串值大小 ...

  6. 将DataTable 数据插入 SQL SERVER 数据库

    原文:将DataTable 数据插入 SQL SERVER 数据库 以下提供3中方式将DataTable中的数据插入到SQL SERVER 数据库: 一:使用sqlcommand.executenon ...

  7. Sql Server的艺术(七) SQL 数据插入操作

    --用INSERT插入单行数据 在SQL中,可以通过INSERT...VALUES语句直接向数据库表中插入数据.可以整行,也可以部分列. 基本语法: INSERT INTO table_name [c ...

  8. SQL数据插入

    T-SQL中提供了多个将数据插入到表中的语句:insert values.insert select.insert exec.select into和Bulk insert: 1.  insert v ...

  9. SQL查询数据并插入新表

    SQL查询数据并插入新表 --如果接受数据导入的表已经存在 insert into 表 select * from tablename --如果导入数据并生成表 select * into 表 fro ...

随机推荐

  1. MacOS下Terminal获取GPS经纬度坐标

    通过命令行直接获取经纬度坐标MacOS 首先下载WhereAmI,最新版本: https://github.com/robmathers/WhereAmI/releases/download/v1.1 ...

  2. 栈和队列数据结构的基本概念及其相关的Python实现

    先来回顾一下栈和队列的基本概念: 相同点:从"数据结构"的角度看,它们都是线性结构,即数据元素之间的关系相同. 不同点:栈(Stack)是限定只能在表的一端进行插入和删除操作的线性 ...

  3. ubuntu1804 snort base

    1.环境准备 apt安装 sudo apt-get update -y sudo apt-get dist-upgrade -y sudo apt-get install -y zlib1g-dev ...

  4. xxe 新手学习记录

    在做某题时遇到了xxe漏洞,学习+记录 这里因为环境暂时关了,现在复现不了,所以在网络上又找到了一些xxe题目环境 这里有 PikaChu靶场里的xxe环境,这个环境可以在BUUCTF里开,但是这里我 ...

  5. 52.Qt-Charts动态显示多条折线电压值(实现示波器效果)

    Qt 5.7过后Qt添加了官方的Chart库,之前就用的比较习惯,这次把源码发出来,给入门的同学们参考参考. 效果如下所示: 1.chartsView.h如下所示: #ifndef VIEW_H #d ...

  6. C和C++区别——前置自增与后置自增

    一.先看下面两段完全一样的代码块 /* test.cpp */ int main() { int a = 5; ++a = 7; printf("%d\n", a); return ...

  7. Mysql数据库分布式事务XA详解

    XA事务简介 XA 事务的基础是两阶段提交协议.需要有一个事务协调者来保证所有的事务参与者都完成了准备工作(第一阶段).如果协调者收到所有参与者都准备好的消息,就会通知所有的事务都可以提交了(第二阶段 ...

  8. centos8上使用lsblk查看块设备

    一,查看lsblk命令所属的rpm包 [root@yjweb ~]# whereis lsblk lsblk: /usr/bin/lsblk /usr/share/man/man8/lsblk.8.g ...

  9. selenium 浏览器最大化

    from time import sleep from selenium import webdriver from selenium.webdriver.chrome.options import ...

  10. 痞子衡嵌入式:MCUBootUtility v2.4发布,轻松更换Flashloader文件

    -- 痞子衡维护的NXP-MCUBootUtility工具距离上一个版本(v2.3.1)发布过去2个月了,这一次痞子衡为大家带来了版本升级v2.4.0,这个版本主要有一个非常重要的更新需要跟大家特别说 ...