Mysql基本使用

来源:互联网 发布:vb modbus 编辑:程序博客网 时间:2024/06/15 18:18
1、连接MySQL服务器
本机既有服务器端也有客户端
本机通过客户端连接到另一台服务器
本机没有任何MySQL软件,连接到另一台服务器端
2、连接服务器的命令
Windows系统 :mysql -h hostname -u username -ppassword databasename
Linux系统 :mysql -h hostname -u username -ppassword databasename
退出命令   :quit
3、创建并使用第一个数据库
设置密码:set password=password('password')
创建数据库:create database db_name
给用户分配数据库:grant all on db_name.* to identified by password
使用数据库 :mysql -u user_name -ppassword db_name
        use database_name
4、查询表
显示当前数据库中的表:show tables
显示指定表的结构:decribe table_name
5、列数据类型:
分为数字型、字符串型和日期
1、数字型:分为整形和浮点型,可以有两个选项:unsigned(无符号,只存储正数)和zerofill(用0填充而不是空格)
范例:create table a (id int zerofill);
数字型:以字串的形式存储,decima/numeric
小数型:float/double
整数型:int bigint tinyint
2、字符串型
char varchar等
3、日期型
datetime timestamp等
4、枚举型
enum('男','女')
6、创建表
create table tab_name(column_define);
关系的实现:(键和约束)主键:primary key 惟一:unique 非空:not null 检查:check 外键:foreign key
约束在创建表的时候定义约束
通过修改表实现约束
create table emp(
empno int primary key,
ename varchar(10) not null,
sal double(6,2),
dno int foreign key references dept(dno));
通过修改表实现约束:
alter table tab_name
add constraint con_name con_type(col_name) define;
7、数据操作
插入数据:insert into table_name(col_list) values(values_list);
    insert into table_name(col_list) values(values_list),(values_list),...
删除记录:delete
更新记录:update
8、修改表:
添加列:add
修改列:change
重命名表:rename
删除列:drop
9、简单数据检索:
列选取:* col_list
列别名:as
行过滤:like % _ and not or
排序:order by desc asc limit n1 n2 n1:偏移量 n2:行数
汇总:最大值max,最小值min,计数count,消重distinct,平均avg,求和sum
10、日期数据处理
日期标准格式:yyyy-mm-dd,日期用‘’引起
日期格式:date_format(date,'%m/%d/%y')
日期函数:
    当前日期:now() current_date
    取时间的某个部分:year() month() dayofmonth() dayofyear()
11、高级查询:
分组:group by
连接:join
   等值连接和不等值连接
   外连接
12、安全管理
grant privieges on what to user identified by password
1、谁连接 ——用户名
2、在那里连接:String主机名或IP或通配符
3、什么样的权限——权限名字
4、是不是委派——此用户是不是可以把自己的权限分配给别人
grant all on *.* to identified by 'password' with grant option;
grant select on abc.emp to identified by 'password' with grant option;
0 0