SQL语句及其种类

1. SQL语句分为三类:

    DDL(Data Definition Language): CREATE、DROP、ALTER;

    DML(Data Manipulation Language): SELECT、INSERT、UPDATE、DELETE;

    DCL(Data Control Language): COMMIT、ROLLBACK、GRANT、REVOKE;

2. SQL语句的基本书写规则:

    SQL语句要以分号(;)结尾;

    SQL语句不区分大小写,但是插入到表中的数据是区分大小写的;

    单词之间使用半角空格隔开;

表的创建、删除和更新

1. 创建数据库和表:

    使用CREATE语句创建数据库:

    CREATE DATABASE shop;

    该语句创建一个名为shop的数据库,使用该数据库:

    USE shop    (MySQL)

    使用CREATE语句创建表:

    CREATE TABLE <表名>(
        <列名1> <数据类型> <该列所需约束>,
        <列名2> <数据类型> <该列所需约束>,
        <列名3> <数据类型> <该列所需约束>,
                         …
        <该表的约束1>, <该表的约束2>,  ...
    );

    示例:

    CREATE TABLE Shohin(
        shohin_id        CHAR(4)            NOT NULL,
        shohin_mei     VARCHAR(100) NOT NULL,
        shohin_bunrui VARCHAR(32)   NOT NULL,
        hanbai_tanka  INTEGER           ,
        shiire_tanka    INTEGER           ,
        torokubi           DATE                 ,
        PRIMARY KEY (shohin_id)
    );

    创建好后,查看表的定义内容:

    SHOW COLUMNS from Shohin; (MySQL)

2. 命名规则:

    1. 数据库名称,表名、列名都使用半角英文字母、半角数字、下划线组成,并且以半角英文字母开头;

    2. 同一个数据库中不能有同名表,同一个表中不能有同名列;

3. 表的删除,使用DROP语句可以删除表格和数据库:

    DROP TABLE <表名>;

    DROP DATABASE <数据库名>;

    表在删除后无法恢复;

4. 表定义的更新:

    使用ALTER语句更新表的定义:

    ALTER TABLE <表名> ADD COLUMN <列的定义>;

   如: ALTER TABLE Shohin ADD COLUMN shohin_mei_kana VARCHAR(100);

    ALTER TABLE <表名> DROP COLUMN <列名>;

    如 ALTER TABLE Shohin DROP COLUNM shohin_mei_kana;

    ALTER TABLE <表名> MODIFY <列名> <修改后的定义>;

    如 ALTER TABLE Shohin MODIFY id integer auto_increment;

5. 修改表名:

    标准SQL并没有RENAME,各个数据库更改表名的语句分别为:

    Oracle/PostgreSQL: ALTER TABLE Sohin RENAME TO Shohin;

    DB2: RENAME TABLE Sohin TO Shohin;

    SQL Server: sp_rename ’Sohin’, ’Shohin’;

    MySQL: RENAME TABLE Sohin TO Shohin;

6. 向表中插入数据:

    使用INSERT语句向表中插入数据:

    INSERT INTO <表名> VALUES <每列的内容>;

    如: INSERT INTO Shohin Values('0001','T-shirt','clothes',1000,500,'2009-09-20’);

    通过 SELECT * FROM Shohin查看表记录 

 

最新文章

  1. JavaScript链表
  2. 微信开发中遇到“当前页面的url未注册”问题
  3. 寄售Consignment和VMI有什么区别?
  4. WPF 进程间通讯----inter-process communication
  5. ros和Android(一)
  6. 总结Widows 7 Start-&gt;Run 命令
  7. 使用数组实现队列----《数据结构与算法分析---C语言描述》
  8. boostrap---btn
  9. Android的cookie的接收和发送
  10. Redis缓存项目应用架构设计一
  11. java基本的要点
  12. 安装Linux桌面后无法显示登录桌面
  13. HDU 4010 Query on The Trees(动态树)
  14. 【Python】断言功能Assertion
  15. 关于PS的操作
  16. 关于TCP长连接和发送心跳的一些理解
  17. java学习——异常处理机制
  18. ubuntu修改Bash命令行提示符
  19. [webpack] Webpack &#21035;&#21517;
  20. Hadoop初步简介

热门文章

  1. 用Redis轻松实现秒杀系统
  2. java桌面程序打包教程
  3. 如何在你的blog中添加炫酷的飘雪动画效果
  4. 让你变懒的 Android Studio Live Templates
  5. 我的Android进阶之旅------&amp;gt; Android在TextView中显示图片方法
  6. 菜鸟版JAVA设计模式—外观模式
  7. HDOJ 1507 Uncle Tom&amp;#39;s Inherited Land*
  8. NBUT 1217 Dinner
  9. IntelliJ IDEA(五) :Settings(中)
  10. Spring基础知识之依赖注入