首页 > 代码库 > sql操作
sql操作
1、root用户登录
mysql -uroot -pxxx
2、创建字符集为utf8的数据库
create database recmt character set utf8;
3、创建用户并分配指定数据库的相关权限(.*是所有权限),密码要有一定强度
grant all on recmt.* to scott identified by ‘xxx‘;
4、退出mysql
exit;
5、换用户登录mysql
mysql -uscott -pxxx
6、使用指定的数据库
use recmt;
7、设置使用的字符集
set names utf8;
8、创建带主键的表
create table urllist (url varchar(512) not null primary key);
9、创建带主键的表,主键自动增长
create table recruit (id INT auto_increment primary key, company_name varchar(256));
10、创建对应表的唯一索引(不强制用唯一的,普通的也可以)
create unique index name on urllist (url);
11、显示创建数据库的语句,表的显示一样,就是数据库对应替换成表就行
mysql> show create database recmt;
+----------+----------------------------------------------------------------+
| Database | Create Database |
+----------+----------------------------------------------------------------+
| recmt | CREATE DATABASE `recmt` /*!40100 DEFAULT CHARACTER SET utf8 */ |
+----------+----------------------------------------------------------------+
12、显示表结构
mysql> desc urllist;
+-------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+--------------+------+-----+---------+-------+
| url | varchar(512) | NO | PRI | NULL | |
+-------+--------------+------+-----+---------+-------+
13、插入数据
mysql> insert into urllist (url) values ("123");
14、查询表的数据
mysql> select * from urllist;
+-----+
| url |
+-----+
| 123 |
+-----+
因为定义了主键,不能重复所以再次插入会错误
insert into urllist (url) values ("123");
ERROR 1062 (23000): Duplicate entry ‘123‘ for key ‘PRIMARY‘
15、查询有多少行
mysql> select count(*) from urllist;
+----------+
| count(*) |
+----------+
| 2 |
+----------+
16、删除表
mysql> drop table urllist;
17、查看当前数据库有多少表
mysql> show tables;
+----------------+
| Tables_in_wurl |
+----------------+
| recruit |
| urllist |
+----------------+
18、清空表中的数据
mysql> insert into urllist (url) values ("123");
mysql> select * from urllist;
+-----+
| url |
+-----+
| 123 |
+-----+
mysql> delete from urllist;
mysql> select * from urllist;
Empty set (0.00 sec)
19、用一个表过滤另外一个表
创建表
create table aa (id INT, name varchar(10));
create table bb (name varchar(10));
插入数据
insert into aa values(1, ‘hao‘);
insert into aa values(2, ‘old‘);
insert into aa values(3, ‘are‘);
insert into aa values(4, ‘your‘);
insert into bb values(‘your‘);
insert into bb values(‘hao‘);
insert into bb values(‘more‘);
通过表bb过滤表aa,删除表aa中和表bb中相同的数据
delete from aa where aa.name in (select name from bb);
20、修改字段名称, job_site 是原来的名称
alter table rt change job_site locate varchar(16);
21、修改字段类型
alter table rt modify column rdate varchar(16);
alter table rt modify column job_name varchar(80);
alter table rt modify column company_name varchar(80);
alter table rt modify column locate varchar(16);
alter table rt modify column salary varchar(16);
alter table rt modify column rdate varchar(16);
22、垂直显示,每一个字段一行
******不是以‘;‘结尾********
select * from rt\G
23、将查询结果重定向到文件
******每次都要重定向*******
tee filename;
24、用查询结构的集合创建新表
create table ft as
select * from rt where company_name not in (select name from company);
sql操作
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。