深入浅出SQL笔记1–数据和表
1.数据库的概念及组成
数据库是保存表和其他相关SQL结构的容器。
数据库是由各种各样的表构成的,一个数据库里面的表总是存在相互联系的关系。
数据库内的信息组成了表,表示由行和列构成的,行是一组能够描述某个事物的里列的集合,构成一个对象的属性,列是存储在表中的一块数据。
需要注意的是列也叫做:字段, 行也叫属性。
2.创建一个表的步骤:
1.在创建表前先把数据分类,尤其要注意每列的数据类型。
2.使用CREATE DATABASE语句来创建存储所有表的数据库。
创建一个名为gregs_list的数据库,注意后面结尾处的分号。
3.使用USE 数据库 语句进入数据库,然后创建表。
4.所有表都以CREATE TABLE 语句构建,语句中包含列名及其数据类型。
5.一些常用数据类型有CHAR, VARCHAR, BLOG, INT, DEC, DATE, DATETIME, 每种数据类型的存储规则都不一样
CHAR(size) : 保存固定长度的字符,在括号中制定字符串长度,最多255个字符。
VARCHAR(size) : 保存可变长度的字符串,在括号里面指定字符串的最大长度,最多255,如果值得长度大于255,就会被转为TEXT类型。
BLOG : 存放大量文本数据库。
INT : 数字应该为整数,包括整数和负数。
DEC(num1, num2) :保存浮点数,第一个num1表示总位数,第二个num2表示小数点后的位数。
DATE : 日期,格式为:YYYY-MM-DD
DATETIME : 日期和时间的组合:YYYY-MM-DD HH:MM:SS .
3.删除和显示数据库
1.删除一个数据库或者数据库中的表
语法:DROP DATABASE 数据库名
DROP TABLE 表名
2.检查,显示之前创建的表:
4.插入数据
数据库和表都已经创建了,剩下的就是往表中添加数据了,添加数据用INSERT关键字。
语法:
INSERT INTO your_table(column_name1, column_name2,……)
VALUES(‘value1’, ‘value2’, ……)
注意:
1.第二组括号里面的值必须和列名的顺序相同。
2.只用INT和DEC类型不需要加引号。
插入的三种写法:
1.我们可以改变列的顺序,只要记得数据指的顺序也要一起调整。
2.列表名可以省略,但数据必须全部填入,而且必须和当初创建表时的顺序完全相同。
3.省略部分列,也即可以之填入一部分列值就好了
关于NULL
null 表示未定义的,就是说还没有填入任何信息,不知道是为空的还是有什么数字,该处正等待输入数据呢。null是不同与空值的,空值也表示已经赋值过来,但是null表示还没有进行任何的赋值行为。
因为是未赋值的,所以也是不可以进行对比的。
我们在列中加入NOT NULL 就可以限定该列不能不定义。
若列有默认值,我们可以使用DEFAULT进行设置初始默认值,若没有进行赋值,就用默认值。
CREATE TABLE doughnut_list
(
doughnut_cost DEC(3,2) NOT NULL DEFAULT 1.00
)
深入浅出SQL笔记1–数据和表的更多相关文章
- SQL 已有数据的表创建标识列
针对已有数据的表创建标识列: ,) constraint FID_1 primary key(FID)
- 数据分析---SQL(删除数据或表)
一.SQL中的语法 1.drop table 表名称 eg: drop table dbo.Sys_Test 2.truncate table 表 ...
- EXCEL 2010学习笔记 —— 数据透视表
今天整理一下EXCEL2010 数据透视表的课程笔记,数据透视表可以对多组数据进行统计和整理,是一种基本的数据可视化工具. 记录6个方面的总结: 1.创建数据透视表 2.更改数据透视表的汇总方式 3. ...
- SQL Server 变更数据捕获(CDC)监控表数据
一.本文所涉及的内容(Contents) 本文所涉及的内容(Contents) 背景(Contexts) 实现过程(Realization) 补充说明(Addon) 参考文献(References) ...
- MySQL导入导出数据和表结构 source和mysqldump
MySQL导入数据的方式: 1.使用source /dir/test.sql导入数据进入数据库:查询数据库编码格式show variables like "%char%";设置编码 ...
- 使用SQL语句进行数据复制
使用SQL语句对数据或者表进行复制,一般用于两张表结构相同的时候使用. SQL Server中,如果目标表存在: insert into 目标表 select * from 原表; SQL Serve ...
- SQL笔记-第二章,数据表的创建和管理
数据类型 分5类:整数.数值.字符相关.日期时间以及二进制 1.整数 数据库系统 类型 说明 MYSQL tinyint [unsigned] 一个很小的整数.有符号的范围是-128 到127,无符号 ...
- VSTO学习笔记(十四)Excel数据透视表与PowerPivot
原文:VSTO学习笔记(十四)Excel数据透视表与PowerPivot 近期公司内部在做一种通用查询报表,方便人力资源分析.统计数据.由于之前公司系统中有一个类似的查询使用Excel数据透视表完成的 ...
- 关系数据库SQL之高级数据查询:去重复、组合查询、连接查询、虚拟表
前言 接上一篇关系数据库SQL之基本数据查询:子查询.分组查询.模糊查询,主要是关系型数据库基本数据查询.包括子查询.分组查询.聚合函数查询.模糊查询,本文是介绍一下关系型数据库几种高级数据查询SQL ...
随机推荐
- 使用AOP+Annotation实现操作日志记录
先创建注解 OperInfo @Target({ElementType.TYPE, ElementType.METHOD}) @Retention(RetentionPolicy.RUNTIME) @ ...
- R语言数据处理包dplyr、tidyr笔记
dplyr包是Hadley Wickham的新作,主要用于数据清洗和整理,该包专注dataframe数据格式,从而大幅提高了数据处理速度,并且提供了与其它数据库的接口:tidyr包的作者是Hadley ...
- 为什么你不应该使用 MongoDB
本文转载自: http://www.oschina.net/translate/why-you-should-never-use-mongodb (只作转载, 不代表本站和博主同意文中观点或证实文中信 ...
- Linux下三个密码生成工具
http://code.csdn.net/news/2820879 想出一个难破解且容易记的密码对不是一件简单的事情.在我为电脑设定一个新密码,或者在线注册了一个新的账号,需要输入密码的时候,脑袋就一 ...
- Java基础学习总结 -- 多线程的实现
目录: 继承Thread类 start()方法实现多线程的原理 实现Runnable接口 Thread类 与 Runnable接口 的联系与区别 多线程的实现方法: 继承Thread类 实现Runna ...
- JavaScript中this指针指向的彻底理解
this的指向在函数定义的时候是确定不了的,只有函数执行的时候才能确定this到底指向谁,实际上this的最终指向的是那个调用它的对象 这一点与函数中自由变量Action-varibal不同 var ...
- 推荐一个内容滚动jquery插件
myslider是一个内容滚动jquery插件,版本0.1.2的每次滚动内容是一行内容,可以是文字,可以是一个链接,还可以是图片. 官方网址:http://keleyi.com/jq/myslider ...
- jquery叠加页片自动切换特效
查看效果:http://keleyi.com/keleyi/phtml/jqtexiao/34.htm 下面是HTML代码: <!DOCTYPE html> <html xmlns= ...
- [deviceone开发]-组件功能演示示例
一.简介 这个是官方比较早期对组件功能的展示集合,因为发布的比较早,只包含了部分组件,但是常用的组件和常用的功能都包含了.初学者推荐.二.效果图 三.相关下载 https://github.com/d ...
- #9.6课堂JS总结#变量作用域 date()对象 math()对象
一.变量的作用域 1.JavaScript的作用域链 首先看下下面这段代码: <script type="text/javascript"> var rain = 1; ...