用了两天的时间终于把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的更多相关文章

  1. mysql笔记01 MySQL架构与历史、Schema与数据类型优化

    MySQL架构与历史 1. MySQL架构推荐参考:http://www.cnblogs.com/baochuan/archive/2012/03/15/2397536.html 2. MySQL会解 ...

  2. MySQL笔记 01

    STRUCTURE QUERY LANGUAGE 数据库CRUD操作 DDL: 数据库定义语言,定义数据库数据表结构 CREATE(创建): 创建数据库 CREATE DATABASE 数据库名字; ...

  3. MySQL笔记01(黑马)

    一.数据库基本介绍 目标:了解数据库的功能和常见数据库分类.数据库产品 数据库基本知识 数据库分类 SQL简介 MySQL访问 1.数据库基本知识 目标:了解数据库的概念和数据库的作用 概念 数据库: ...

  4. PHP 学习笔记 01

    例子: 为什么要学PHP 主观原因: 前段时间在学校处理了毕业的一些事情,回到上海后开始了找工作的旅程.意向工作是WPF开发或者ASP.NET 作为后端的WEB开发. 陆陆续续一直在面试,其中有一家公 ...

  5. 涂抹mysql笔记-数据库中的权限体系

    涂抹mysql笔记-数据库中的权限体系<>能不能连接,主机名是否匹配.登陆使用的用户名和密码是否正确.mysql验证用户需要检查3项值:用户名.密码和主机来源(user.password. ...

  6. 软件测试之loadrunner学习笔记-01事务

    loadrunner学习笔记-01事务<转载至网络> 事务又称为Transaction,事务是一个点为了衡量某个action的性能,需要在开始和结束位置插入一个范围,定义这样一个事务. 作 ...

  7. 《30天自制操作系统》笔记(01)——hello bitzhuwei’s OS!

    <30天自制操作系统>笔记(01)——hello bitzhuwei's OS! 最初的OS代码 ; hello-os ; TAB=4 ORG 0x7c00 ; 指明程序的装载地址 ; 以 ...

  8. 《The Linux Command Line》 读书笔记01 基本命令介绍

    <The Linux Command Line> 读书笔记01 基本命令介绍 1. What is the Shell? The Shell is a program that takes ...

  9. MySQL笔记汇总

    [目录] MySQL笔记汇总 一.mysql简介 数据简介 结构化查询语言 二.mysql命令行操作 三.数据库(表)更改 表相关 字段相关 索引相关 表引擎操作 四.数据库类型 数字型 字符串型 日 ...

随机推荐

  1. [.NET领域驱动设计实战系列]专题四:前期准备之工作单元模式(Unit Of Work)

    一.前言 在前一专题中介绍了规约模式的实现,然后在仓储实现中,经常会涉及工作单元模式的实现.然而,在我的网上书店案例中也将引入工作单元模式,所以本专题将详细介绍下该模式,为后面案例的实现做一个铺垫. ...

  2. Java设计模式7:适配器模式

    适配器模式 适配器模式说的是,可以把一个类的接口变换成客户端所期待的另一种接口,使得原本因接口不匹配而无法在一起工作的两个类可以一起工作. 适配器模式的用途 适配器模式的用途,在网上找了一幅图,挺形象 ...

  3. openwrt-智能路由器hack技术(1)---"DNS劫持"

    openwrt-智能路由器hack技术(1)---"DNS劫持" 1   导读 PS:之前写的一个文章,现在发现结构内容排版不是太好,导致阅读体验太差,影响传播和SEO,所以现在整 ...

  4. [异常解决] 安卓6.0权限问题导致老蓝牙程序出现异常解决办法:Need ACCESS_COARSE_LOCATION or ACCESS_FINE_LOCATION permission...

    一.问题: 之前写的一款安卓4.4的应用程序,用来连接蓝牙BLE,而现在拿出来用新的AS编译(此时SDK为6.0,手机也是6.0)应用程序并不能搜索到蓝牙,查看log总是报权限错误: Need ACC ...

  5. CSDN CODE平台,中国版Github简要使用说明!(多图慎入)

    楼主说 以前一直看到别人在用github发布自己的代码,各种牛逼,各种羡慕嫉妒恨.最后终于受不了了,也去注册了一个,注册到没什么难度.然后就没有然后了... 完全看不懂,不知道怎么用. 一次偶然的机会 ...

  6. 如何成为一个Xamarin专家

    近期,我们发布了 Xamarin studio 6,这个版本充满了美妙的新特性,能够更有效的帮助我们的开发工作.由于其深层次的 IDE 比较复杂,同时我们也很难去发现并记得那些对我们最有帮助的特性,所 ...

  7. HTML学习入门

    HTML(元素.属性) HTML: 超文本标记语言   1. 超文本即为带有链接属性的文本  2.标记即为标签 一.body属性: bgcolor:页面背景颜色 text:文字颜色 backgroun ...

  8. Lua标准库- 模块(Modules)

    Lua包库为lua提供简易的加载及创建模块的方法,由require.module方法及package表组成 1.module (name [, ···]) 功能:建立一个模块. module的处理流程 ...

  9. nginx 配置管理 - 简单也复杂

    由于涉及到h5与后端交互,跨域问题,所以公司的开放测试服务器让我们自己搞nginx.顺便提升一下nginx的实践. nginx的安装,没什么难度了,百度一堆,如果源码安装就一步步来吧.(最简单的方式: ...

  10. eclipse根据父类打开子类快捷键

    1.打开类 2.双击选中 3.Ctrl+T,打开实现类