SQL常用语法及规则-表格的操作
一、规则和标准
1)每一行SQL语句结尾,加分号;
2)所创建的对象,名字用反引号(不是引号,与~同一个键);
3)一般关键字或保留字要大写;
4)两个中划线 + 空格(-- ),后面的语句为注释语句,不会被执行;
二、创建数据库
1)创建数据库
CREATE DATABASE `mydatabase`;
#创建数据库mydatabase
#创建时要选定数据库的编码方式:utf-8
2)查看本地已有的所有数据库
SHOW DATABASES;
3)创建表
格式:CREATE TABLE + `表名` + (表的属性) + DEFAULT CHARSET `编码方式(一般为utf8)`;
USE `mydatabase`;
#创建表前,要先表明使用的数据库,也就是要指出在哪个数据库内建表;
#此处指,在当前打开的数据库内建表;
CREATE TABLE `students`(
`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
`name` VARCHR(20) NOT NULL,
`nickname` VARCHAR(20) NULL,
`sex` CHAR(1) NULL,
`in_time` DATETIME NULL
) DEFAULT CHARSET 'UTF8';
A、CREATE TABLE:关键字
B、`students`:表名字
C、`id`、`name`、`nickname`、`sex`、`in_time`:表格属性,表示每个表格必须要的列,每列头部为:`id`、`name`、`nickname`、`sex`、`in_time`;
D、INT、VARCHAR(200):字段类型;其中200,表示字符最长站位200,若小于200,以实际存储大小为准;
E、NOT NULL:不为空,表示此属性必须要有内容,不能是null;
F、AUTO_INCREMENT:表示学生id自动增长(可以理解为每行的许号),若第一个学生的id为1,则第二个自动为2;
G、PRIMARY KEY:为表格的关键字,每个表格都有一个唯一的关键字,通过key查询到某一数据库的某一特定表格;可以单独定义key的指向:PRIMARY KEY(`id`)
H、DEFAULL CHARSET 'UTF8':表格的编码格式为 'UTF8';
#使用DEFAULT来设定默认值,这样默认值不是NULL;
4)常见字段类型
A、int:整数,小数不算;
B、char:字符,a、b、c等;是固定的存储长度的数据类型,也就是,给定长度后(如:CHAR(200)),一定会占有给定长度的内存,即使只有一个字符;
C、varchar:字符,a、b、c等,是非固定的存储长度的数据类型,也就是,按实际存储长度为准,不按给定长度(如:VARCHAR(200));
D、date:日期,如:2018-4-20;
E、datetime:日期 + 时间,如:2018-4-20 08:52;
F、TEXT:一般存储较大的内容;
5)插入数据
A、添加一行:INSERT INTO + 表格名字 + (表格属性) + VALUE + (表格一行的内容);
例:INSERT INTO `students` VALUE(1, 'Volcano1', '灿哥1', '男', now());
#now():SQL的函数,表示当前时间;
#添加一行数据,可以不写出表格的首行: (`id`, `name`, `nickname`, `sex`, `in_time`) ,默认出入的数据与首行头部一一对应;
B、添加几行:INSERT INTO + 表格名字 + 表格属性 + VALUES + (第一行内天), (第二行内容), (第三行内容);
例1:INSERT INTO `students_1` (`id`, `name`, `nickname`, `sex`, `in_time`) VALUES
(2, 'Volcano2', '灿哥2', '男', now()),
(3, 'Volcano3', '灿哥3', '男', now()),
(4, 'Volcano4', '灿哥4', '男', now());
例2:INSERT INTO `students` (`name`, `in_time`) VALUES
( 'Volcano5', now()),
( 'Volcano6', now()),
( 'Volcano7', now());
#此处属性中没添加`id`,因为,id定义的为AUTO_INCREMENT(自动增长),也就是只要添加了第一行后,后面的不需要再添加;
#也没有加`nickname`、`sex`,因为这两列的数据可以为NULL,也就是说,可以不赋值;
6)查询数据
A、格式
SELECT + 检索的内容
FROM + 检索的对象(如从表中进行检索)
[WHERE + 查询条件]
[GROUP BY {col_name | expr | position}]
[HAVING where_definition]
[ORDER BY {col_name | expr | position}
[ASC | DESC], ...]
[LIMIT {[offset, ] row_count}]
#ORDER BY:选择查询结果的排序方式;其中{col_name | expr | position},指排序的依据;其中[ASC | DESC], ...],指排序方式:ASC为正向排序、DESC表示反向排序;
#LIMIT:选择性显示查询结果,如:LIMIT m, n,从第m+1行开始,显示n行;
B、SELECT *:查询对象的全部;
USE `school`;
SELECT * FROM `students_1`;
#此处查询整个表的内容;
C、SELECT + 对象的属性:查询对象的个别内容;
USE `school`;
SELECT `name`, `nickname` FROM `students_1`;
#查询表student_1的其中两列(`name`、`nickname`)的内容;
D、SELECT + 对象属性 + FROM + 查询对象 + WHERE + 限定条件;
USE `school`;
SELECT `id`, `name`, `nickname` FROM `students_1` WHERE `sex` = '男';
#查询男人的性别和昵称;
E、限定输出结果的排序方式:ORDER BY + 排序依据 + 排序方式(ASC表示正向排序、DESC表示反向排序)
USE `school`;
SELECT `id`, `name`, `nickname` FROM `students_1` WHERE `sex` = '男' ORDER BY `id` DESC;
7)修改数据
A、格式
UPDATE + 修改对象 +SET +修改的内容 + WHERE + 修改的条件
#如果没有WHERE限制修改条件,默认对整个数据库进行修改;
例1:UPDATE `students_1` SET `sex` = '女' WHERE `id` = '男';
例2:UPDATE `students_1` SET `sex` = '女' WHERE `id` > 6;
8)删除数据
A、格式
DELETE FROM + 操作对象(如表格) WHERE + 操作对象中被删除的内容/删除的条件;
#如果没有WHERE条件,默认删除整个对象内的内容,如表,则会删除整个表内的内容,但不会将表删除;
例1:DELETE FROM `students_1` WHERE `id` = 5;
#删除一行;
例2:DELETE FROM `students_1` WHERE `sex` = '男';
#删除所有 'sex' = '男' 的行;
9)其它
A、新建索引:CREATE INDEX
B、修改表:ALTER TABLE
C、删除数据库、表、索引、视图等:DROP
# 要备份数据库,避免错误修改数据库后无法恢复;
# 不要因学语法而学语法,目的在于对数据库中的数据进行操作,一般通过数据库的管理工具进行数据管理,这样更快捷方便;
SQL常用语法及规则-表格的操作的更多相关文章
- Sql常用语法以及名词解释
Sql常用语法以及名词解释 SQL分类: DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE) DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT) D ...
- sql 常用语法汇总
Sql常用语法 SQL分类: DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE) DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT) DCL—数据控 ...
- SQL 常用语法记录
SQL语法 注意:SQL 对大小写不敏感 可以把 SQL 分为两个部分:数据操作语言 (DML) 和 数据定义语言 (DDL). 数据操作语言 (DML) SQL (结构化查询语言)是用于执行查询的语 ...
- Sql常用语法总结
SQL分类: DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE) DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT) DCL—数据控制语言(GRAN ...
- SQL 常用语法
一.SQL分类 DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE) DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT) DCL—数据控制语言(GRA ...
- PL/SQL常用语法及举例
PLSQL语句 DECLARE 声明部分 BEGIN 程序编写,SQL语句 EXECPTION 处理异常 END; / 声明部分(DECLARE) SQL> set serveroutput o ...
- oracle入门(6)——PL/SQL常用语法
[本文介绍] 本文不是”语法大全“,只是记录下作项目里自己常用的一些语法.方便查询. [语法] [输出] (1)输出语法 DBMS_OUTPUT.PUT_LINE( ) [定义] (1)定义变 ...
- LINQ TO SQL 常用语法
LINQ To SQL中IN的用法 IN: C# var result = from s1 in context.Customers where (new string[] { "UK& ...
- sql常用语法
--在表中添加字段if col_length('JX_DomesticStudy','XL') is null begin alter table JX_DomesticStudy add PXlev ...
随机推荐
- maven3 org.codehaus.plexus.classworlds.launcher.launcher 找不到或无法加载主类
maven3 org.codehaus.plexus.classworlds.launcher.launcher 找不到或无法加载主类 嗯,网上很多资料说是路径的问题,确实是有可能是路径的问题,而且还 ...
- Java语言实现简单FTP软件------>源码放送(十三)
Java语言实现简单FTP软件------>FTP协议分析(一) Java语言实现简单FTP软件------>FTP软件效果图预览之下载功能(二) Java语言实现简单FTP软件----- ...
- linux c编程:进程环境
一 进程终止: ⼀个进程可以登记若⼲个(具体⾃⼰验证⼀下)个函数,这些函数由exit⾃动调⽤,这些函数被称为终⽌处理函数, atexit函数可以登记这些函数. exit调⽤终⽌处理函数的顺序和atex ...
- C#窗体互动
说白了就是在一个窗体操作另外一个窗体的东西. 原理是把form2的数据提取出来,利用中间的静态类middle来传递数据,触发事件,调用委托,来修正form1 效果如下: Form1.cs usin ...
- C#使用SQL语句时候的万用密码问题
实际上万用密码就是因为SQL里面的语句--是注释,利用bug添加用户名和密码. 例如,用户名为 adada’ or 1=1-- 第一个种写法登录成功了 第二种写法登录失败(正确) 第三种写法登录失败( ...
- iOS swift 语句只能写在函数体内
1. 语句只能在函数体内: eg 因为我写在playground里面没报错 我直接放在这个位置就报错了 在这个.swift 文件里面 print 应该写在func 等方法(函数)里面 其他语句 ...
- P2163 [SHOI2007]园丁的烦恼
题目 P2163 [SHOI2007]园丁的烦恼 做法 关于拆点,要真想拆直接全部用树状数组水过不就好了 做这题我们练一下\(cdq\)分治 左下角\((x1,y1)\)右上角\((x2,y2)\), ...
- POJ 之2386 Lake Counting
Lake Counting Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 20003 Accepted: 10063 D ...
- 暑假集训第一周比赛G题
http://acm.hust.edu.cn/vjudge/contest/view.action?cid=83146#problem/G G - 向 Crawling in process... C ...
- dhtmlxgrid v3.0学习笔记
dhtmlxgrid v3.0学习笔记 分类: dhtmlx JavaScript2012-01-31 15:41 1744人阅读 评论(0) 收藏 举报 stylesheetdatecalendar ...