MYSQL操作的一些知识点,持续更新中····
基本概念——库
1.数据库服务器:库——>表——>行/列
2.cmd下链接: mysql – uroot –proot
3.创建库:create database php;
3.看数据库下有哪些库: show databases;
4.选中某个库:use php;
5.删除某个库:drop database test;
基本概念——表
6.显示某个库的表格:show tables;
7.mysql本身并没有提供修改数据库名字的语句,但可以曲径修改
8.创建一个表:create table class(
stu int,
name varchar(20),
age int
);
9.修改表的名字:rename table score to newscore;
10.删除表格:drop table newscore;
11.查看表结构:desc score;
12.修改表格中某一列的名字:alter table student change stu id int;
13.修改某一列的数据类型:alter table shangke modify pdate datetime;
增删改查
12.增加一行:insert into class
(stu,name,age,area)
values
(130,’刘硕’,’20’,’河北工程’),
(131,’刘加’,’21’,’河北工程’);
id int primary key auto_increment :表示id为主键,其值不能重复,若不给定会自动增加
13.增加一列:
alter table class add age2 tinyint unsigned;
13.解决字符集问题: set names gbk;
14.查看表中所有内容:select * from class;
15.查看某及行某几列:delete from class
where stu = 131;
16.修改表中内容:update class
set area = ‘河北工程’
where stu = 131
17.删除表中某行:delete from class
where stu = 131;
18.查找
where , group , having , order by , limit 五种语句
1.where中的运算符: = > < != <> >= <=
in(值1,值2…值n)表示值1-n任意一个都行 between 值1 and 值2 ,表示在值1和值2之间
2.逻辑运算符:and && , or || , not !
3. % 通赔任意字符, _ 通配单个字符
e.g.:select * from book where bookname like ‘java%’;
4.group语句:
e.g.: select max(shop_price) from goods; 取最大值 min()为最小值
select sum (goods_num) from goods; 求某个属性的总和
select avg(shop_price) from goods; 求某个属性的平均值
select count(*) from goods; 求共有多少行
select cat_id, max(shop_price) from goods group by cat_id; //按栏目查询最贵的商品
select cat_id, avg(shop_price) from goods group by cat_id; //某个栏目下商品的平均值
select cat_id, count(*) from goods group by cat_id; //某栏目下共有多少商品
详解列类型
1.详解列类型:
整型:
tinyint (1个字节) smallint (2字节) mediumint (3字节) int (4字节) bigint (8字节)
|
类型 |
字节 |
位 |
无符号 |
有符号 |
|
Tinyint |
1 |
8 |
0-255 |
-128-127 |
默认是有符号的
可选属性: unsigned (无符号,非负) tinyint(M) M:代表宽度在zerofill时才有意义 zerofill (零填充) 如果某列是零填充则默认为无符号
列可以声明默认值,而且推荐生成默认值:
e.g. : not null default 0 ;
浮点型和定点型:
浮点型:float(M,D) M:代表总位数,D:代表小数位数
定点型:decimal
定点型更精确一些
字符型;
char(M): 定长 ,M代表宽度,可容纳的字符数 如果存的小于M个字符,实占M个字符
varchar(M): 变长, 存的小于M个字符设为N,则实占N个字符
text :文本串 ,一般用于比较大的文本 ,不能有默认值
char() :定长型当实存小于M时,在末尾补/0。 取出的时候舍掉末尾的所有/0,,所以当存储的数据含有/0时,会丢失数据,但是速度高。
选择原则:1.空间利用效率,2.速度
日期时间类型:
计算机的元年从1970年开始
year: 1个字节表示1901-2155,如果输入两位 00-69 表示2000-2069 70—99表示1970-1999
date: 1992-08-12 范围:’1000-01-01’ ~ ‘9999-12-31’
time: hh:mm:ss 范围:’-839:59:59’ ~ ’+839:59:59’
datetime: ‘1989-08-09 14:26:06’ 范围:1001-01-01 00:00:00 ~ 9999-12-31 23:59:5
!!!一般注册时间、商品发布时间不是用datetime类型来存储,而是用时间戳来存储。
时间戳:从1970-01-01 00:00:00 到当前的秒数
枚举类型:
sex enum (‘男’,’女’)
字符集问题
1.查看默认字符集:SHOW VARIABLES LIKE 'character%';
2. ---> set character_set_client = gbk; 设置插入时接收的编码为GBK, 这样就可以插入中文了
此时中文字符已经可以插入, 但查询结果却还是乱码, 再更改一处即可:
---> set character_set_results = gbk; 设置输出结果的编码为GBK
注: 这样的设置只对当前连接有关, 连接断开, 这些设置恢复数据库默认设置状态,因此,如果需要,每次连接都得设置
3.set names gbk;这一句和上边两句起到相同作用
常用技巧
1.获取总行数
String sql = "select * from flights";
rs = stmt.executeQuery(sql);
rs.last();
num = rs.getRow(); //获取数据库中的总行数
安装了一个虚拟机,
Oracle VM virtualBox
(语句)连接数据库 MySQL -uusername -ppassword
连上服务器,先面对的是库,表。
(语句)选库语句 use 库名;
(语句)查看所有的库 show databases;
(语句)创建一个数据库?Create database 数据库名[charset 字符集]utf8;
Create database book charset utf8;
(语句)删除一个数据库?
Use 数据库名;
Drop database 数据库名;
(语句)建立一个表
Use 数据库名;
Create table 表名(
Snum Int,
Sname varchar(10)
);//下面这句话不写也可以。
engine myisam charset utf8;//engine 表引擎和性能特点相关
(语句)如何查看库下面所有的表?Show tables;
(语句)删除表 drop table 表名;
(语句)改名??表、列可以改名,database不可以。Rename table oldname to newname
(语句)在表中插入数据
Insert into 表名 values
(1,‘zhangsan’),
(2,‘lisi’);
(语句)清空表??Truncate 表名;
Select *from 表名;会出现empty set 空集合
Truncate 删表在重建==把旧的学籍表扔了重画一张
Delecte ==橡皮把学籍表的数据库擦掉了
(语句)查看表结构 desc tablename;
(语句)查看表内容 select *from tablename;
建立一个表
Create table class(
Id int primary key auto_increment,
Sname varchar(10) not null default ’’,
Gender char(1) not null default ’’,
Company varchar(10) not null default ’’,
Salary decimal(6,2) not null default 0.00,
Fanbu smallint not null default 0
)engine myisam charset utf8;
往表里添加数据
Insert into tablename
(id,sname,gender,company,salary,fanbu)
Values//equal
(1,’张三’,’男’,’百度’,5555.66,456);
(语句)更改表中数据
Update tablename
Set
Sname=‘张小姐’,
Company=‘微软’
Where fanbu>600; 更改后的第一行为 张小姐,女,微软,8000,1000
(语句)删除表中的数据
Delete from tablename
Where fanbu<700; 删除后李四一行消失
若 delete from tablename; 将清空表,但不会删除表。
(语句)查找表中的数据
Select sname,company,salary from class where id=2;
Select *from class;//查看全部列全部行
Select sname,salary from class;//部分列,所有行的全部人的信息。
Select *from class where id >3;//取id>3的所有列。
Select sname,fanbu from class where id<5;//取id<5,取其姓名和饭补。
2.字符集设置
--> set character_set_client = gbk; 设置插入时接收的编码为GBK, 这样就可以插入中文了
此时中文字符已经可以插入, 但查询结果却还是乱码, 再更改一处即可:
---> set character_set_results = gbk; 设置输出结果的编码为GBK
注: 这样的设置只对当前连接有关, 连接断开, 这些设置恢复数据库默认设置状态,因此,如果需要,每次连接都得设置!
3.set names gbk;这一句和上边两句起到相同作用
网络编程
本级默认IP地址 127.0.0.1
MYSQL操作的一些知识点,持续更新中····的更多相关文章
- 关于mysql的使用命令(持续更新中...)
特别提示 本说明中的mysql 是基于windwos平台下的5.5 版本 安装完成后 请到mysql中设置配置文件 链接分享:链接:https://pan.baidu.com/s/1tv4ulZ ...
- mysql日常使用总结(持续更新中)
记录一些日常的mysql常用的使用, 方便随用随查. 一.表结构 1.1 查看表结构 方式1: 可以查看建表语句,完整的表结构. show create table table_name; 方式2:可 ...
- MySQL 面试题汇总(持续更新中)
COUNT COUNT(*) 和 COUNT(1) 根据 MySQL 官方文档的描述: InnoDB handles SELECT COUNT(*) and SELECT COUNT(1) opera ...
- MySQL使用技巧收集,持续更新中......
1.查询时按某一内容为中文的字段,以拼音字母排序: SELECT * FROM game ORDER BY CONVERT(name USING GBK);
- 前端深入之js篇丨Array数组操作从入门到成神Up Up Up,持续更新中
写在前面 随着前端深入的不断学习,发现数组这个数据结构在前端中有着相当大的存在感,由于我初学前端的时候并没有系统性的学习数组,所以我将通过这篇文章同你一起学习数组,希望我们能一起进步,学会熟练操作数组 ...
- html知识点汇总(持续更新中)
本人从事前端行业三年多,打算从今天开始整理一些关于前端的一些比较经典的知识点,持续更新中...希望能对一些相关知识点有疑问的朋友有一些帮助! HTML篇: 1.常见的行内元素/块级元素/空元素有哪些? ...
- 2020年腾讯实习生C++面试题&持续更新中(3)
2020年腾讯实习生C++面试题&持续更新中(3) hello,大家好,我是好好学习,天天编程的天天. 来给大家大家分享腾讯实习生面经了. 天天希望大家看到面经后一定要做充分的准备,结合自己掌 ...
- java视频教程 Java自学视频整理(持续更新中...)
视频教程,马士兵java视频教程,java视频 1.Java基础视频 <张孝祥JAVA视频教程>完整版[RMVB](东西网) 历经5年锤炼(史上最适合初学者入门的Java基础视频)(传智播 ...
- 史上最全的spark面试题——持续更新中
史上最全的spark面试题——持续更新中 2018年09月09日 16:34:10 为了九亿少女的期待 阅读数 13696更多 分类专栏: Spark 面试题 版权声明:本文为博主原创文章,遵循C ...
- 2020年腾讯实习生C++面试题&持续更新中(1)
2020年腾讯实习生C++面试题&持续更新中(1) 腾讯面试整理(1) 最近大三的学生找实习生的同学非常多,给大家分享一篇腾讯实习生的面试题,关于面试题,会持续更新~~~ 也算是今天开通博客的 ...
随机推荐
- 搭建hbase-0.94.26集群环境
先安装hadoop1.2.1,见http://blog.csdn.net/jediael_lu/article/details/38926477 1.配置hbase-site.xml <prop ...
- 用css实现一个空心圆,并始终放置在浏览器窗口左下角
用css实现一个空心圆,并始终放置在浏览器窗口左下角 div{ position:fixed; bottom:0; ...
- Funny String
def main(): t = int(raw_input()) for _ in xrange(t): s = raw_input().strip() s_len = len(s) is_funny ...
- C语言预处理指令的初步了解
所谓预处理是指在进行编译的第一遍扫描(词法扫描和语法分析)之前所作的工作.预处理是C语言的一个重要功能,它由预处理程序负责完成.当对一个源文件进行编译时,系统将自动引用预处理程序对源程序中的预处理部分 ...
- Escape character is '^]'. Connection closed by foreign host.
今天在用易汇金的接口回调时候,老是回调不到我的机器上面.我的ip通过公网映射,按说是可以访问到我的ip,思考是什么问题. 1.防火墙关闭,不行 2.防火墙开启,但是把自己的端口号改为可以访问(参考:h ...
- [Codeforces Round #186 (Div. 2)] B. Ilya and Queries
B. Ilya and Queries time limit per test 2 seconds memory limit per test 256 megabytes input standard ...
- 一颗 45nm CPU的制造过程
沙子 :硅是地壳内第二丰富的元素,而脱氧后的沙子(尤其是石英)最多包含25%的硅元素,以二氧化硅(SiO2)的形式存在,这也是半导体制造产业的基础. 硅熔炼: 12英寸/300毫米晶圆级,下同.通过多 ...
- 在C中嵌入汇编
早前公布了C和汇编混编的温度控制器程序,收到一些朋友的询问,他们无法在自己程序中使用我的18B20的汇编子程序或无法正常通过混编后的程序编译. 其实在KEIL中嵌入汇编的方法很简单.如图一,在C文件中 ...
- 【转】Linux中变量$#,$@,$0,$1,$2,$*,$$,$?的含义
原文网址:http://dadekey.blog.51cto.com/107327/119938 我们先写一个简单的脚本,执行以后再解释各个变量的意义 # touch variable # vi ...
- Controller 中Action 返回值类型 及其 页面跳转的用法
•Controller 中Action 返回值类型 View – 返回 ViewResult,相当于返回一个View 页面. -------------------------------- ...