SQL特点--》

1)综合统一。SQL是集数据定义、数据操作和数据控制于一体,语言峰峰统一,可独立完成数据库生命周期的所有活动。

2)高度非过程化。SQL语言是高度非过程化语言,当进行数据操作时只需要指出“做什么”,无需指出“怎么做”,存储路径对用户来说是透明的,提高了数据的独立性。

3)面向集合的操作方式。SQL语言采用面向集合的操作方式,其操作队形、查找结果可以是元组的集合。

4)两种使用方式。第一种(自含式语言):用户可以在终端键盘输入SQL命令,对数据可进行操作;第二种(嵌入式语言):将SQL语言潜入到高级语言程序中。

5)语言简洁、易学易用。SQL语言功能极强,完成核心功能只用9个动词,包括如下4类:

  • 数据查询:Select
  • 数据定义:CREATE、DROP、ALTER
  • 数据操作:INSERT、UODATE、DELETE
  • 数据控制:GRANT、REVORK

SQL数据定义:

1.创建表

CREATE TABLE<表名>(<列名><数据类型>[列级完整性约束条件(NULL|UNIQUE)]

<列名><数据类型>[,列级完整性约束条件]......

[,<表级完整性约束条件>]);

2.修改和删除变

  1)修改表

      ALTER TABLE<>[ADD<新列名><数据类型>[完整性约束条件]]

[DROP<完整性约束条件>]

[MODIFY<列名><数据类型>];

  2)删除表

    DROP TABLE<表名>

3.索引建立与删除

  1)建立索引

    CREAT [UNIQUE][CLUSTER]INDEX<索引名>

       ON<表名>(<列名>[<次序(ASC(升序,默认)|DSC(降序))>][,<列名>[<次序>]]...);

  2)删除索引

     DROP INDEX<索引名>

4.视图创建与删除

  1)创建视图

    CREAT VIEW 视图名 (列表名)

      AS SELECT 查询语句

      [WITH CHECK OPTION]         //表示对UPDATE,INSERT,DELECT操作时保证更新、插入、删除行满足视图定义中的谓词条件

SQL数据查询语句:

1.select基本结构

  SELECT [ALL|DISTINCT] <目标列表达式>[,<目标列表达式>]...

        FROM <表名或视图名>[,<表名或视图名>]

        [WHERE <条件表达式>]

        [GROUP BY <列名1>[HAVING<条件表达式>]]        //分组

        [ORDER BY <列名2>[ASC|DESC]]                      //排序

2.简单查询

  简单查询只需要实用三个保留字SELECT,FROM,WHERE

3.连接查询

  查询设计两个以上的表,则称呼为连接查询

    SELECT <表名1>,<表名2>

4.子查询与聚集函数

  1)子查询(嵌套查询)

    一个SELECT-FROm-WHERE查询块可以嵌入另一个查询块中。SQL中允许多重嵌套

  2)聚集函数:是一个值的集合为输入返回单个值的函数

    SQL提供了5各预定义集函数平均值AVG、最小值MIN、最大值MAX、求和SUM、计数COUNT

    为此ANY和ALL,必须同时使用比较运算符(用奇函数实现子查询通常比直接使用ALL和ANY查询效率高)

5.分组查询

  1)GROUP BY 对元组进行分子

  2)HAVING 假如元组在分组前按照某种方式加上限制,是的不需要的分组为空,可以在GROUP BY 子句后面跟一个HAVINg子句即可。

6.更名运算

  OLD-NAME AS NEW-NAME

7.字符串操作(大小写敏感)

  % 匹配任意字符串

  _   匹配任意一个字符

8.视图查询

SQL数据更新:

