***数据的插入:(增)

insert into 表名(字段列表) values(值列表)

如果不写字段列表就要为表添加全部的列数据

其实into也可以省略

每次只能插入一条数据

1.如果字段可以为null或有默认值,也可以在添加值的时候使用null/default代替 ,但不能什么都不填

2.非空字段一定要传入值

3.插入的值必须要符合表的Check约束

4.所有的字段都可以使用单引号’’ 如果本来是字符串的值 没有加‘ ’号,那么会报错,因为会被当成变量

5.日期值一定要加单引号,如果没有加也不会报错,但显示的是系统默认值1905-6-20

6.如果表没有设置自动增长标识种子,那么添加字段的值要从id开始 也就是标识列开始

***数据更新(数据修改) 修改删除一定需要考虑有没有条件

语法:

update 表名 set 字段=值/表达式 where 条件

一般来说可以作为是条件的是主键或唯一键

1.多条件查询要用and连接

2.修改多个字段用,号隔开

Null值的处理:

如果要把本来是null值的数据改成别的数据 使用is null不是=号,如下把Person表中是null的电话号码改成110 代码如下:

update Person set phone=‘110’where phone is null

如果把本来有的数据改成null值的话 就用=号赋值就可以,不用用is 但赋的这个null值不可以加单引号,大小写都不要紧 如下:

Update Person set phone=NUll where id=3

数据的删除:只是删除表的数据行

语法:

Delete 【from】 表名 where 条件

1.删除是一条一条删除,所有效率低下,它每一次删除都要将操作写入到日志文件中,所以效率低下,而且标识列不会从种子值重新计算,而是接着上次删除最后的标识列,比如删除了标识列为4的行数据,那么再添加一条数据标识列就从5开始

--truncate 删除方法:

语法:truncate table 表名         --没有条件

它是一次性删除整个表  这种删除方式可以只写入一次日志文件,删除后标识列会从种子值重新计算 如设置的标识种子是1,就从1

数据检索:数据的搜索 也就是查询--返回虚拟结果集

语法:

