精华内容
下载资源
问答
  • sql 修改数据类型语句

    千次阅读 2018-12-30 19:57:22
    ALTER TABLE MST_XCINVENTORYLIST ALTER COLUMN MAKETIME datetime

     ALTER TABLE MST_XCINVENTORYLIST ALTER COLUMN MAKETIME datetime

    展开全文
  • (十七) SQL数据操纵语言

    千次阅读 2019-07-31 22:02:38
    文章目录SQL 操纵数据(DML)添加一个新行到表中INSERT语句语法指定列添加完全列添加插入带空值的行隐式方式显式方式插入日期值使用系统时间插入使用默认时间格式插入使用指定时间格式插入从另一个表中复制行先创建一...

    SQL 操纵数据(DML)

    数据操纵语言: 当添加, 更新或者删除数据库中的数据时, 需要使用DML语句. DML依据的一个集合构成了一个被称为事务的逻辑单元.

    当完成下面操作时, DML语句被执行:

    • 添加新行到表中
    • 修改表中的行
    • 删除表中的行

    添加一个新行到表中

    INSERT语句语法

    insert into table[(column [,column...])]
    values (value[, value...]);
    

    该语法一次只能插入一行

    指定列添加

    示例: 向departments表中添加一条数据.

    Department_id=280
    department_name=Teaching
    Manager_id=180
    location_id=2000
    
    -- 添加语句, 注意, 必须提交事务, 不然数据会添加到临时的表空间中, 关闭数据库再打开, 仍然没有这个数据
    SQL> insert into departments(department_id, department_name, manager_id, location_id)
      2  values(280, 'Teaching', 180, 2000);
    1 row inserted
    -- 提交事务
    SQL> commit;
    Commit complete
    

    完全列添加

    示例: 向表中添加一条数据

    department_id=290
    department_name=development
    manager_id=149
    location_id=2000
    
    -- 添加语句, 添加时候的添加顺序必须和建表时候的数据顺序一致
    SQL> insert into departments values(290, 'development', 149, 2000);
    1 row inserted
    
    -- 提交事务
    SQL> commit;
    Commit complete
    

    插入带空值的行

    隐式方式

    直接省略插入的列

    示例: 插入一条数据

    SQL> insert into departments(department_id, department_name) values(300, 'A');
    1 row inserted
    
    SQL> commit;
    Commit complete
    
    SQL> select * from departments where department_id = 300;
    DEPARTMENT_ID DEPARTMENT_NAME                MANAGER_ID LOCATION_ID
    ------------- ------------------------------ ---------- -----------
              300 A                                         
    

    显式方式

    手动插入null

    示例

    SQL> insert into departments values(310, 'B', null, null);
    1 row inserted
    
    SQL> commit;
    Commit complete
    
    SQL> select * from departments where department_id = 310;
    DEPARTMENT_ID DEPARTMENT_NAME                MANAGER_ID LOCATION_ID
    ------------- ------------------------------ ---------- -----------
              310 B                                         
    

    插入日期值

    使用系统时间插入

    示例: 向employees表中插入一条数据

    SQL> insert into employees(employee_id, first_name, last_name, email, phone_number, hire_date, job_id, salary, commission_pct, manager_id, department_id)
      2  values (300, 'JingJing', 'Wang', 'asdf', null, sysdate, 'IT_PROG', 10000, null, 201, 290);
    1 row inserted
    
    SQL> commit;
    Commit complete
    
    SQL> select * from employees where employee_id = 300;
    EMPLOYEE_ID FIRST_NAME           LAST_NAME                 EMAIL                     PHONE_NUMBER         HIRE_DATE   JOB_ID         SALARY COMMISSION_PCT MANAGER_ID DEPARTMENT_ID
    ----------- -------------------- ------------------------- ------------------------- -------------------- ----------- ---------- ---------- -------------- ---------- -------------
            300 JingJing             Wang                      asdf                                           2019/7/31 2 IT_PROG      10000.00                       201           290
    

    使用默认时间格式插入

    示例

    SQL> insert into employees(employee_id, first_name, last_name, email, phone_number, hire_date, job_id, salary, commission_pct, manager_id, department_id)
      2  values (301, 'JingJing', 'Wang', 'asdff', null, '01/3月/2019', 'IT_PROG', 10000, null, 201, 290);
    1 row inserted
    
    SQL> commit;
    Commit complete
    
    SQL> select * from employees where employee_id = 301;
    EMPLOYEE_ID FIRST_NAME           LAST_NAME                 EMAIL                     PHONE_NUMBER         HIRE_DATE   JOB_ID         SALARY COMMISSION_PCT MANAGER_ID DEPARTMENT_ID
    ----------- -------------------- ------------------------- ------------------------- -------------------- ----------- ---------- ---------- -------------- ---------- -------------
            301 JingJing             Wang                      asdff                                          2019/3/1    IT_PROG      10000.00                       201           290
    

    使用指定时间格式插入

    示例

    insert into employees(employee_id, first_name, last_name, email, phone_number, hire_date, job_id, salary, commission_pct, manager_id, department_id)
    values (302, 'JingJing', 'Wang', 'asdfff', null, to_date('2019-07-31', 'yyyy-mm-dd'), 'IT_PROG', 10000, null, 201, 290);
    
    SQL> commit;
    Commit complete
    
    SQL> select * from employees where employee_id = 302;
    EMPLOYEE_ID FIRST_NAME           LAST_NAME                 EMAIL                     PHONE_NUMBER         HIRE_DATE   JOB_ID         SALARY COMMISSION_PCT MANAGER_ID DEPARTMENT_ID
    ----------- -------------------- ------------------------- ------------------------- -------------------- ----------- ---------- ---------- -------------- ---------- -------------
            302 JingJing             Wang                      asdfff                                         2019/7/31   IT_PROG      10000.00                       201           290
    

    从另一个表中复制行

    • 用一个查询写insert语句
    • 不用values字句
    • 在查询中列的数目要匹配insert子句中列的数目

    先创建一个表

    create table EMP(
    	id number not null,
        name varchar2(50),
        salary number(8,2),
        commission number(2,2)
    )
    

    示例

    将employees表中的job_id中含有REP的工作岗位的数据插入到emp表中

    insert into emp select employee_id, last_name, salary, commission_pct from employees where job_id like '%REP%';
    

    插入使用默认值

    插入时使用default插入默认值

    insert into emp values(302, 'Old2', default, null);
    

    默认插入

    如果不指定列来插入, 没有默认值的会插入null值, 有默认值的会插入default值

    改变表中的数据

    KUPDATE语句语法

    update table
    set column=value[, column=value,...]
    [where condition];
    

    示例: 更新emp表中的id为170的数据, 将名字修改为OLDLU;

    SQL> select * from emp where id = 170;
            ID NAME                                                   SALARY COMMISSION
    ---------- -------------------------------------------------- ---------- ----------
           170 Fox                                                   9600.00       0.20
    
    SQL> update emp e set e.name = 'oldlu' where e.id = 170;
    1 row updated
    
    SQL> select * from emp where id = 170;
            ID NAME                                                   SALARY COMMISSION
    ---------- -------------------------------------------------- ---------- ----------
           170 oldlu                                                 9600.00       0.20
    

    用查询更新列

    示例: 更新emp表中的雇员165的薪水, 使其和雇员156相同

    SQL> update emp e set e.salary = (select salary from emp where id = 156) where id = 165;
    
    SQL> select id, salary from emp where id in (156, 165);
            ID     SALARY
    ---------- ----------
           156   10000.00
           165   10000.00
    

    从表中删除行

    DELETE语句语法

    delete [from] table
    [where condition];
    

    示例: 删除emp表中id为302的雇员

    SQL> select * from emp where id = 302;
            ID NAME                                                   SALARY COMMISSION
    ---------- -------------------------------------------------- ---------- ----------
           302 Wang                                                 10000.00 
           302 Old2                                                   300.00 
    
    SQL> delete from emp where id = 302;
    2 rows deleted
    
    SQL> commit;
    Commit complete
    

    删除基于另一个表的行

    示例: 删除emp表中薪水与IT_PROG岗位相同的薪水

    SQL> select distinct salary from employees where job_id = 'IT_PROG';
        SALARY
    ----------
       9000.00
      10000.00
       4800.00
       4200.00
       6000.00
       
    SQL> delete from emp where salary in (select distinct salary from employees where job_id = 'IT_PROG');
    8 rows deleted
    

    删除所有数据

    delete emp;
    

    上一章: SQL子查询

    下一章: SQL 事务处理语言

    展开全文
  • SQL 数据定义语句(DDL)

    千次阅读 2020-02-20 16:28:59
    每条 SQL 语句以分号结尾,SQL 语句中不区分大小写,但是关键字一般使用大写。SQL 标准语法提供了两种注释方式,在 MySQL 语法中多一种注释方式,分别如下: 注释语法 说明 –空格 单行注释 ...

    SQL 概念和语法

          SQL 是结构化查询语言,SQL 由规范语法和特有语法组成。不同的关系型都数据库都支持 SQL 规范语法,同时也有各自独有的 SQL 语法。每条 SQL 语句以分号结尾,SQL 语句中不区分大小写,但是关键字一般使用大写。SQL 规范语法中提供了两种注释方式,在 MySQL 中有自己特有的注释方式,分别如下:

    注释语法说明
    --空格单行注释
    /**/多行注释
    #单行注释,只能在 MySQL 中使用

    操作数据库

    一、创建数据库

    创建数据库
    语法:CREATE DATABASE 数据库名;
    创建数据库并判断数据库是否存在,如果不存在则创建,否则反之
    语法:CREATE DATABASE IF NOT EXISTS 数据库名;
    创建数据库,并指定字符集
    语法:CREATE DATABASE 数据库名 CHARACTER SET 字符集;

    二、查看数据库

    查看所有数据库
    语法:SHOW DATABASES;
    查看数据库定义信息
    语法:SHOW CREATE DATABASE 数据库名;

    三、修改数据库

    修改数据库字符集
    语法:ALTER DATABASE 数据库名 DEFAULT CHARACTER SET 字符集;

    四、删除数据库

    删除数据库
    语法:DROP DATABASE 数据库名;

    五、使用数据库

    查看正在使用的数据库
    语法:SELECT DATABASE();(MySQL 语法)
    使用或切换数据库
    语法:USE 数据库名;

    操作表结构

    一、创建表

    创建表
    语法:CREATE TABLE 表名(字段名1 字段类型,字段名2 字段类型);
    创建一个结构相同的表
    语法:CREATE TABLE 新表名 LIKE 旧表名;

    二、查看表

    查看数据库中的所有表
    语法:SHOW TABLES;
    查看表结构
    语法:DESC 表名;
    查看创建表的 SQL 语句
    语法:SHOW CREATE TABLE 表名;

    三、删除表

    直接删除表
    语法:DROP TABLE 表名;
    删除表,先判断表是否存在,如果存在则删除,否则反之
    语法:DROP TABLE IF EXISTS 表名;

    四、修改表结构

    表添加字段
    语法:ALTER TABLE 表名 ADD 字段名 数据类型;
    修改表字段数据类型
    语法:ALTER TABLE 表名 MODIFY 字段名 数据类型;
    修改表字段名
    语法:ALTER TABLE 表名 CHANGE 旧字段名 新字段名 数据类型;
    删除表字段
    语法:ALTER TABLE 表名 DROP 字段名;
    修改表名
    语法:RENAME TABLE 表名 TO 新表名;
    修改表字符集
    语法:ALTER TABLE 表名 CHARACTER SET 字符集;

    五、SQL 数据类型

    分类类型名称说明
    整数TINYINT微整形(1 个字节)
    SMALLINT小整型(2 个字节)
    MEDIUMINT中整形(3 个字节)
    INT整形(4 个字节)
    INTEGER整形(4 个字节)
    小数FLOAT单精度浮点数(4 个字节)
    DOUBLE双精度浮点数(8 个字节)
    日期TIME表达时间类型
    DATE表达日期类型
    DATETIME可表示时间类型也可表示日期类型
    字符串CHAR(m)固定长度字符串,m 取值:0~255
    VARCHAR(m)可变长度字符串,m 取值:0~25535
    大二进制TINYBLOB允许长度:0~225字节
    BLOB允许长度:0~65535字节
    MEDIUMBLOB允许长度:0~167772150字节
    LONGBLOB允许长度:0~4294967295字节
    大文本TINYTEXT允许长度:0~225字节
    TEXT允许长度:0~65535字节
    MEDIUMTEXT允许长度:0~167772150字节
    LONGTEXT允许长度:0~4294967295字节
    展开全文
  • SQL数据操作语句分类

    千次阅读 2019-01-06 22:29:16
    首先SQL( Structured Query Language ),结构化查询语言。是一种数据库查询和设计程序语言,用于存取数据库以及查询、更新和管理关系数据库系统。同事也是数据库脚本文件的扩展名。  然后呢,数据库语句分为(1)...

      首先SQL( Structured Query Language ),结构化查询语言。是一种数据库查询和设计程序语言,用于存取数据库以及查询、更新和管理关系数据库系统。同事也是数据库脚本文件的扩展名。

       然后呢,数据库语句分为(1)数据定义语句还有:DDL(2)数据操纵语句:DML(3)数据查询语句:DQL(4)数据控制语句:DCL

    <1>数据定义语句简称DDL:(Data Definition Language) 

    建库、建表、设置约束等: create/drop/alter

    1.创建数据库:

    create database IF NOT EXISTS hncu CHARACTER SET utf8;

    2.创建表格:

    use hncu;

    create table IF NOT EXISTS sutd(id int, name varchar(30), int  age);

    3更改表结构(设置约束)

    desc stud;//查看表结构

    alter table stud drop column age;

    alter table stud add column age int;

    <2>数据操纵语句简称DML:(Data manipulation language)

    主要指数据的增删查改:Select/delete/update.insert/call等操作

    select *from stud;

    select name,age from stud; //查询指定的列

    select name as 姓名, age as  年龄 from stud;

    <3>数据查询语句简称DQL:(Data query language)

    数据查询语句:

    SELECT <字段名表>
    FROM <表或视图名>
    WHERE <查询条件>

    <4>数据控制语句DCL:(Data Control Language)

    用来设置火更改数据库用户或角色权限的语句,包括(grant,deny,revoke等)语句。

     

     

     

     

     

     

    展开全文
  • SQL修改数据

    千次阅读 2019-11-21 17:40:16
    关系数据库的基本操作就是增删改...而对于增、删、改,对应的SQL语句分别是: INSERT:插入新记录; UPDATE:更新已有记录; DELETE:删除已有记录。 INSERT INSERT语句的基本语法是: INSERT INTO <表名> (...
  • 前言      数据库的原理就是增删改查,本次将用T-SQL 实现对数据库的增删改查。 一. 插入数据 二. 删除数据 三. 更新数据 四. 查询数据
  • 表中某个字段原本是int类型 想修改为varchar 使用 alter table mp_memberprice alter ...修改mp_memberprice表中dCreateTime字段数据类型为varchar(11) alter table mp_memberprice modify column dCreateTime varc
  • SQL语句 数据插入 单行插入 单行插入的INSERT语句格式如下: INSERT [INTO] <表名> [(<列名表>)] VALUES (值列表) 其中,<列名表>中的列名必须是<表名>中有的列名,值列表中的值可以是常量...
  • 数据控制语句:用于控制不同的数据段直接的许可和访问级别的语句。这些语句定义了数据库、表、字段、用户的访问权限权限和安全级别,主要包括关键字grant、revoke等。其主要是DBA用来管理系统中的对象权限时使用,...
  • 职位分类信息sql语句(附带视图代码),直接导入数据库,直接用。
  • 当月数据 select * from table t where t.create_time >=TRUNC(SYSDATE, 'MM') and t.create_time(SYSDATE) create_time为你要查询的时间 当年数据 select * from table t where t.create_time >=trunc...
  • SQL语言--语句优化总结

    万次阅读 多人点赞 2018-08-20 14:24:22
    性能不理想的系统中除了一部分是因为应用程序的负载确实超过了服务器的实际处理能力外,更多的是因为系统存在大量的SQL语句需要优化。 为了获得稳定的执行性能,SQL语句越简单越好。对复杂的SQL语句,要设法对之进行...
  • (2)在SQL Server Management Studio中查看图书借阅数据库的属性,并进行修改,使之符合要求。 (3)通过SQL Server Management Studio,在建好的图书借阅数据库中建立图书、读者和借阅3个表, 其结构为: 图书...
  • (3)修改数据表(alter table 语句) 1.修改表类型 alter table tablename modify column_name column_type_new -- tablename:表名 -- column_name:字段名 -- column_type_new:字段名的新数据类型 2....
  • SQL————数据定义详细语句

    千次阅读 2018-09-24 10:56:31
    则拒绝删除语句 ,当没有下属对象时,才能执行此语句   表:  1.创建表:   CREATE TABLE <表名>(<列名> <数据类型> [完整性约束条件],  ............................................... ...
  • SQLserver基础语句大全

    万次阅读 多人点赞 2019-06-09 13:17:50
    结构化查询语言(Structured Query Language)简称 SQL,是一种特殊目的的编程语言, 是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统; 同时也是数据库脚本文件的扩展名。 SQL DML ...
  • 我前面一篇博客讲解了什么是数据库中数据的定义语言和操作语言,接下来我们就详细讲解下 首先是数据的定义语言 1.CREATE DATABASE 语句 CREATE DATABASE 用于创建数据库。 SQL CREATE DATABASE 语法 CREATE DATABASE...
  • SQL语言ALTER语句修改表结构

    千次阅读 2018-06-04 21:15:58
    1、l STUDENT表中SNO设为非空和唯一,非空:alter table student modify sno char(8) not null;唯一:alter table student add unique(sno);l STUDENT表中增加一个字段SBIRTH,Alter table student add sbirth ...
  • 我进行updata操作,根绝年龄修改名字为成年,或者未成年 换个说法就是 如何把下面两句sql 合并成一句? updata 表 set name = 成年 where age >=18; updata 表 set name = 未成年 where age ; 究竟能不能一句sql...
  • SQL 数据控制语言(DCL)

    千次阅读 2020-03-01 00:03:38
    一、创建用户 ... -- 主机名指定允许在哪个主机上登录,如果是当前主机可以使用 localhost -- 通配符 % 表示可以在任意主机上登录 二、用户权限 -- 给用户授权 -- 语法:GRANT 权限1,权限2... ON 数据库名....
  • SQL语句之查询数据(MySQL)

    万次阅读 多人点赞 2018-04-19 16:41:37
    查询数据在数据库的操作中相当的重要,下面简单的介绍一下比较基础的SQL查询语句。 以下列的表为例进行操作: CREATE TABLE student( id INT, NAME VARCHAR(20), chinese FLOAT, english FLOAT, math FLOAT ...
  • sql语言分类 SQL语言按照实现的功能不同,主要分为4类: 数据定义语言DDL 数据查询语言DQL 数据操纵语言DML 数据控制功能DCL 数据定义语言DDL(Data Ddefinition Language) SQL数据定义语言主要用来定义...
  • 一、简单查询 SQL(Structured Query Language) 结构化查询... 代码如下:DML(Data Manipulation Language) 数据操作语言,用于检索或者修改数据 DDL(Data Definition Language) 数据定义语言,用于定义数据的结构
  • 使用SQL语句修改表结构(SQL Server) ALTER TABLE的语法格式如下: 上述格式主要参数说明如下: database_name:要在其中创建表的数据库的名称。 schema_name:表所属架构的名称。 table_name:要更改的表名称。 ...
  • 修改数据库模式 alter database mount/open..... 打开归档 --修改数据库为mount状态 alter database mount; --设置本地归档 alter database add archivelog 'TYPE=LOCAL,DEST=/data/arch,FILE_SIZE=1024,SPACE_...
  • SQL语句对表数据的操作

    千次阅读 2020-07-21 13:07:21
    数据的操作表示例新增数据整行插入指定列中插入数据指定列中插入多条数据修改数据删除数据查询数据查询整个表的数据查询指定字段数据查询指定字段数据并起别名查询指定字段数据并去重where子句比较运算符逻辑运算符...
  • MySQL 修改数据sql语句

    千次阅读 2018-09-14 20:38:58
    mysql用update修改数据,UPDATE语句更改表中单个行,一组行或所有行的列值。下面详细介绍update用法 1,update 模型 UPDATE table_name SET column_name1 = expr1,column_name2 = expr2,...WHEREcondition; 2,...
  • 结构化查询语言(Structured Query Language)简称SQL,结构化查询语言是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。SQL的功能非常的强大,但是,它并不繁琐,它的语句是非常...
  • SQL语句--数据库定义语言(DDL)语句及案例演示

    千次阅读 多人点赞 2020-06-14 17:12:48
    文章目录DDL:数据库定义语言CREATE:创建数据库、数据表创建数据库创建数据表ALTER:修改数据或结构添加字段DROP:删除数据库或数据表删除数据库删除数据表TRUNCATE:截断表内容删除表中的所有数据COMMIT:为数据表...
  • 一、 简单查询 简单的Transact-SQL查询只包括选择列表、FROM子句和WHERE子句。它们分别说明所查询列、查询的 表或视图、以及搜索条件等。 ...例如,下面语句显示testtable表中所有列的数据: 代码:

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 176,250
精华内容 70,500
关键字:

sql语言修改数据的语句