mysql增删改查 表格_MySQL数据库如何创建表格以及增删改查

对表格结构的修改

-- 创建表 (创建user表)

CREATE TABLE `user` (

`id`  int NOT NULL AUTO_INCREMENT ,

`name`  varchar(10) COLLATE utf8_general_ci NOT NULL ,

`age`  decimal(6,3) NULL ,

`img`  blob NULL ,

PRIMARY KEY (`id`)

)

DEFAULT CHARACTER SET =utf8

;

-- 查看表结构

desc user;

-- 修改列

ALTER TABLE `user`

MODIFY COLUMN `name`  varchar(20),

MODIFY COLUMN `age` DECIMAL(6,2);

-- 修改列名 dept之前 deptId修改后

ALTER TABLE `user`

CHANGE dept deptId VARCHAR(10);

-- 增加列

ALTER TABLE USER

ADD COLUMN `sexId` CHAR(1) NOT NULL;

-- 删除列

ALTER TABLE USER

DROP COLUMN `sexId`;

-- 删除表结构

drop TABLE user1;

对表格数据的操作(增删改查)

-- 返回当前时间

SELECT CURDATE() from DUAL

select * from `user`

-- 插入数据 int型不用加引号,字符串加引号

insert into `user`

VALUES(DEFAULT,"嘻嘻",6.6,NULL);

-- 插入数据 可以是个表

INSERT INTO `user1`

SELECT * from `user`

-- 修改数据 <>表示不等于

UPDATE `user`

SET `name`="张三",

`age`=3.5

WHERE id=14;-- != > < =

UPDATE `user`

SET `name`="张洒",

`age`=5.5

WHERE (`name`="张三" AND `age`=3.5) OR `age`=4.5

SELECT * FROM `user`

-- 删除数据】

DELETE FROM `user`

WHERE id=1

-- 用于清空整个表

TRUNCATE TABLE `user` where id=13

-- 复制一个table 没有主键 不自动增长

CREATE TABLE `user1`

SELECT * FROM `user`

-- 排序

SELECT * FROM `user`

WHERE 1=1

ORDER BY age DESC-- 放在where条件的后面 排序ESC顺序 DESC 倒叙 age根据

SELECT id,name,age,img,ASCII(name) FROM `user`

WHERE 1=1

ORDER BY age DESC,name DESC

-- 查找排序 ASCII升序  降序

SELECT * ,ASCII(name) FROM `user`

WHERE 1=1

ORDER BY age DESC,name ASC

-- 去重复数据

SELECT DISTINCT name,age,img FROM `user`

-- 范围查询  in 、 not in

SELECT * from `user`

where name in("琪琪","皮皮");

SELECT * from `user`

where name not in("琪琪","皮皮");

SELECT * from `user`

where age BETWEEN 3.5 and 6.6

-- 模糊查询 %人一多的字符 _代表一个字符

SELECT * from `user`

WHERE `NAME` LIKE '张%'

-- 查询带 三 的

SELECT * from `user`

WHERE `NAME` LIKE '%三%'

--  子查询

SELECT * FROM dept

SELECT

id,name,age,img,

( SELECT deptDesc FROM dept

where deptId=`user`.deptId) as dept-- as 别名

FROM `user`

SELECT

id,name,age,img,

( SELECT deptDesc FROM dept

where deptId=`user`.deptId) -- as 别名

FROM `user`

WHERE ( SELECT deptDesc FROM dept

where deptId=`user`.deptId) LIKE '人%'

-- 查找 出IT部

SELECT

id,name,age,img,

( SELECT deptDesc FROM dept

where deptId=`user`.deptId) -- as 别名

FROM `user`

WHERE deptId=( SELECT deptId FROM dept

where deptDesc LIKE 'IT%')

-- 查找出人事部和IT部 使用范围查找 in  词语IN是=ANY的别名

SELECT

id,name,age,img,

( SELECT deptDesc FROM dept

where deptId=`user`.deptId) -- as 别名

FROM `user`

WHERE deptId =ANY ( (SELECT deptId FROM dept -- in 等同于=ANY

where deptDesc LIKE 'IT%' or deptDesc LIKE '人事%'))

-- FROM子句中的子查询  把结果当做一个表 再起一个别名

SELECT  * FROM

(SELECT

id,name,age,img,

( SELECT deptDesc FROM dept

where deptId=`user`.deptId) -- as 别名

FROM `user`

WHERE deptId =ANY ( (SELECT deptId FROM dept -- in 等同于=ANY

where deptDesc LIKE 'IT%' or deptDesc LIKE '人事%')) )as temp

-- 限制行索引 查取最大的两个

SELECT * FROM user ORDER BY age DESC LIMIT 0,2

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,下面是对于web和mysql连接并增删改查的简单实现过程: 1.建立数据库表格: 首先,我们需要在mysql中建立一个数据库和相关的表格,可以使用如下语句: ```sql CREATE DATABASE mydb; USE mydb; CREATE TABLE user ( id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY, name VARCHAR(30) NOT NULL, age INT(3) NOT NULL, email VARCHAR(50), reg_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP ); ``` 这里我们创建了一个名为mydb的数据库,以及一个名为user的表格,包含了id、name、age、email和reg_date五个字段。 2.连接数据库: 在web应用中,我们需要使用一个合适的编程语言(如PHP、Java、Python等)来连接和操作mysql数据库。这里以PHP为例,使用mysqli扩展来连接数据库: ```php $servername = "localhost"; $username = "username"; $password = "password"; $dbname = "mydb"; $conn = new mysqli($servername, $username, $password, $dbname); if ($conn->connect_error) { die("Connection failed: " . $conn->connect_error); } ``` 这里我们连接了本地的mysql服务器,并使用$username和$password来验证身份,$dbname指定了要连接的数据库名称。如果连接失败,会输出错误信息并终止脚本运行。 3.实现增删改查: 接下来,我们可以使用SQL语句来实现增删改查操作。以查询所有用户的数据为例: ```php $sql = "SELECT * FROM user"; $result = $conn->query($sql); if ($result->num_rows > 0) { while($row = $result->fetch_assoc()) { echo "id: " . $row["id"]. " - Name: " . $row["name"]. " - Age: " . $row["age"]. " - Email: " . $row["email"]. " - Reg Date: " . $row["reg_date"]. "<br>"; } } else { echo "0 results"; } ``` 这里我们使用SELECT语句来查询user表格的所有数据,并通过fetch_assoc()方法来逐行读取结果集。如果结果集为空,则输出"0 results"。 除了SELECT语句外,我们还可以使用INSERT、UPDATE和DELETE语句来实现数据的增、修改和删除操作。以插入一条新用户数据为例: ```php $name = "Tom"; $age = 25; $email = "tom@example.com"; $sql = "INSERT INTO user (name, age, email) VALUES ('$name', '$age', '$email')"; if ($conn->query($sql) === TRUE) { echo "New record created successfully"; } else { echo "Error: " . $sql . "<br>" . $conn->error; } ``` 这里我们使用INSERT语句来向user表格插入一条新数据,其中$name、$age和$email分别为要插入的姓名、年龄和邮箱。如果插入成功,则输出"New record created successfully"。 其他的修改和删除操作类似,这里不再赘述。 4.关闭数据库连接: 最后,我们需要在web应用结束时关闭数据库连接,以释放资源: ```php $conn->close(); ``` 以上就是一个简单的web和mysql连接并增删改查的实现过程。当然,实际应用中还需要考虑很多其他的因素,如安全性、性能优化等,这里不再讨论。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值