【代码学习】MYSQL数据库的常见操作
==============================
MYSQL数据库的常见操作
==============================
一、mysql的连接与关闭
-h:指定所连接的服务器位置
-u:数据库的用户名
-p:数据库的密码
mysql -u 用户名 -p //连接数据库
密码
exit //关闭数据库
mysql_connect($host,$user,$password); //连接数据库
mysql_close() //关闭数据库
二、创建数据库
1、创建一个名为test1的数据库
mysql> create database if not exists test1;
2、显示所有数据库
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| test |
| test1 |
+--------------------+
5 rows in set (0.00 sec)
3、使用名为test1的数据库
mysql> use test1;
4、删除一个名为test1的数据库
mysql> drop database if exists test1;
5、创建一个表
三、数据表内容的简单管理
1、添加数据 表记录
insert into 表名(字段名称,字段名称...) values(值1,值2...);
2、删除数据
delete from 表名 where id=1;
3、修改数据
update 表名 set 字段名称=新值,字段名称=新值... where id=1;
4、查看数据
select 字段名称,字段名称... from 表名;
5、创建表
create table 表名(
id int,
username varchar(30),
age int
);
四、数据值和列的类型
1、数值
int
tinyint
字段属性:
无符号的数 unsigned 增大存储范围
int(n) (n)默认情况下没有任何意义 不会影响存储范围
zerofill属性 0填充 3 001 012 123 1234
小数
float(n,m)
float(6,2); n共几位 2小数点后保留几位
decimal(6,2);
2、字符
char(n) 固定长度 n 0-255 密码 char(32)
varchar(n) 可变长度 用户名 n 0-65535 varchar(20)
3、时间和日期 int
4、NULL
五、创建索引
1、主键索引 primary key
一个数据表只能指定一个主键,而且主键的值不能为空
声明一个整形的字段cid,设置其属性为NOT NULL和AUTO_INCRENENT,并在字段后使用PRIMARY KEY设置该字段为主键索引。在创建book1时,声明的字段bid也设置相同的属性,而且使用另一种从句的方式将其设置为主键索引。并在book1表中声明一个cid的字段,用于保存book0表中的设置为主键的cid
mysql> create table book0 (
-> cid INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
-> bookname VARCHAR(15) NOT NULL
-> );
Query OK, 0 rows affected (0.14 sec) mysql> create table book1 (
-> bid int(10) NOT NULL AUTO_INCREMENT,
-> cid MEDIUMINT(8) NOT NULL,
-> detail TEXT NOT NULL,
-> price DOUBLE NOT NULL,
-> PRIMARY KEY (bid)
-> );
Query OK, 0 rows affected (0.11 sec)
注意:防止数据不一致,在删除一条记录之前,必须检查在其他数据表里是否存在对这条记录的引用

