zoukankan      html  css  js  c++  java
  • ******用SQL语句操作数据*******

                                                                                   用SQL语句操作数据

    01.SQL语句书写规范

      1,.SQL Sever中,SQL语句不区分大小写(数据库名,表名,列名,关键字SQL编译器都识别

      2,对表进行操作的时候,一定要使先用use关键字切换到对应的数据库

      3.自增列不可以赋值

    02.新增数据注意事项

      01.如果新增全部列,那么表名后可以不跟列名,但是要提供所有列的值,除非当前

      列有默认值,那么也要给出default关键字。

      02.如果只想给一张表中添加部分列,那么在表名后要跟上列名,并且需要保证除了你给出

      的列的值之外,其他列都允许为空或者有默认值。

      insert into goodPerson(stuName,stuAge) values('张小花',20)

    03. 一次性向一张表中插入多条数据的解决方案

    方案一:insert into 目标表

     select  * from 原表

     注意事项:如果目标中有自增列,那么不能使用*号。

     方案二:select *  into 目标表(不存在)

      from 原表

      该方式只保留了数据和子自增列,但是主键等约束就都没有了。

      

      方案三:insert into 目标表(存在)

      select '高一二班'

      union

      select '高一五班'

    04.几个注意点 

     1.以后大家见到update语句,一定要跟where条件。

     2.SQL Servernull代表不知道,所以如果where后的限定条件不能用=null做对比,必须使用is null

    05.deletetruncate区别?

       解析:01.delete 后可以跟where条件,而truncate不行

                02.delete删除数据的时候会记录日志,而truncate不会

                03.delete删除表中所有数据库,id编号不会从1开始,而truncate会。

     --01.如果要进行数据表中数据的查询,那么必须先定位到该表所在的数据库

    use Myschool  --切换数据库

    select StuId, StuName, StuAge, GradeId from Student

    --我只想要年龄小于岁的学员信息

    select * from Student  where StuAge<=22 

    --新增数据

    insert into GoodPerson values

    ('微冷的雨',50,'中国某地区','未知','希望大家努力学习,将来薪资K')

    select * from goodperson

     

    insert into goodperson(stuName,stuAge,stuAddress,stuLike,stuWishes) values('张靓颖',20,default,'大家微笑的脸庞','开心就好')

     

    insert into goodPerson(stuName,stuAge) values('张晓玲',20)

    delete from goodperson

    where StuId=31

     

    select * from goodPerson2

     

     

    -- 一次性向一张表中写入多条数据方案一

    insert into goodPerson2 

    select  StuName, stuAge, stuAddress, stuLike, stuWishes from goodPerson

    delete from goodperson2

     

    --方案二

    select * into goodpersonbak

    from goodperson

     

    --方案三:

    select * from grade

    insert into grade

      select '高一二班'

      union

      select '高一五班'

    --更新高一三班位"无敌S1290"

    update grade set gradename='无敌S1290'

    where gradename='高一三班'

    --"王龙彪改成"李小龙"

    --将年龄为岁的学员年龄改成

    update goodpersonbak set stuname='李小龙',stuage=25

    where stuname='微冷的雨'

    select * from goodpersonbak

    update goodpersonbak set stuname='微冷的鳄鱼',stuage=10000

    where stuid=1007

    select * from goodperson

    insert into goodperson(stuname,stuage,stulike)

    values('李小龙',20,'faN')

    select * from goodperson

    where stuwishes is null

     

    update grade set gradename='S1'

    select * from goodpersonbak

  • 相关阅读:
    excel文件导入mysql
    linux进程后台运行,且关终端后继续运行
    安装windows后grub修复
    华中科技大学 ubuntu14.04源
    Windows8.1远程桌面时提示凭据不工作的解决方案
    引文分析工具HistCite使用简介
    报账单打印
    iOS开发之--复制粘贴功能
    iOS学习之--字符串的删除替换(字符串的常用处理,删除,替换)
    iOS 裁剪View指定的角裁剪
  • 原文地址:https://www.cnblogs.com/fanziyang/p/4936997.html
Copyright © 2011-2022 走看看