009.增删查改语法(sql实例)

--------------------------------------------合并结果集SELECT UNION ----------------------------------------------------------
SELECT ‘HAHA‘,1,52
UNION--联合,将查询的两个结果集合并,*结构一致才能合并到一起,结构不一致则会报错
SELECT ‘嘿嘿‘,1,52

SELECT ‘HAHA‘,1,52
UNION all
SELECT ‘嘿嘿‘,1,52
--常见面试题:
--1.union 并集时,结果集要求结构一致
--2.union 和 union all 的区别:
--union 重复数据显示1次
--union all 完全显示数据,即使重复也多次显示。
---------------------------------------------子查询(添加多行)-------------------------------------------------------------------
USE Student
--A.添加多行数据:
--insert [into] name[(列的列表)] --values(值的列表),(值的列表)....
--将查询结果添加到表中(技术:子查询)

INSERT INTO lesson(ccode,cname,cnum)
SELECT‘C001‘,‘C#编程基础‘,32 union
SELECT‘C002‘,‘C#OOP‘,36 UNION
SELECT‘C003‘,‘C#FRAME‘,36
SELECT * FROM lesson

-----------------------------------表的备份SELECT * INTO info_bak FROM info--------------------------------------
--实现表的备份(复制到其他表中
--1. 生成表 查询 ,select into
-- 准备:查询
USE Student
SELECT * --负责列的显示
FROM info --数据的来源
WHERE sname=‘赵明月‘ --查询的条件
SELECT sunmb FROM info

SELECT sname FROM info WHERE sname LIKE ‘%月%‘
--egA :
--备份info表到info_bak中
--生成表 查询 select into 包含了两个功能:1.创建新表info_bak 2.插入查询数据
--1.info_bak 2.插入查询数据
SELECT * INTO info_bak FROM info
SELECT * FROM info_bak

--egB:
--备份空的info表到info_bak1中
SELECT * INTO info_bak1 FROM info WHERE sunmb=0
SELECT * FROM info_bak1
--egC:
--把数据备份到已存在的表中
--将 info 表中的女同学信息,备份到info_bak1中.
--info_bak1:插入数据(从info表中查出来的)
--操作(zichaxun)
INSERT INTO info_bak1
SELECT * FROM info WHERE sex=0

SELECT * FROM info_bak1

----------------------------------------------修改UPDATE--------------------------------------------------------
--修改:update
--语法:
--UPDATE tab_name SET colname=val,colname=val
--eg1.
UPDATE info SET address=‘北京海淀‘
WHERE sname=‘赵月‘
SELECT * FROM info

--eg2.
--将学号是4的同学的基本信息,修改成你本人的信息
UPDATE info SET sname=‘清瑞‘,sex=1,birthday=‘1992-01-01‘,address=‘山西永济程胡庄八组‘,tel=‘13520179329‘
WHERE sunmb=4
SELECT * FROM info

--eg3.
--将tel是010开头的同学的地址改成北京市
UPDATE info SET address=‘北京市‘
WHERE tel LIKE ‘010%‘
SELECT * FROM info

------------------------------------------------删除DELETE-------------------------------------------------------
--删除:DELETE(行)
--语法:DELETE [FROM] tab_name
-------WHERE [筛选行] 如果不写,将删除所有行
--eg1.
DELETE FROM info WHERE sunmb=1
SELECT * FROM info

--eg2.
--清空 info(删除所有行)
DELETE info
SELECT * FROM info
--truncate table 截断表
--先DROP TABLE 再 CREATE TABLE 是DDL操作
--语法:
TRUNCATE table info
--(截断表和删除清空表都是删除所有行,保留表结构,but DELETE重新添加数据后ID是继续,TRUNCATE重新添加数据后ID是从1开始)
--(DELETE 橡皮擦 TRUNCATE 撕纸)

--****面试题:
--1. DELETE 删除表中所有数据是否记录日志,是否能恢复? DML
--记录日志是对行数据的删除行为,是可以恢复的.

--2. TRUNCATE TABLE 是否记录日志,是否能恢复? DDL
--如果是oracle:DDL操作不记录事务日志,不可恢复.
--如果是sqlserver:DDL操作被记录,记录的是数据页的操作,所以在sqlserver数据库能恢复

--3. 这两种操作如果是删除海量数据表格的数据,哪个效率更高?
--truncate table 效率高,因为它是以数据页为单位删除和记录日志,所有相对于delete来讲它的操作和记录次数少,所以效率会更高.
--删除数据的时候delete用的比较多,更加灵活.

时间: 2024-12-14 18:48:04

009.增删查改语法(sql实例)的相关文章

C# SQLite 创建数据库的方法增删查改语法和命令

SQLite介绍 SQLite是一个开源.免费的小型RDBMS(关系型数据库),能独立运行.无服务器.零配置.支持事物,用C实现,内存占用较小,支持绝大数的SQL92标准. SQLite数据库官方主页:http://www.sqlite.org/index.html   cmd下sqlite的使用网 1:选择下载对应自己系统的sqlite.3exe文件 2:解压后使用cmd命令进入sqlite3.exe文件所在的路径执行命令就可以操作做相应的操作. 在进入数据库之后如果需要退出的话windows

SQL Server之 (四) ADO增删查改 登录demo 带参数的sql语句 插入自动返回行号

SQL Server之 (四) ADO增删查改  登录demo  带参数的sql语句  插入自动返回行号 自己学习笔记,转载请注明出处,谢谢!---酸菜 1.什么是ADO.NET ADO.NET是一组类库,这组类库可以让我们通过程序的方式访问数据库,并以各种方式操作存储在其中的数据; ADO.NET是基于.NET FrameWork,与.NET FrameWork类库的其余部分是高度集成的 2.连接数据库的步骤 ①创建连接字符串 Data Source=XXX-PC; Initial Catal

SQL Server 表的管理_关于表的操作增删查改的操作的详解(案例代码)

SQL Server 表的管理_关于表的操作增删查改的操作的详解(案例代码) 概述: 表由行和列组成,每个表都必须有个表名. SQL CREATE TABLE 语法 CREATE TABLE table_name ( column_name1 data_type(size), column_name2 data_type(size), column_name3 data_type(size), .... ); 1.查看表 exec sp_help table1; 2.创建表 create tab

hibernate基础增删查改简单实例

hibernate 基础理论知识网上很多,可以百度和google.这里不做多的介绍,以一个User表来开展例子 建一个web-project 我这里用了junit单元测试环境来进行增删查改的测试,别的不多说,导包就行 本次用到的所有jar包下载地址: 链接:http://pan.baidu.com/s/1skHrg0t 密码:dbe2 1.hibernate配置文件(hibernate.cfg.xml):主要是数据库连接核心的配置项 <?xml version='1.0' encoding='u

EF增删查改加执行存储过程和sql语句,多种方法汇总

1 ActionUrl c = new ActionUrl() { ActionName="test", RequestUrl="/123/123", SubTime=DateTime.Now }; 2 //增 3 using (EntityContext db = new EntityContext()) 4 { 5 6 /*方法1*/ 7 db.ActionUrls.Add(c); 8 db.SaveChanges(); 9 /*方法2*/ 10 db.Set&

JDBC终章- 使用 DBUtils实现增删查改- C3P0Utils数据源/QueryRunner runner连接数据源并执行sql

JDBC终章- 使用 DBUtils实现增删查改 1.数据库结构 Create Table CREATE TABLE `user` ( `id` int(3) NOT NULL AUTO_INCREMENT, `name` varchar(20) NOT NULL, `password` varchar(20) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8 2.工程结构    

实现基本的增删查改功能

1. In the previous tutorial you created an MVC application that stores and displays data using the Entity Framework and SQL Server LocalDB. In this tutorial you'll review and customize the CRUD (create, read, update, delete) code that the MVC scaffol

2015.8.2 jdbc实现商品类的增删查改

在惠普济宁基地进行了两周sql和java的学习,学到很多东西 刚才实现了用jdbc访问数据库对数据库进行操作,是用eclipse写的,过几天移植到NetBeans上,个人还是比较习惯看图形化界面 前几天茫然无头绪的时候闫老师指点迷津了一下,讲了具体的流程,如下: 1.创建项目2.导入相关JAR3.组织项目结构  util:工具类,公共类  po:实体类对象  dao:数据访问  biz:业务类  view:显示 第一步不多陈述 第二步具体如何配置可以参见蔡振华的博客http://qmkkd.bl

Android SQLite最简单demo实现(增删查改)

本来不太想写这篇博客的,但是看到网上的关于android数据库操作的博文都讲得很详细,对于像我这样的新手入门了解SQLite的基本操作有一定难度,所以我参考了网上的一些博客文章,并自己亲自摸索了一遍,希望写出这么一篇博文来记录SQLite的最基本操作,同时也希望能够对android的新手们有些帮助. 参考博客:http://www.20864.com/201247/274.html 这里只是一个示范性的demo,并没实现什么具体功能,只实现了对数据库的增删查改操作. 以下是实现demo的步骤: