DDL

DDL语句 数据库定义语言:数据库、表、视图、索引、存储过程
数据库服务器、数据库、表、记录、字段、类型、约束

DDL(库)

1.定义库

	创建业务数据库:
		语法---CREATE DATABASE 数据库名;
	要求:
		唯一性;不能使用关键字如create、select;不能单独使用数字和特殊符号“如-”

2.查看数据库:show database;
3.选择/进入数据库

	USE 数据库名;
	SELECT database();    //调用函数,查询当前库

4.删除数据库

	DROP TABATASE 数据库名;

5.系统中的位置

	/usr/local/mysql/data/	源码安装
	/var/lib/mysql/		RPM安装

数据类型

**1.数值类型**
	整数类型		INT(TINYINT SMALLINT MEDIUMINT BIGINT)
	浮点型		FLOAT DOUBLE
	定点数类型	DEC
	位类型		BIT	
**2.字符串类型**
	CHAR系列		CHAR、VARCHAR
	TEXT系列		TEXT
	BLOB系列		BLOB
	BINARY系列	BINARY VARBINARY
	枚举类型		ENUM
	集合类型		SET
**3.时间和日期类型**
	DATE	TIME	DATETIME	TIMESTAMP	YEAR

DDL(表)

目的:表是数据库存储数据的基本单位,有若干字段组成,主要用来存储数据记录。

	创建表----create table 表名(字段名 类型 约束条件);
	查看所有表----show tables;
	查看表结构----desc  表名;
	       show create table 表名 \G;
	表中插入内容----insert into 表名(字段1,字段2...)values(字段值列表....);
		    ----insert into 表名 values();
	查看表内容----select * from 表名
	
	修改表名----alter table 表名 rename 新表名;
	添加字段----alter table 表名 add 字段名 类型 约束条件
			after 字段//添加在字段之后
			first //添加到最前面
	删除字段----alter table 表名 drop 字段;
	删除主键----删除主键时,要先清理掉自动增长
			a.	alter table 表名 modify 字段 类型 约束条件;
			b.	alter table 表名 drop primary key;
	如果没有自增长约束,直接使用----alter table 表名 drop primary key;
	修改字段类型modify----mysql> alter table student10
	       		     -> modify age tinyint  not null default 22;              //注意保留原有的约束条件
	    
			    mysql> alter table student10
	       		     -> modify id int not null primary key ;	    //修改字段类型、约束、主键
	
			或者使用add增加单列主键
				mysql> alter table student1
	        			-> add primary key(id);
	增加约束(针对已有的主键增加auto_increment)----mysql> alter table 表名 
						modify id int not null 
						???
						auto_increment;
	
	增加复合主键----mysql> alter table 表名 add primary key(字段1,字段2);
	修改存储引擎----mysql> alter table 表名   engine=innodb; 	 
				//engine=myisam|memory|....
				//innodb提供事物支持及主外键高级功能
				//MyISAM不支持事物处理,强调高性能。
				//memory仅内存
	
	
	删除表---drop table 表名;
	复制表:
		复制表结构+记录 (key不会复制: 主键、外键和索引)
			mysql> create table new_service select * from service;
			mysql> create table t4 like employees;
		只复制表的结构
			mysql> create table new1_service select * from service where 1=2;  //条件为假,查不到任何记录	

完整性约束

目的:用于保证数据的完整性和一致性
约束类型

		PRIMARY KEY(PK)		标识该字段为表的主键,可以唯一的标识记录,不可以为空
		FOREIGN KEY(FK)		标识该字段为表的外键,实现表与表(父表主键/子表外键)之间的关联
		UNIQUE KEY(UK)		标识该字段的值是唯一的,可以为空,一个表可以有多个唯一约束
		AUTO_INCREMENT		标识该字段的值自动增长(整数类型,而且为主键)
		DEFAULT			为该字段设置默认值
		NOT NULL		该字段不能为空
		UNSIGNED		无符号
		ZEROFILL			使用0填充
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值