首页 > 数据库 >MYSQL数据表操作经验 初学者必看

MYSQL数据表操作经验 初学者必看

时间:2023-06-08 21:32:36浏览次数:56  
标签:set 必看 character 外键 数据表 key MYSQL table alter


特殊导入数据表的方法(CMD命令): 


D:\wamp\bin\mysql15.6.12\bin>mysql -uroot -p newpump < e:table.sql 


或者 用source命令
导入数据表之前设置数据表文件的编码(这里并不是设置数据表里的内容编码):


D:\wamp\bin\mysql15.6.12\bin>mysql -uroot -p --default-charcter-set=utf8 newpump < d:/newpump.sql




以下是设置数据表里的内容编码:



character_set_client     | utf8
character_set_connection | utf8
character_set_database   | utf8
character_set_filesystem | binary
character_set_results    | utf8
character_set_server     | utf8
character_set_system     | utf8



临时解决字符编码问题:



set character_set_client = gbk
set character_set_connection = gbk
set character_set_results = gbk



永久解决字符编码问题:



mysql/mysql.ini



[client] 客户端该项配置



default-character-set=gbk



一、 数据表操作:



1 创建表:



约束(索引):提高表的查询效率,



primary key --- 主索引 确保 通过主键可以查找到唯一的记录。



主索引:主索引,值不能重复,一张表当中只能有1个主键



[索引名称] primary key (列名称);



唯一索引:



[索引名称] unique key (字段);



create table demo(
id int(4) auto_increment,
name varchar(20),
pwd varchar(20),
primary key(id),
unique key(name)
);



注意:



唯一索引常用在不能重复的字段上,



create table demo(
id int(4) auto_increment,
name varchar(20),
pwd varchar(20),
primary key(id),
unique key(name)
);



(列名).



索引:提高查询效率。





2 修改表结构:



1》 添加字段



alter table 表名称 add 列定义(uDate date)



alter table users add uDate date;
insert into users(uName,uAge,uSex,uTel,uDate) values("aaa",15,"2","11111","2012-12-12");



2》删除字段:



alter table 表名称 drop 字段名称;



3》修改字段:该字段 必须存在。



   alter table 表名称 change 旧字段的名称 新列定义;



alter table users change uTel uPhone varchar(30);






4》修改表的名称



alter table 表名 rename 新名字;



5》删除表



drop table 表名称



注意:删除表 同时把记录都删掉了。



二、外键约束:



1 什么外键约束









 



2 表的记录操作语句:



增 删 改 查



1》增加语句:



insert into 表名称(字段1,字段2,.....)



            values(值1,值2,值....)



2》修改语句:






where 条件



update books set bName="网站编程",bPublishing="清华大学出版社",bAuthor="张三" where bId=93;



注意:set 关键词后 只写你需要更新的字段。



3》删除语句:



where 条件



delete from books where bId=93



4》查找



   select * from 表名;



   查找    所有 从   表



   select 字段1,字段2,字段..... from 表名 [where] 



方便php调用,所以要给表名,字段名起一个别名。



  






3 外键:



两张表:



user 用户表



order 订单表 与用户相关的订单信息。



1》如果删除用户表中的某个用户数据,



订单表中的用户订单数据就应该删掉,以保证数据的完整性



2》订单表当中不能随意插入记录(业务逻辑不允许)。



外键 就是解决删除,或修改用户记录的时候,






注意:



foreign key 外键 规则:



mysql 自带innodb



show create table 表名



ENGINE=InnoDB



2》外键表的两张表必须是有关系的,而且两张表 ,有索引关系



3》mysql 表外键的名称必须唯一。



数据库唯一,表名唯一,外建名唯一



4 创建外键约束:



1》格式:



create table 表名称(









外键定义:



[constraint[约束名称]] foreign key[字段]



references [外键表名](外键字段1,外键字段2.....)



[on delete|on update [restrict|cascade|set null|no action] ]



)



拒绝对父表的更新或删除



cascade 父表更新或删除的时候,自动更新或删除子表中对应行。



set null 父表中更新或删除的时候,子表中的外键列 成为null



no action 不采取任何动作。





2》创建两表之间关联的关系:



alter tabl e 表名 add 外键的定义。



