MySql笔记01
用了两天的时间终于把MySql安装好了,还是很麻烦的,之所以没有选择直接安装,使用的是免安装版本,主要是想了解这个数据库的配置,这样以后就可以更好的了解它了。
登录MySql:mysql –h localhost –P 3306 –u root –p 这样就可以直接登陆了。
一些常用的命令;
查看一些配置信息;
\s

1:创建一个名为my_db的数据库;
create database mydb1;
2:创建一个使用gbk字符集的mydb2;
create database mydb2 character set gbk;
<在data中有一个以数据库名为文件夹的,里面有个以db.opt的文件,里面就是字符集的编码>
3:创建一个使用utf8字符集,并带校对规则的mydb3数据库;<mysql中只能写成这样>
create database mydb3 character set utf8 collate utf8_bin;
4:查看数据库
show databases;

5:查看数据库的创建语句;
show create database mydb2;
6:修改数据库编码,将utf8---->gbk;
alter database mydb2 character set gbk;

7:删除数据库,<和sql server里面的是一样的,都是使用的是基本的sql语句。>
drop database mydb1;
8:选择数据库,进入某个数据库。
use mydb2;
想进入那个数据库直接进入就可以,不必要退出。
9:查看现在是进入那个数据库
select database();

一:数据库中的数据类型:
char 和varchar类型:char(M)是规定固定大小的,varchar():可变长度;
binary和varbinray类型:两个表示的是二进制数据。binary(m)表示固定长度,如果数据的长度不足将在后面补”\0”补齐,最终达到指定长度。
text类型:用于表示大文本数据,例如内容,评论等。
blob类型:是一种大二进制类型,保存图片,PDF文档。
ENUM类型:只能列举。
set类型:表示字符串对象,可以有零/多个;
bit类型:表示二进制数据。BIT(m);
时间的表示方法:

二:表的操作;
1:增加表<创建一个表employ>,这里可以设置字符集编码和调度规则。
create table employee(
id int,
name varchar(20),
gender char(1),
birthday date,
entry_date date,
job varchar(50),
salay double,
resume text
);
这里注意每个字段后面都有逗号,最后一个没有,语句完了之后是以分号结尾的。
2:查看表是否创建成功。
查看表结构:
desc tabName;
查看当前所有表
show tables;
查看当前数据库表创建语句
show create table tabName;

3:修改表
增加一个image列
alter table employee add image blob;
修改job列,使其长度为60;之前为50;
alter table employee modify job varchar(60);
删除gender列
alter table employee drop gender;
表名改为user;
rename table employee to user;
修改表的字符集编码
alter table user character set utf8;
列名name修改为username
alter table user change name username varchar(20);
4:删除表
drop table tabName;
三:表的约束

1:主键约束
单行主键约束
create table user(
id int primary key,
name varchar(20),
grade float
);
这里的primary key就是对列id,将其设置是主键。
设置多个字段主键。
create table employee(
sec_id int,
image_id int,
grade float,
primary key(sec_id,image_id)
);
2:不能为空。
后面直接加个not null,
create table employee(
sec_id int,
image_id int,
grade float not null,
primary key(sec_id,image_id)
);
3:唯一约束
加个unique;
create table user(
id int primary key,
username varchar(50) not null,
grand float unique
);

4:默认约束
这里就是设置数据库中的一些默认值,
create table user(
id int primary key,
username varchar(50) not null,
grand float default 1,
job varchar(50) unique
);

