MySQL学习笔记_8_SQL语言基础复习
SQL语言基础复习
一、概述
SQL语句注释方式
1)以“#”开头直到行尾的所有内容都是注释
2)以“--”(--后还有一个空格)开头直到行尾的所有内容都是注释
3)以“/*”开始,以“*/”结束的所有内容都是注释,可用于注释多行
二、数据库操作
1、创建数据库
create database db_name;
db_name命名规则:
1)名称可由任意字母,数字,”_”或”$”组成,可以是上述任意字符作为开头,但是不能单独使用数字作为数据库名称。
2)长度限制:数据库、表、列和索引的名称最多64个字符,别名最多可长达256个字符。
3)不能使用MySQL关键字作为数据库、表名。
2、删除数据库
drop database db_name; #drop
下降,终止
他将不可恢复的删除数据库及其所有数据表,建议在使用drop
database前,先对数据库进行备份
三、表的操作
1、创建数据表
create table <表名>
(<列名> <数据类型>
[<列级完整性约束条件>]
[,<列名> <数据类型>
[<列级完整性约束条件>]]...
[,表级完整性约束条件]
);
拓展:create temporary table...
#创建临时表,临时表在服务器交互结束时会自动删除
2、修改数据表
指:修改表的结构,使用alter talbe语句来修改表中列的属性,甚至修改表的名称
alter talbe <表名>
[add <新列名> <数据类型>
[完整性约束]]
[drop <完整性约束>]
[alter column <列名> <数据类型>];
#alter修改,更改
3、删除表
drop table table_name;
drop table if exists table_name;
四、记录的操作
1、插入数据
insert into <表名>
[(<属性列1>,<属性列2>...)]
values(<常量1>[,<常量2>...])
e.g. insert into student_info(stu_id,stu_name,str_sex,str_age)
values(234,”xiaofang”,”男”,18);
2、更新记录
update <表名>
set <列名>=<表达式>[,<列名>=<表达式>]...
[where<条件>];
说明:update语句包括set子句和where子句,set子句指定修改方式,要修改的列以及修改后的取值,where子句用于指定钥修改的数据记录,默认修改表中的所有记录。更新语句的关键就是要设定好用于进行判断的where条件!
e.g. update student_info set str_age=22 where stu_id = 9028;
3、删除记录
delete from <表名>[where
<条件>];
说明:如果用户在使用delete语句时不设定where条件,则表格中的所有记录将被清空!
delete from student_info where stu_id = 9028;
五、查询
select [all | distinct] <目标列表表达式>[,<目标列表表达式>]
…
from <表名或视图名>[,<表名或视图名>]...
[where <条件表达式>]
[group by <列名1>[having
<条件表达式>]]
[order by <列名2>[asc|desc]];
六、学生选课系统数据库设计流程示例
1、数据库设计流程:
系统分析--->逻辑设计--->物理实现
2、系统分析
3、逻辑设计
MySQL学习笔记_8_SQL语言基础复习的更多相关文章
- Java学习笔记:语言基础
Java学习笔记:语言基础 2014-1-31 最近开始学习Java,目的倒不在于想深入的掌握Java开发,而是想了解Java的基本语法,可以阅读Java源代码,从而拓展一些知识面.同时为学习An ...
- ios开发学习笔记001-C语言基础知识
先来学习一下C语言基础知识,总结如下: 在xcode下编写代码. 1.编写代码 2.编译:cc –c 文件名.c 编译成功会生成一个 .o的目标文件 3.链接:把目标文件.o和系统自带的库合并在一起, ...
- Arduino学习笔记② Arduino语言基础
授人以鱼不如授人以渔,目的不是为了教会你具体项目开发,而是学会学习的能力.希望大家分享给你周边需要的朋友或者同学,说不定大神成长之路有博哥的奠基石... QQ技术互动交流群:ESP8266&3 ...
- ndk学习之C语言基础复习----虚拟内存布局与malloc申请
在这一次中来学习一下C语言的内存布局,了解它之后就可以解释为啥在用malloc()申请的内存之后需要用memset()来对内存进行一下初始化了,首先来了解一下物理内存与虚拟内存: 物理内存:通过物理内 ...
- ndk学习之c++语言基础复习----面向对象编程
关于面向对象编程对于一个java程序员那是再熟悉不过了,不过对于C++而言相对java还是有很多不同点的,所以全面复习一下. 类 C++ 在 C 语言的基础上增加了面向对象编程,C++ 支持面向对象程 ...
- ndk学习之c++语言基础复习----C++容器、类型转换、异常与文件流操作
继续来复习C++,比较枯燥,但是这是扎实掌握NDK开发的必经之路,不容小觑. 容器: 容器,就是用来存放东西的盒子. 常用的数据结构包括:数组array, 链表list, 树tree, 栈stack, ...
- ndk学习之C语言基础复习----基本数据类型、数组
关于NDK这个分类在N年前就已经创建了,但是一直木有系统的记录其学习过程,当然也没真正学会NDK的技术真谛,所以一直也是自己的一个遗憾,而如今对于Android程序员的要求也是越来越高,对于NDK也是 ...
- MySQL学习笔记01_数据库基础知识
01_1 mysql数据库启动与停止 以<管理员权限>启动cmd: 输入net stop mysql停止mysql服务: 输入net start mysql启动mysql服务: 输入mys ...
- MySQL学习笔记_5_SQL语言的设计与编写(上)
SQL语言的设计与编写(上) 一.SQL语句分类 数据定义语言(DDL): 用于定义和管理数据对象,包括数据库.数据表.视图.索引等.例如:CREATE.DROP.ALTER等语句. 数据操作语言(D ...
随机推荐
- 详解BLE连接建立过程
同一款手机,为什么跟某些设备可以连接成功,而跟另外一些设备又连接不成功?同一个设备,为什么跟某些手机可以建立连接,而跟另外一些手机又无法建立连接?同一个手机,同一个设备,为什么他们两者有时候连起来很快 ...
- MongoDB 索引限制
额外开销 每个索引占据一定的存储空间,在进行插入,更新和删除操作时也需要对索引进行操作.所以,如果你很少对集合进行读取操作,建议不使用索引. 内存(RAM)使用 由于索引是存储在内存(RAM)中,你应 ...
- Android源码解析——Toast
简介 Toast是一种向用户快速展示少量信息的视图.当它显示时,它会浮在整个应用层的上面,并且不会获取到焦点.它的设计思想是能够向用户展示些信息,但又能尽量不显得唐突.本篇我们来研读一下Toast的源 ...
- move_uploaded_file的failed to open stream错误处理
PHP的基本语法学习的差不多了,现在开始学习PHP的文件上传功能实现了.功能中使用到了move_uploaded_file方法,运行时报错: failed to open stream. 经过查资料, ...
- Swift 3中新的访问控制关键字fileprivate和open
在Swift 3中除去原有的3个访问控制关键字private,public,internal,又添加了2个关键字fileprivate和open 它们可以看成是对private和public的进一步细 ...
- Gradle 1.12用户指南翻译——第五十二章. Maven 插件
本文由CSDN博客貌似掉线翻译,其他章节的翻译请参见:http://blog.csdn.net/column/details/gradle-translation.html翻译项目请关注Github上 ...
- 破解Oracle ERP 密码
1. 写作目的 1 2. 利用Toad或其它pl/sql工具在Oracle ERP Database中建立Package,源码如下 1 (1). ...
- 数据标准化/归一化normalization
http://blog.csdn.net/pipisorry/article/details/52247379 基础知识参考: [均值.方差与协方差矩阵] [矩阵论:向量范数和矩阵范数] 数据的标准化 ...
- Java多线程模型
谈到Java多线程就涉及到多线程的模型及Java线程与底层操作系统之间的关系.正如我们熟知,现代机器可以分为硬件和软件两大块,如图2-5-1-1,硬件是基础,软件提供实现不同功能的手段.而且软件可以分 ...
- SQLite 数据类型(http://www.w3cschool.cc/sqlite/sqlite-data-types.html)
SQLite 数据类型 SQLite 数据类型是一个用来指定任何对象的数据类型的属性.SQLite 中的每一列,每个变量和表达式都有相关的数据类型. 您可以在创建表的同时使用这些数据类型.SQLite ...