alter table `order` add foreign key(u_id) references user(id) on delete cascade



注意:操作外键时候,一定 主表中的记录更新或删除,引起从表中的记录的更新或删除。



谢谢关注websites博客!

标签:set,必看,character,外键,数据表,key,MYSQL,table,alter
From: https://blog.51cto.com/u_3135183/6443395

相关文章

  • 总结vue3 的一些知识点:MySQL 运算符
    MySQL运算符本章节我们主要介绍MySQL的运算符及运算符的优先级。MySQL主要有以下几种运算符:算术运算符比较运算符逻辑运算符位运算符算术运算符MySQL支持的算术运算符包括:运算符作用+加法-减法*乘法/或DIV除法%或MOD取余在除法......
  • 总结vue3 的一些知识点:MySQL NULL 值处理
    MySQLNULL值处理我们已经知道MySQL使用SQLSELECT命令及WHERE子句来读取数据表中的数据,但是当提供的查询条件字段为NULL时,该命令可能就无法正常工作。为了处理这种情况,MySQL提供了三大运算符:ISNULL: 当列的值是NULL,此运算符返回true。ISNOTNULL: 当列的......
  • 总结vue3 的一些知识点:MySQL 排序
    MySQL排序我们知道从MySQL表中使用SQLSELECT语句来读取数据。如果我们需要对读取的数据进行排序,我们就可以使用MySQL的 ORDERBY 子句来设定你想按哪个字段哪种方式来进行排序,再返回搜索结果。语法以下是SQLSELECT语句使用ORDERBY子句将查询数据排序后再返回......
  • MySQL 服务无法启动, 无法连接/ERROR 2003 (HY000): Can't connect to MySQL server o
    错误情况:状态1:ERROR2003(HY000):Can'tconnecttoMySQLserveron'localhost'(10061)状态2:mysql服务正在启动.mysql服务无法启动 第一步先配置环境 新增系统变量变量名:MYSQL_HOME变量值:mysql的安装目录(解压后目录)新增path配置编辑path新增:%MYSQL_HOME%\b......
  • 总结vue3 的一些知识点:MySQL NULL 值处理
    MySQLNULL值处理我们已经知道MySQL使用SQLSELECT命令及WHERE子句来读取数据表中的数据,但是当提供的查询条件字段为NULL时,该命令可能就无法正常工作。为了处理这种情况,MySQL提供了三大运算符:ISNULL: 当列的值是NULL,此运算符返回true。ISNOTNULL: 当列的......
  • 关于jsp的MySQL数据库连接问题
    <%@pagelanguage="java"contentType="text/html;charset=utf-8"pageEncoding="utf-8"%><%@pageimport="java.sql.*"%><!DOCTYPEhtmlPUBLIC"-//W3C//DTDHTML4.01Transitional//EN""......
  • mysql 查询语句
    一、mysql查询的五种子句    where(条件查询)、having(筛选)、groupby(分组)、orderby(排序)、limit(限制结果数)   1、where常用运算符:      比较运算符        >, < , = , !=(<>), >= , <=         i......
  • 总结vue3 的一些知识点:MySQL 连接的使用
    MySQL连接的使用在前几章节中,我们已经学会了如何在一张表中读取数据,这是相对简单的,但是在真正的应用中经常需要从多个数据表中读取数据。本章节我们将向大家介绍如何使用MySQL的JOIN在两个或多个表中查询数据。你可以在SELECT,UPDATE和DELETE语句中使用Mysql的JOI......
  • Mysql必知必会教程--【检索数据】
    首先给出本次教程需要用到的数据表的内容:products+---------+---------+----------------+------------+----------------------------------------------------------------+|prod_id|vend_id|prod_name|prod_price|prod_desc......
  • 2023春季招聘面试集锦:MYSQL数据库高频面试题
    mysql索引的数据结构,各自优劣索引的数据结构和具体存储引擎的实现有关,在MySQL中使用较多的索引有Hash索引,B+树索引等,InnoDB存储引擎的默认索引实现为:B+树索引。对于哈希索引来说,底层的数据结构就是哈希表,因此在绝大多数需求为单条记录查询的时候,可以选择哈希索引,查询性能最快;其余大......