2、唯一索引 UNIQUE
避免数据重复出现
在创建表book2时,为类别名字段bookname使用关键字UNIQUE将其定义为一个唯一索引,避免插入数据时出现重复的类别名称
mysql> create table book2 (
-> cid INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
-> bookname VARCHAR(15) NOT NULL UNIQUE
-> );
Query OK, 0 rows affected (0.08 sec

3、普通索引 INDEX
仅提高查询的速度
CREATE INDEX ind ON book3(uid,cid); #为book2表的两个列创建名为ind的索引
4、全文索引
mysql只支持英文文本
【代码学习】MYSQL数据库的常见操作的更多相关文章
- 【代码总结】MYSQL数据库的常见操作
============================== MYSQL数据库的常见操作 ============================== 一.mysql的连接与关闭 -h:指定所连接的服 ...
- MySQL数据库的常见操作(七)
MySQL数据库的常见操作 1.创建数据库 2.创建重名的数据库以及如何查看警告信息 3.设置数据库的编码方式(默认为utf8) 4.修改和查看数据库的编码方式 5.删除数据库 6.6.删除已经删除了 ...
- Flask中Mysql数据库的常见操作
from flask import Flask,render_template #导入第三方链接库sql点金术 from flask_sqlalchemy import SQLAlchemy #建立对 ...
- MySQL数据库的常见操作
1.查看所有的数据库 1 show databases; 2.创建数据库 后面的时编码格式 1 create database dbName charset='utf8'; 3.使用/切换数据库 1 ...
- Vc数据库编程基础MySql数据库的常见库命令.跟表操作命令
Vc数据库编程基础MySql数据库的常见操作 一丶数据库常见的库操作 1.1查看全部数据库 命令: show databases 1.2 创建数据库 命令: Create database 数据库名 ...
- 重新学习MySQL数据库3:Mysql存储引擎与数据存储原理
重新学习Mysql数据库3:Mysql存储引擎与数据存储原理 数据库的定义 很多开发者在最开始时其实都对数据库有一个比较模糊的认识,觉得数据库就是一堆数据的集合,但是实际却比这复杂的多,数据库领域中有 ...
- 重新学习MySQL数据库1:无废话MySQL入门
重新学习Mysql数据库1:无废话MySQL入门 开始使用 我下面所有的SQL语句是基于MySQL 5.6+运行. MySQL 为关系型数据库(Relational Database Manageme ...
- 重新学习MySQL数据库2:『浅入浅出』MySQL 和 InnoDB
重新学习Mysql数据库2:『浅入浅出』MySQL 和 InnoDB 作为一名开发人员,在日常的工作中会难以避免地接触到数据库,无论是基于文件的 sqlite 还是工程上使用非常广泛的 MySQL.P ...
- 重新学习MySQL数据库11:以Java的视角来聊聊SQL注入
本文转自互联网 本系列文章将整理到我在GitHub上的<Java面试指南>仓库,更多精彩内容请到我的仓库里查看 https://github.com/h2pl/Java-Tutorial ...
随机推荐
- iOS10构建版本不显示的问题
iOS10,构建版本问题: 在Xcode中->product->archive,进行相关操作后,upload后没有报错验证也成功的情况下,在开发者账号构建版本号里面迟迟没有显示的原因: i ...
- python 使用内置函数sorted对各种数据类型进行排序
python有两个内置的函数用于实现排序,一个是list.sort()函数,一个是sorted()函数. 区别1:list.sort()函数只能处理list类型数据的排序:sorted()则可以处理多 ...
- Octave Tutorial(《Machine Learning》)之第四课《绘图数据》
第四课 Plotting Data 绘图数据 t = [0,0.01,0.98]; y1 = sin(2*pi*4*t); y2 = cos(2*pi*4*t); plot(t,y1);(绘制图1) ...
- mac上的kindle打开mobi文件的方式
刚刚在macpro上下载了一个kindle文件,但是双击我某个目录下的.mobi文件,提示: “Kindle”打不开格式为“Kindle Document”的文件,可是明明手机和pad上是可以打开的. ...
- 解决此问题:Oracle 删除用户时报 “必须指定 CASCADE 以删除 'SE'”,
这说明你要删除的oracle 用户"SE" 下面还有数据库对象,如 table, view 等,这样你删除用户时必须加选项 cascade:drop user se cascade ...
- ECMA script 6的新特性
简单介绍下ES6的新特性: (1)箭头操作符 :简化了函数的书写 (2)类的支持:引入了class关键字,对象的创建,继承更加直观,父类方法的调用,实例化,构造函数等概念更加形象化. (3)增强的对象 ...
- 解决在eclipse中写ImageView时有警告的问题
Eclipse中写了一个android程序其中main.xml中ImageView哪行是个黄叹号!不知道为什么? 解决办法: android:contentDescription="@str ...
- python安装图文教程---超详细。。。不过是转的,但有改动
如果你已安装好python,想安装第三方模块,方法详见如下地址: python安装第三方模块教程----marsggbo 1.想要安装Python,首先当然是去Python的官方网站(www.pyth ...
- 当Node.js遇见Docker
Node.js Best Practices - How to Become a Better Developer in 2017提到的几点,我们Fundebug深有同感: 使用ES6 使用Promi ...
- 【C#】组件分享:FormDragger-窗体拖拽器
适用:.net2.0+ winform项目 介绍: 类似QQ.迅雷等讲究UI体验的软件,都支持在窗口内多处地方拖动窗口,而不必老实巴交的去顶部标题栏拖,这个组件就是让winform也能这样随性拖拽,随 ...