SQL语言:
SQL(Structured Query Language 即结构化查询语言)
SQL语言主要用于存取数据、查询数据、更新数据和管理关系数据库系统,SQL语言由IBM开发。SQL语言分为3种类型:
DML(data manipulation language):
它们是SELECT、UPDATE、INSERT、DELETE,就象它的名字一样,这4条命令是用来对数据库里的
数据进行操作的语言
DDL(data definition language):
DDL比DML要多,主要的命令有CREATE、ALTER、DROP等,DDL主要是用在定义或改变表(TABLE)
的结构,数据类型,表之间的链接和约束等初始化工作上,他们大多在建立表时使用
DCL(Data Control Language):
是数据库控制功能。是用来设置或更改数据库用户或角色权限的语句,包括(grant,deny,revoke等)
语句。在默认状态下,只有sysadmin,dbcreator,db_owner或db_securityadmin等人员才有权
力执行DCL
创建数据库:
语法: CREATE DATABASE 数据库名 CHARSET utf8 #指定编码
数据库命名规范:
可以由字母、数字、下划线、@、#、$
区分大小写
唯一性
不能使用关键字如 create select
不能单独使用数字
最长128位
数据库相关操作
-- 1.创建数据库(在磁盘上创建一个对应的文件夹) create database [if not exists] db_name [character set xxx] -- 2.查看数据库 show databases;查看所有数据库 show create database db_name; 查看数据库的创建方式 -- 3.修改数据库 alter database db_name [character set xxx] -- 4.删除数据库 drop database [if exists] db_name; -- 5.使用数据库 切换数据库 use db_name; -- 注意:进入到某个数据库后没办法再退回之前状态,但可以通过use进行切换 查看当前使用的数据库 select database();
#查看当前用户 select user(); 查看时间 select now(); 注释:-- 多行注释:/*....*/ DDL:数据库操作 DML: DCL:权限 查看表 mysql> select host,user from user; #查看数据库 show databases; #删除数据库 drop database 数据库名; #创建数据库 mysql> create database s3; Query OK, 1 row affected (0.00 sec) #创建数据库,如果已经存在,就不创建s3,如果没有就创建。 mysql> create database if not exists s3; Query OK, 1 row affected, 1 warning (0.00 sec) #查看错误信息 mysql> show warnings; +-------+------+---------------------------------------------+ | Level | Code | Message | +-------+------+---------------------------------------------+ | Note | 1007 | Can't create database 's3'; database exists | +-------+------+---------------------------------------------+ 1 row in set (0.00 sec) #查看创建表信息 mysql> show create database s3; +----------+---------------------------------------------------------------+ | Database | Create Database | +----------+---------------------------------------------------------------+ | s3 | CREATE DATABASE `s3` /*!40100 DEFAULT CHARACTER SET latin1 */ | +----------+---------------------------------------------------------------+ 1 row in set (0.00 sec) #创建s4数据库,指定字符编码:gbk mysql> create database if not exists s4 character set gbk; Query OK, 1 row affected (0.00 sec) #修改数据库编码方式utf8 mysql> alter database s4 character set utf8; Query OK, 1 row affected (0.00 sec) #进入数据库,创建表 #切换数据库 use mysql> use s4; Database changed #查看在那个数据库里 mysql> select database(); +------------+ | database() | +------------+ | s4 | +------------+ 1 row in set (0.00 sec) #查看帮助 mysql> help #查看命令帮助 mysql> help tinyint #查看命令帮助 mysql> ? tinyint Name: 'TINYINT' Description: TINYINT[(M)] [UNSIGNED] [ZEROFILL] A very small integer. The signed range is -128 to 127. The unsigned range is 0 to 255. URL: http://dev.mysql.com/doc/refman/5.5/en/numeric-type-overview.html