mysql 操作指令笔记
设置区分大小写:
打开my.ini,最后加入:
[mysqld]
lower_case_table_names=2 (2表示区分大小写,但仅限于字段,数据库名、表名、存储过程名都是小写的)
查看方法:show variables like '%case%';
记住,mysql的语句不区分大小写,在存储过程中,例如变量名为userName,
select count(*) from table where UserName=userName; =>结果恒等于表的总记录行数,因为不区分大小写,UserName=userName为true
另外,本人在C#中调用存储过程,由于把数据库名写为大写NewsDB,导致无法找到存储过程,但其实把连接字符串改为newsdb就OK了
数据类型:
数字类型:
整型:tinyint smallint mediumint int bigint
浮点型:float double real decimal
字符串类型:
字符串:char varchar
文本: tinytext、text、mediumtext、longtext
二进制(可用来存储图片、音乐等): tinyblob、blob、mediumblob、longblob
日期和时间: date、time、datetime、timestamp、year
DDL:
创建数据库:create database 数据库名 character [set gbk];
创建数据表:(用户表为例)
create table UserInfo
(
UserID int unsigned not null auto_increment primary key,
UserName varchar(20) not null,
UserPwd varchar(30) not null,
NickName varchar(20) not null default "游客"
); 注:这里的unsigned表示非负数,生成表后,字段类型会变为int(10),与默认int的int(11)不一样,如果是用于主外键,则最好不要加unsigned
创建前先判断是否存在:drop database if exists 数据库名;
使用sql脚本创建:mysql -D 数据库名 -u root -p < 脚本文件名.sql 注:-D 数据库名,如果脚本中有重新创建数据库,则可以不写
创建主外键约束:
为主表添加外键:
语法:alter table 外键表名 add constraint FK_ID foreign key(外键字段名) REFERENCES 主键表名(主键字段名);
关闭约束检查:SET foreign_key_checks = 0;
打开约束检查:SET foreign_key_checks = 1;
修改字段可为空:alter table 表名 modify 字段名 类型 null;
创建存储过程:
use 数据库名;
drop procedure if exists 存储过程名;
delimiter //
create procedure 存储过程名(参数1、参数2......)
begin
过程体
end
//
delimiter ;
创建视图:
use 数据库名;
drop view if exists 视图名;
create view 视图名 as
select ... from ... where ...
DML:
增:insert into 表名 (字段1,字段2...) values (值1,值2...);
删:delete from 表名 where 条件;
改:update 表名 set 字段1=值1,字段2=值2...... where 条件;
DQL:
查看约束关系:SELECT * FROM information_schema.TABLE_CONSTRAINTS;
查看数据库:show databases;
使用数据库:use 数据库名;
查看所有表:show tables;
查看所有字段:show columns from 表名;
查看存储过程:select 'name' from mysql.proc where db='数据库名' and 'type'='PROCEDURE';
未完......待续......
mysql 操作指令笔记的更多相关文章
- MySQL数据库学习笔记(九)----JDBC的ResultSet接口(查询操作)、PreparedStatement接口重构增删改查(含SQL注入的解释)
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
- mysql颠覆实战笔记(三)-- 用户登录(二):保存用户操作日志的方法
版权声明:笔记整理者亡命小卒热爱自由,崇尚分享.但是本笔记源自www.jtthink.com(程序员在囧途)沈逸老师的<web级mysql颠覆实战课程 >.如需转载请尊重老师劳动,保留沈逸 ...
- 学习笔记:MySQL操作初步
对数据库的操作:SQL语言 一:SQL:Structured Query Language,结构化查询语言! 二:DDL:Data Definition Language,数据定义语言 三:DML:D ...
- 17.swoole学习笔记--异步mysql操作
<?php //异步mysql操作 $db=new swoole_mysql(); $config=[ 'host'=>'192.168.10.31', 'user'=>'zouke ...
- 基于【 MySql 】二 || mysql详细学习笔记
mysql重点学习笔记 /* Windows服务 */ -- 启动MySQL net start mysql -- 创建Windows服务 sc create mysql binPath= mysql ...
- (2.2)【转】mysql的SQL笔记
一千行 MySQL 详细学习笔记 IT技术思维 4月1日 ↑↑↑点上方蓝字关注并星标⭐「IT技术思维」 一起培养顶尖技术思维 作者:格物 原文链接:https://shockerli.net/post ...
- MySQL:提高笔记-5
MySQL:提高笔记-5 学完基础的语法后,进一步对 MySQL 进行学习,前几篇为: MySQL:提高笔记-1 MySQL:提高笔记-2 MySQL:提高笔记-3 MySQL:提高笔记-4 MySQ ...
- MySQL:提高笔记-4
MySQL:提高笔记-4 学完基础的语法后,进一步对 MySQL 进行学习,前几篇为: MySQL:提高笔记-1 MySQL:提高笔记-2 MySQL:提高笔记-3 MySQL:提高笔记-4,本文 说 ...
- MySQL:提高笔记-2
MySQL:提高笔记-2 学完基础的语法后,进一步对 MySQL 进行学习,第一篇为:MySQL:提高笔记-1,这是第二篇内容 说明:这是根据 bilibili 上 黑马程序员 的课程 mysql入门 ...
随机推荐
- 转:使用Tengine替代Nginx作为负载均衡服务器
原文来自于:http://heylinux.com/archives/2938.html Tengine是由淘宝网发起的Web服务器项目.它在Nginx的基础上,针对大访问量网站的需求,添加了很多高级 ...
- Phonegap 3.0 设置APP是否全屏
Phonegap 3.0 默认是全屏,如需要取消全屏,可手动修改config, 在APP/res/xml/config.xml文件可设置preference: <?xml version='1. ...
- RH的NFS配置--简单OK
参照文档: http://wenku.baidu.com/link?url=SAcDvj8WtBd8dunC7P6FTFADYYVzzxhOiNJqbgr-aGTZovM0lHg-wbYgv9I3Lu ...
- php生成二维码,使用qrcode类库创建
传说Google有个接口,可以生成二维码,这让我有点鸡冻不已,于是,......(省略1000字).结果,我找到了另外一个方法,是使用一个php类库,该工具叫:qrcode,但下载该工具可真是要人命. ...
- 数学(概率)CodeForces 626D:Jerry's Protest
Andrew and Jerry are playing a game with Harry as the scorekeeper. The game consists of three rounds ...
- openStack使用宿主机监控
10个vm 平稳运行 top 数值
- Wall - POJ 1113(求凸包)
题目大意:给N个点,然后要修建一个围墙把所有的点都包裹起来,但是要求围墙距离所有的点的最小距离是L,求出来围墙的长度. 分析:如果没有最小距离这个条件那么很容易看出来是一个凸包,然后在加上一个最小距离 ...
- Little Kings - SGU 223(状态压缩)
题目大意:在一个N*N的棋盘上放置M个国王,已知国王会攻击与它相邻的8个格子,要求放置的额国王不能相互攻击,求放置的方式有多少种. 分析:用dp[row][state][nOne],表示本行状态sta ...
- Digital Root - SGU 118(高精度运算)
题目大意:有K组测试数据,然后每组有N个正整数,A1,A2,A3.....An,求出 A1 + A1*A2 + A1*A2*A3 + .......A1*A2*...An 的数根. 分析:有个对9取余 ...
- ios策略模式应用
策略模式应用大量应用于解决巨型switch-case if-else..... 具体使用方法 : 策略基类(BaseStrategy)包含一个虚算法,所有子类实现虚算法 容器类含有一个指向策略基类的 ...