1.插入

  INSERT INTO 基本表名(字段名[,字段名]...)

       VALUES (常量,[,常量];查询语句

  INSERT INTO 基本表名(列表名)

       SELECT 查询语句

2.删除

  DELECT FROM 基本表名

  [WHERE 条件表达式]

3.修改

  UPDATA 基本表名

  SET 列名=值基本表达式(,列名=值基本表达式...)

  [WHERE  条件表达式]

SQL访问控制:

1.授权语句

  GRANt <权限>[,<权限>]...[ON<对象类型><对象名>]TO<用户名>[,<用户名>]...

  [WITH  GRANT OPTION]

常见的操作权限
对象 对象类型 操作权限
属性列 TABLE SELECT、INSERT,UPDATE,DELECT,ALL PRIVILEGES
视图 TABLE SELECT、INSERT,UPDATE,DELECT,ALL PRIVILEGES
基本表 TABLE SELECT、INSERT,UPDATE,DELECT,ALTER,INDEX,ALL PRIVILEGES
数据库 DATABASe CREATETAB建立表的权限,可由DBA授予普通用户
  • PUBLIC:接受权限的用户可以是单个或多个具体的用户,PUBLIc参数可以将权限赋给全体用户
  • WITH GRANT OPTION:若制定了此举,那么获得权限的用户还可以将权限赋给其他用户。

2.收回权限语句

  REVOKE<权限>[,<权限>]...[ON<对象类型><对象名>]

    FROM<用户>[,<用户>]...;

嵌入式SQL:

  PL/I和C语言的引用格式:

    EXEC SQL<SQl语句>

  COBOL语言的引用格式:

    EXEC SQL<SQl语句>END-EXEC

SQL数据库基本语句的更多相关文章

  1. sql数据库常用语句总结

    1.增加字段     alter table docdsp     add dspcodechar(200)2.删除字段     ALTER TABLE table_NAME DROP COLUMNc ...

  2. SQL数据库基本操作语句

    一.数据库及数据库表定义 1.创建基本表 create table <表名> (<列名><数据类型>[列级完整性约束条件]                      ...

  3. SQL 数据库基础语句

    一.基础 1.说明:创建数据库CREATE DATABASE database-name 2.说明:删除数据库drop database dbname3.说明:备份sql server--- 创建备份 ...

  4. NumberFormatException: Invalid int类型不匹配异常——使用SQL数据库查询语句select * from blacknumber order by _id desc limit ?,20;出现

    异常:类型不匹配 05-06 08:12:38.151: E/AndroidRuntime(14904): java.lang.NumberFormatException: Invalid int: ...

  5. sql数据库监控语句

    --查找被阻塞进程 --查找阻塞头进程 and exists ( from master..sysprocesses where blocked =p.spid) --查找等待时间长的进程 order ...

  6. sql数据库相关语句

    易错点 Where需要放在from语句之后:where中不能出现聚合函数(就是能够将几行一列合并为一行一列的函数,比如max,min,avg,count()):但是可以出现其他,如比较符,getdat ...

  7. sql 数据库操作语句 不带select

    MySQL数据操作语句 1.总纲 DDL -数据定义语句** create/drop/alter ** create: 创建 drop:删除 alter:修改 DML -数据操作语句 ** inser ...

  8. Sql数据库收缩 语句特别快

    数据库在收缩的时候..使用菜单 >> 任务 >> 收缩 >> 文件 >> 数据,  特别慢..还会报错失败.. 但使用脚本 USE [dbName] G ...

  9. [SQL]数据库常用语句

    1.使用旧表创建新表 SELECT * INTO CC FROM AA ; (适用于版本SQL SERVER)

随机推荐

  1. CentOS of MySQL command

    1.本地连接数据库 [root@iZ253lxv4i0Z mysql]# mysql -u root -pEnter password: or: [root@iZ253lxv4i0Z mysql]# ...

  2. linux命令(6)crontab的用法和解析

    一,写入格式: * * * * *   command minute   hour   day   month   week   command 其中: minute: 表示分钟,可以是从0到59之间 ...

  3. 深入Java集合学习系列:HashMap的实现原理

    1.    HashMap概述: HashMap是基于哈希表的Map接口的非同步实现.此实现提供所有可选的映射操作,并允许使用null值和null键.此类不保证映射的顺序,特别是它不保证该顺序恒久不变 ...

  4. ylbtech-LanguageSamples-Threading(线程处理)

    ylbtech-Microsoft-CSharpSamples:ylbtech-LanguageSamples-Threading(线程处理) 1.A,示例(Sample) 返回顶部 “线程处理”示例 ...

  5. JAVA算数运算符

    算数运算符 序号 算数运算符 含义用法 特殊含义用法 1 + 加法 字符串连接 2 - 减法   3 * 乘法   4 / 除法   5 % 取余   实例: public class Test{ p ...

  6. Java同步块

    原文:http://ifeve.com/synchronized-blocks/ Java 同步块(synchronized block)用来标记方法或者代码块是同步的.Java同步块用来避免竞争.本 ...

  7. 通过批处理(bat)命令创建mysql数据库及用户等

    1.建立数据库文件:mysqlCreatDB.sql create database Mydb 2.为用户赋予权限文件:grantUser.sql grant select,insert,update ...

  8. [SQL]reName存储过程

    exec sp_helptext aa--应用sp_helptext查看存储过程的定义文本 exec sp_depends aa --通过sp_depends查看存储过程的相关性 exec sp_he ...

  9. POJ 1611

    菜鸟第一次做这种.想了好一会儿.== 首先还是初始化记忆数组,使得每一个元素的初始根节点是自己. 然后是对输入的数据进行并集.我们拿出每组元素的第一个作为根节点. 每次检测是否已经存在根节点.如果存在 ...

  10. isAnagram

    /*Given two strings s and t, write a function to determine if t is an anagram of s. For example, s = ...