MySQL学习(二)
2016-03-27 19:46
651 查看
DELETE和UPDATE
DELETE不能删除单一列中的值或表中某一列的所有值;可用于删除一行或多行UPPER()函数可以把表中的文本列改为大写;LOWER()则可改为小写
SHOW CREATE TABLE table;可以查看表的创建语句
SHOW INDEX FROM table;可以查看任何编了索引的列和索引类型
规范化
原子性数据规则具有原子性数据的列中不会有多个类型相同的值
具有原子性数据的表中不会有多个存储同类数据的列
第一范式(1NF)强调的是列的原子性,即列不能够再分成其他几列。 (第一范式:1.数据列只包含具有原子性的值2.没有重复的数据组)
主键
不可为NULL
插入新记录时必须指定主键值
必须简洁
不可被修改
建一个有主键的表
CREATE TABLE test_primary_key ( id INT NOT NULL AUTO_INCREMENT, name VARCHAR(30) default NULL, PRIMARY KEY (id) );
为现有的表添加主键
ALTER TABLE add_primary_key ADD COLUMN id INT NOT NULL AUTO_INCREMENT FIRST, ADD PRIMARY KEY (id);
FIRST把新列放在最前面
ALTER
表的改名ALTER TABLE table RENAME TO new_name;
修改列名和属性
ALTER TABLE table CHANGE COLUMN column new_column_name INT ;
修改列属性
ALTER TABLE table MODIFY COLUMN column VARCHAR(100);
删除某列
ALTER TABLE table DROP COLUMN column
移除主键设置
ALTER TABLE table DROP PRIMARY KEY;
每个表中只有一列可以加上AUTO_INCREMENT,该列必须为整数类型而且不能包含NULL
使用FIRST,SECOND,LAST,BEFORE column,AFTER column可以调整列的顺序
字符串函数
LEFT(column,n)和RIGHT(column,n)从列的左侧(右侧)开始选取n个字符
SUBSTRING(your_string,start_position,length)攫取一部分your_string字符串,起始位置为start_position,长度为length
SUBSTRING_INDEX(your_string,item,n)取第n个item前的所有内容
REVERSE(your_string)反转字符串
LENGTH(your_string)返回字符串长度
LTRIM(your_string)和RTRIM(your_string)分别去除字符左侧(右侧)的多余空格
相关文章推荐
- MySql_插入记录时,存在就更新(或不做任何动作),不存在就添加
- MySQL单列索引和联合索引
- Mysql数据的三种启动方法
- mysql Table 'performance_schema.session_variables' doesn't exist
- mybatis连接mysql数据库插入中文乱码
- Table 'lesport.LE_USERINFO' doesn't exist
- MySQL存储引擎
- mysql 主主互备实现
- mysql服务安装
- MYSQL的常用命令和增删改查语句和数据类型
- Bison executable not found in PATH by mysql install
- mysql5.6.28 备份主要参数学习
- mysql优化 之 表设计注意事项
- mysql中<>与null值不能比较
- JSP proxool+mysql数据库连接池配置
- windows下mysql忘记root密码的解决方法
- [MySQL] 参数: innodb_flush_log_at_trx_commit和sync_binlog
- 使用c3p0连接mysql数据库
- mysql查询
- ”伪集群“导致的Hibernate主键increment生成策略异常