select 字段列表/*from 表列表 where 条件

eg:select name,age,sex from Student where id=10

添加虚拟结果集的列名:设置列名通过as,也可以用= 也就是字段as值 如:name as 姓名  或name=姓名

--select可以做查询,也可以赋值和输出如:

select 1  输出的结果是1

select 1+1  输出的结果是2

select '1'+1  结果也是2

select 1+‘1’输出的结果是2

select ‘1’+‘1’  输出的结果是11

只有当加号的两边都是字符串时,是字符串连接

一次性插入多条记录  (很少使用,效率太低)

1.将数据移动到新表中  新表不能先存在,它是系统自动创建的,它会根据所查询的列自动生成一个对应的表结构

生成的表结构只保留字段名称和类型以及标识列属性,其它的类似于主键,唯一键,关系等约束都没有

Select * into newGrade from grade

然后在删除原表数据

Truncate table grade

将临时表的数据移动到已经存在的源表中

--目标表必须已经存在,且查询出的列的类型和数量必须和已经存在的目标表的结构一致,且不能破坏目标表的数据完整性。

*Insert into 目标表 select * from 源表

Insert into grade select classname from newGrade

eg:

select * into newPerson from Person

truncate table Person

insert into Person select name,age from newPerson

注意:也可以用数据的导出和导入

SQL Server数据库---》增删查改的更多相关文章

  1. 常用SQL语句(增删查改、合并统计、模糊搜索)

    转自:http://www.cnblogs.com/ljianhui/archive/2012/08/13/2695906.html 常用SQL语句 首行当然是最基本的增删查改啦,其中最重要的是查. ...

  2. SQL Server跨数据库 增删查改

    比如你在库A ,想查询库B的表.可以用 数据库名.架构名.表名的方式查询 select * from 数据库B.dbo.表1 也可以在存储过程中这样使用. 需要注意的是,如果使用这样的查询方式,你必须 ...

  3. django models进行数据库增删查改

    在cmd 上运行 python manage.py shell   引入models的定义 from app.models import  myclass   ##先打这一行    ------这些是 ...

  4. SQL语句的增删查改

    一.增:有2种方法 1.使用insert插入单行数据: 语法:insert [into] <表名> [列名] values <列值> 例:insert into Strdent ...

  5. go iris xorm包使用(sqlite3数据库增删查改)

    官网https://studyiris.com/example/orm/xorm.html例子,稍做修改 1.我是win64,但没有遇到mingw问题,应该是之前安装过gcc环境,参考:测试一下rob ...

  6. Django学习笔记009-django models进行数据库增删查改

    引入models的定义 from app.models import  myclass class  myclass(): aa =  models. CharField (max_length=No ...

  7. 【总结】C# Access 数据库 增删查改 的简单步骤

        引用集: using System.Data.OleDb; static string exePath = System.Environment.CurrentDirectory;//本程序所 ...

  8. YII数据库增删查改操作

    初学YII, 整理了一些YII数据库的相关操作,  共同学习,共同进步. 一.查询数据集合 //1.该方法是根据一个条件查询一个集合 $admin=Admin::model()->findAll ...

  9. SQL基本之增删查改操作

    1.为表添加主键 alter table <tablename> add primary key(col); 主键添加前: 主键添加后: 2.插入数据 insert into <ta ...

  10. flask框架中,利用数据库增删查改

    # 配置数据库app.config['SQLALCHEMY_DATABASE_URI'] = "mysql://root:mysql@127.0.0.1:3306/booktest" ...

随机推荐

  1. C++求二叉树的最大高度差

    #include <iostream> #include <string.h> using namespace std; template<typename Type&g ...

  2. 创建和使用RMAN存储脚本

    创建和使用RMAN存储脚本:1.连接恢复目录(可以不连接到目标库):C:\Users\Administrator>rman target sys/rusky@rusky catalog=rcat ...

  3. PropertyGrid—为复杂属性提供下拉式编辑框和弹出式编辑框

    零.引言 PropertyGrid中我们经常看到一些下拉式的编辑方式(Color属性)和弹出式编辑框(字体),这些都是为一些复杂的属性提供的编辑方式,本文主要说明如何实现这样的编辑方式. 一.为属性提 ...

  4. 在 Parallels Desktop 中,全屏模式使用 Win7,唤醒时黑屏

    在Parallels Desktop中,全屏模式下使用Win7,如果Mac电脑自动休眠了,则无法再次唤醒了,唤醒时黑屏. 博主的Mac是2014款MBPR,键盘上所有的键都试过,还是无法唤醒电脑,每次 ...

  5. Appium的前世今生

    Appium的前世今生 一.什么是Appium Appium是一个开源.跨平台的测试框架,可以用来测试原生及混合的移动端应用.Appium支持IOS.Android及FirefoxOS平台.Appiu ...

  6. Linux 重定向

    Linux 标准文件描述符 描述符  缩写 描述 0  STDIN  标准输入 1  STDOUT  标准输出 2  STDERR  标准错误 3-9    应该是扩展的标准输出(待验证) 命令行重定 ...

  7. C# 启动EXE文件及带启动参数EXE

    (一).先制作一个带启动参数的EXE文件. 步骤: 1.定义全局私有变量:private string[] s = new string[1];  //这里为了简单起见,只做一个参数 2.  在窗体的 ...

  8. POJ 3279(Fliptile)题解

    以防万一,题目原文和链接均附在文末.那么先是题目分析: [一句话题意] 给定长宽的黑白棋棋盘摆满棋子,每次操作可以反转一个位置和其上下左右共五个位置的棋子的颜色,求要使用最少翻转次数将所有棋子反转为黑 ...

  9. Android_使用getIdentifier()获取资源Id

    Android 获取资源ID的另外一种方法,常规获取ID是在特定的文件夹下面的资源,如果在比较特殊的文件夹下面,就需要其他方法获取ID 了: 使用getIdentifier()方法可以方便的获各应用包 ...

  10. jquerymobile listview 局部刷新

    function onSuccess(data, status) { data = $.trim(data); // alert(data); // return; if (data) { $('#l ...