【Mysql】Head First sql 学习笔记之第三章--常用MySQL命令

来源:互联网 发布:园林设计软件下载 编辑:程序博客网 时间:2024/06/06 00:54

HeadFirst系列是美国有名的入门级编程书籍。用生动的案例和形象的比喻,能够比较快速地抓住一门语言的重点。

第三章

  1. 创建数据库

CREATE DATABASE gregs_list; [一般命令用大写字母,表或数据库的名称用小写

 

【有了数据库,再在数据库里面创建表,可以授予或撤销整个表的访问权限,比单独控制每个表的权限更有效。】

 

  1. 进入数据库

USE DATABASE gregs_list;

 

  1. 创建表

CREATE TABLE doughnuts_list

(

doughnuts_name , VARCHAR(10),

doughnuts_type, VARCHAR(6)

);

 

  1. 类型

DEC (decimal) 提供数值空间,直到装满为止

DEC(6,2)----前者表示总位数,后者表示小数点后的位数

BLOB :最喜欢大量文本数据了~~~

CHAR:他很严谨,他处理的数据必须事先设定好长度 CHAR(6)

VARCHAR:可以存255个字符数据,很灵活

 

  1. 检查刚刚创建的表 DESC

DESC my_contacts;

 

  1. 想加入列----问,可以重建已存在的表或数据库吗?No!

可以先丢弃旧表,再创建新表。

  1. 辞旧迎新:DROP ---删除你的表和你的数据,careful

DROP TABLE my_contacts;

  1. 把数据添加到表里,需要用到INSERT语句 INSERT INTO

INSERT INTO yourtable(col_name1,col_name2,…)VALUES ('values1','values2',…);

列名与值一一对应,值的内容用‘’单引号。

INSERT语句中的CHAR/VARCHAR/DATE/BLOB的值都需要加上单引号

DESC 和INT不用加单引号

插入的时候可以省略列名,但是值必须完全按表的列顺序

也可以插入部分列的值

  1. NULL那些事

NULL不是0,NULL不可以相互比较,NULL是未定义的值

控制内心的NULL

可以在创建的时候,指定某些列不为空

CREATE TABLE my_table

 ( last_name VARCHAR(30) NOT NULL,

   first_name VARCHAR(20) NOT NULL

);

  1. 用DEFAULT填补空白
  2. 不要使用双引号
  3.  Update set where

Set 后面接列名=‘更改值’,如果有多个则用逗号隔开。

Update drink_info set cost = cost +1 where drink_name='blue_moon';【可以加上数学运算,+-*/】

还可以使用函数,如upper()

  1. 多多使用OR
  2. IS NULL 关键字

不可以直接选择NULL

 

  1. Like 关键字

有两个通配符 第一个是% 第二个是_

%IM 表示在IM前有多个其他字符 的数据都会返回

_im 表示在im前有一个字符的数据 才会返回

 

  1. Between and 是包含头尾的,相当于<=,>=.

在文本列中,可以用betweenand 查找出字母开头的列

Select * fromdrink_info where name between 'G' and 'O';

 

  1. IN ----值的集合

NOT IN---也是值的集合,反集合

 

  1. 更多的NOT

一定要记住,NOT 和between  and 一起用的时候,NOT 要紧跟着WHERE!

Not也可以跟着AND OR;也要跟在and / or 关键字的后面

SELECT* FROM  prv_sysparam p WHERE p.mcode notlike  '0' andnot p.gcode = '@ROOT';

 

 

  1. 插入列

alter table  表名 add 列名 数据类型

 

  1. 查看表的描述

可以用右键--》describe 功能才看

可以通过命令行 DESCRIBE table_name

  1. 想看create table 时候的代码----->

 SHOW CREATE TABLE table_name


原创粉丝点击