sql语句浅谈以及mysql遇到的问题解决见解
mysql数据库基本操作: 、显示数据库和查看mysql版本
show databases;
select version();
select user();查看用户 、选择数据库
use 数据库名; 、显示数据库中的表
show tables; 、显示数据表的结构
describe 表名; 、显示表中记录
SELECT * FROM 表名 、建库
create databse 库名; .mysql数据库创建新表:
create table student (
sno int() not null,
sname varchar() not null,
ssex char() not null,
sage int() ,
sdept char(),
primary key(sno)
foreign key(sage) references class(age) 注:外键所对应的项应为对应表的主键
); .mysql数据库在指定表查找数据:
select name
from student
where sno='' .mysql数据库给指定表插入新数据:
insert into student (sno,sname,ssex,sage,sdept)
values(,'zeng','M',,'YW'); .mysql数据库更新指定表的数据:
update student
set sname='zengjie'
where sname='zeng' .mysql数据库删除指定表的数据:
delete from student where name='张三'; .mysql创建,删除索引:建立索引可以使查询速度提高
方法1:create index classid on class01(id,name);
方法2:alter table class add index index_name(name);
删除索引:dorp index 索引名 on 表名; .mysql创建视图:视图则为可以反复利用的sql语句样式
create view `class name view`
select name
from class01; .mysql函数的使用:
max,min,sum,count,avg等
使用方法:select 函数名(列名) from 表名 where 条件; .mysql表之间的连接
select student.name,class.name
from student join class
on student.classid=class.classid .在已经存在的表里增加字段或者设置主外键
Alter table class add 字段名 类型 (after 指定字段,这个用来指定增加字段在哪个位置);
Alter table class add constraint primary key (主键名);
Alter table class add constraint foreign key (本表的外键名) references student(其他表的主键);
相当于本表的外键要对应其他表的主键。 mysql数据库的备份与还原(linux环境下):
A.备份
[root@CentOS ~]# mysqldump -u root -p mysql > ~/mysql.sql #把数据库mysql备份到用户目录下命名为mysql.sql
Enter password:
[root@CentOS ~]# ls ~/mysql.sql
/root/mysql.sql
B.还原
[root@CentOS ~]# mysql -u root -p web < ~/web.sql #把web.sql导入数据库web mysql进入安全模式修改user表的一系列问题:
A:linux环境下 :service msyqld stop 或者ps -ef | grep mysql 再kill - pid
:mysqld_safe --skip-grant-tables & (进入mysql安全模式)
:mysql -u root -p 出现提示密码输入,直接Enter进入
:use mysql;
:select Host,User,Password from user;看下user表里的基本用户情况
:修改数据(用户或者密码,当然权限也可以)
一般新增用户建议复制user表上有的权限。。。
:flush privileges; 刷新一下系统的权限
:service mysqld restart B:windows环境下 :找到my.ini配置文件,在mysqld字符下一行添加skip-grant-tables
: 重启mysql服务
:在命令行模式下直接mysql回车进入mysql数据库
:use mysql;
: update user set authentication_string=password('') where Host='localhost';有的mysql版本里面的密码元素不是authentication_string,是Password
:刷新数据库flush privileges;
:quit
: 再次进入my.ini配置文件,注销或者删除skip-grant-tables
: 重启mysql服务
:在命令行mysql -u root -p,再输入密码123456,进入mysql数据库
(注:一般问题是mysql数据库密码错误或者用户权限不够或者User和Host不符合用户所需所造成的。如果是权限上的问题则可以如法炮制修改user表里相关的元素) 再浅谈mysql数据库里的user表里Host元素的localhost和127.0.0.,这两者作用基本相同,表示本机数据库,但是含义却有小差别,localhost表示不用通过网卡就可以访问数据库,而127.0.0.1需通过网卡访问数据库,如果防火墙或者其他安全设置上有限制,则就可以看出两者的大区别了。 创建新用户:
:CREATE USER 'username'@'host' IDENTIFIED BY 'password'; 创建用户
: GRANT privileges ON databasename.tablename TO 'username'@'host'; 授予权限
(grant 权限 on 数据库对象 to 用户) 3:grant privileges on databasename.tablename to 'username'@'hostname' identified by 'password'; 同时创建用户和授予权限
4: DROP USER 'username'@'host'; 删除用户
sql语句浅谈以及mysql遇到的问题解决见解的更多相关文章
- sql之浅谈视图的作用
[数据库]☆★sql之浅谈视图的作用 在一个项目的实际开发过程中牵涉到复杂业务的时候,我们不可避免的须要使用中间表来进行数据连接,有的同学就说了,我能够採用Hibernate进行主外键进行关联啊?多对 ...
- PHP如何通过SQL语句将数据写入MySQL数据库呢?
1,php和MySQL建立连接关系 2,打开 3,接受页面数据,PHP录入到指定的表中 1.2两步可直接使用一个数据库链接文件即可:conn.php <?phpmysql_connect(&qu ...
- 解决乱码的方法是,在执行SQL语句之前,将MySQL以下三个系统参数设置为与服务器字符集character-set-server相同的字符集
character-set-server/default-character-set:服务器字符集,默认情况下所采用的. character-set-database:数据库字符集. characte ...
- sql语句练习50题(Mysql版-详加注释)
表名和字段 1.学生表 Student(s_id,s_name,s_birth,s_sex) --学生编号,学生姓名, 出生年月,学生性别 2.课程表 Course(c_id, ...
- 技术分析 | 浅谈在MySQL体系下SQL语句是如何在系统中执行的及可能遇到的问题
欢迎来到 GreatSQL社区分享的MySQL技术文章,如有疑问或想学习的内容,可以在下方评论区留言,看到后会进行解答 SQL语句大家并不陌生,但某种程度上来看,我们只是知道了这条语句是什么功能,它可 ...
- [转载] 运维角度浅谈:MySQL数据库优化
一个成熟的数据库架构并不是一开始设计就具备高可用.高伸缩等特性的,它是随着用户量的增加,基础架构才逐渐完善. 作者:zhenliang8,本文转自51CTO博客,http://lizhenliang. ...
- 运维角度浅谈:MySQL数据库优化
日志君导读: 一个成熟的数据库架构并非一開始设计就具备高可用.高伸缩等特性的.它是随着用户量的添加,基础架构才逐渐完好. 作者:zhenliang8.本文转自51CTO博客,点击原文阅读查看网页版文章 ...
- sql语句练习50题(Mysql版)
表名和字段–1.学生表Student(s_id,s_name,s_birth,s_sex) –学生编号,学生姓名, 出生年月,学生性别–2.课程表Course(c_id,c_name,t_id) – ...
- -sql语句练习50题(Mysql学习练习版)
–1.学生表 Student(s_id,s_name,s_birth,s_sex) –学生编号,学生姓名, 出生年月,学生性别 –2.课程表 Course(c_id,c_name,t_id) – –课 ...
随机推荐
- reduce的用法
在不增加变量的情况下,统计数组中各元素出现的次数. ```jsfunction countItem (arr) { // 写入你的代码}countItem(['a', 'b', 'a', 'c', ' ...
- (转)Linux-HA开源软件Heartbeat(配置篇)
原文:http://ixdba.blog.51cto.com/2895551/548625 http://gzsamlee.blog.51cto.com/9976612/1828870 Linux-H ...
- 持续集成:TeamCity 的安装和使用
TeamCity 本文初衷 让大家了解持续集成(CI),以及入门了解 JetBrains 家的 TeamCity 的一些简单实用. TeamCity 的一些复杂使用我暂时也不会,一样也是要看文档的,所 ...
- 打开usb调试的方法
方法一: settings --> about tablet --> build number(疯狂点击) -->回退 developer options --> USB d ...
- 【HTML基础】表格和表单
本次博客的主要内容如下: meta和link 表格 表单 meta和link meta meta的属性有两种:name和http-equiv. name属性主要用于描述网页内容,对应与网页内容. 1. ...
- 深入理解JavaScript系列(48):对象创建模式(下篇)
介绍 本篇主要是介绍创建对象方面的模式的下篇,利用各种技巧可以极大地避免了错误或者可以编写出非常精简的代码. 模式6:函数语法糖 函数语法糖是为一个对象快速添加方法(函数)的扩展,这个主要是利用pro ...
- MemcacheHelper.cs
using Memcached.ClientLibrary; using System; using System.Collections.Generic; using System.Linq; us ...
- 2017年11月26日 C#流&&窗体对话框
C#流 在顶端加入using System.IO就可以使用流 StreamReder a = new StreamReder();//读取 前面什么都可以 = sr.ReadToEnd();//用法 ...
- linux修改用户名和密码
linux修改用户名和密码 修改root密码:sudo passwd root 修改用户密码(如hadoop) sudo passwd hadoop 修改主机名:sudo vi /etc/hostna ...
- ASID 与 MIPS 中 TLB 相关
ASID 为了提高TLB的性能,将TLB分成Global和process-specific.global 是指常驻在tlb中不会被刷出的,例如内核空间的翻译,process-specific 是指每个 ...