设置id为自增的,这里就是给其一个计数器,每一次重计数器中取值,每次都是不一样的。auto_increment;
create table user(
id int primary key auto_increment,
username varchar(50) not null,
grand float default 1,
job varchar(50) unique
);
MySql笔记01的更多相关文章
- mysql笔记01 MySQL架构与历史、Schema与数据类型优化
MySQL架构与历史 1. MySQL架构推荐参考:http://www.cnblogs.com/baochuan/archive/2012/03/15/2397536.html 2. MySQL会解 ...
- MySQL笔记 01
STRUCTURE QUERY LANGUAGE 数据库CRUD操作 DDL: 数据库定义语言,定义数据库数据表结构 CREATE(创建): 创建数据库 CREATE DATABASE 数据库名字; ...
- MySQL笔记01(黑马)
一.数据库基本介绍 目标:了解数据库的功能和常见数据库分类.数据库产品 数据库基本知识 数据库分类 SQL简介 MySQL访问 1.数据库基本知识 目标:了解数据库的概念和数据库的作用 概念 数据库: ...
- PHP 学习笔记 01
例子: 为什么要学PHP 主观原因: 前段时间在学校处理了毕业的一些事情,回到上海后开始了找工作的旅程.意向工作是WPF开发或者ASP.NET 作为后端的WEB开发. 陆陆续续一直在面试,其中有一家公 ...
- 涂抹mysql笔记-数据库中的权限体系
涂抹mysql笔记-数据库中的权限体系<>能不能连接,主机名是否匹配.登陆使用的用户名和密码是否正确.mysql验证用户需要检查3项值:用户名.密码和主机来源(user.password. ...
- 软件测试之loadrunner学习笔记-01事务
loadrunner学习笔记-01事务<转载至网络> 事务又称为Transaction,事务是一个点为了衡量某个action的性能,需要在开始和结束位置插入一个范围,定义这样一个事务. 作 ...
- 《30天自制操作系统》笔记(01)——hello bitzhuwei’s OS!
<30天自制操作系统>笔记(01)——hello bitzhuwei's OS! 最初的OS代码 ; hello-os ; TAB=4 ORG 0x7c00 ; 指明程序的装载地址 ; 以 ...
- 《The Linux Command Line》 读书笔记01 基本命令介绍
<The Linux Command Line> 读书笔记01 基本命令介绍 1. What is the Shell? The Shell is a program that takes ...
- MySQL笔记汇总
[目录] MySQL笔记汇总 一.mysql简介 数据简介 结构化查询语言 二.mysql命令行操作 三.数据库(表)更改 表相关 字段相关 索引相关 表引擎操作 四.数据库类型 数字型 字符串型 日 ...
随机推荐
- [.NET领域驱动设计实战系列]专题四:前期准备之工作单元模式(Unit Of Work)
一.前言 在前一专题中介绍了规约模式的实现,然后在仓储实现中,经常会涉及工作单元模式的实现.然而,在我的网上书店案例中也将引入工作单元模式,所以本专题将详细介绍下该模式,为后面案例的实现做一个铺垫. ...
- Java设计模式7:适配器模式
适配器模式 适配器模式说的是,可以把一个类的接口变换成客户端所期待的另一种接口,使得原本因接口不匹配而无法在一起工作的两个类可以一起工作. 适配器模式的用途 适配器模式的用途,在网上找了一幅图,挺形象 ...
- openwrt-智能路由器hack技术(1)---"DNS劫持"
openwrt-智能路由器hack技术(1)---"DNS劫持" 1 导读 PS:之前写的一个文章,现在发现结构内容排版不是太好,导致阅读体验太差,影响传播和SEO,所以现在整 ...
- [异常解决] 安卓6.0权限问题导致老蓝牙程序出现异常解决办法:Need ACCESS_COARSE_LOCATION or ACCESS_FINE_LOCATION permission...
一.问题: 之前写的一款安卓4.4的应用程序,用来连接蓝牙BLE,而现在拿出来用新的AS编译(此时SDK为6.0,手机也是6.0)应用程序并不能搜索到蓝牙,查看log总是报权限错误: Need ACC ...
- CSDN CODE平台,中国版Github简要使用说明!(多图慎入)
楼主说 以前一直看到别人在用github发布自己的代码,各种牛逼,各种羡慕嫉妒恨.最后终于受不了了,也去注册了一个,注册到没什么难度.然后就没有然后了... 完全看不懂,不知道怎么用. 一次偶然的机会 ...
- 如何成为一个Xamarin专家
近期,我们发布了 Xamarin studio 6,这个版本充满了美妙的新特性,能够更有效的帮助我们的开发工作.由于其深层次的 IDE 比较复杂,同时我们也很难去发现并记得那些对我们最有帮助的特性,所 ...
- HTML学习入门
HTML(元素.属性) HTML: 超文本标记语言 1. 超文本即为带有链接属性的文本 2.标记即为标签 一.body属性: bgcolor:页面背景颜色 text:文字颜色 backgroun ...
- Lua标准库- 模块(Modules)
Lua包库为lua提供简易的加载及创建模块的方法,由require.module方法及package表组成 1.module (name [, ···]) 功能:建立一个模块. module的处理流程 ...
- nginx 配置管理 - 简单也复杂
由于涉及到h5与后端交互,跨域问题,所以公司的开放测试服务器让我们自己搞nginx.顺便提升一下nginx的实践. nginx的安装,没什么难度了,百度一堆,如果源码安装就一步步来吧.(最简单的方式: ...
- eclipse根据父类打开子类快捷键
1.打开类 2.双击选中 3.Ctrl+T,打开实现类